什么是亚马逊网络服务 (AWS)?
亚马逊网络服务 (AWS) 是全球最全面、应用最广泛的云平台,从全球数据中心提供超过200项功能齐全的服务。对于人工智能,AWS提供了一个庞大且集成的服务生态系统,支持整个机器学习 (ML) 生命周期。从数据准备和模型构建到训练、部署和管理,AWS为开发人员和数据科学家提供了大规模构建复杂AI应用程序所需的工具和基础设施。主要产品包括用于端到端ML的Amazon SageMaker、用于访问基础模型的Amazon Bedrock,以及包括高级GPU实例在内的高性能计算资源。
主要特点
- Amazon SageMaker: 一项完全托管的服务,使每位开发人员和数据科学家都能快速构建、训练和部署机器学习 (ML) 模型。它包括数据标注、笔记本、模型训练和一键式部署等模块。
- Amazon Bedrock: 一项托管服务,通过单一API提供对来自AI21 Labs、Anthropic、Cohere、Meta和Amazon等领先AI公司的一系列高性能基础模型 (FM) 的访问。
- 高性能计算: 可访问最新的NVIDIA GPU(例如,配备H100 GPU的P5实例)和AWS定制设计的芯片,包括用于训练的AWS Trainium和用于推理的AWS Inferentia,提供高性价比的性能。
- 全面的数据服务: 一套丰富的数据存储、处理和分析服务,例如Amazon S3(对象存储)、Amazon Redshift(数据仓库)和AWS Glue(ETL),这些服务与AI工作流无缝集成。
使用案例
- 生成式AI应用: 使用通过Amazon Bedrock提供的强大基础模型,构建和扩展聊天机器人、内容和图像生成器以及文本摘要器等应用程序。
- 大规模模型训练: 使用分布式训练在强大的GPU或Trainium实例集群上,利用海量数据集训练复杂的深度学习模型。
- 预测分析: 利用Amazon SageMaker构建和部署模型,用于业务预测、欺诈检测、客户流失预测和个性化推荐。
- 计算机视觉与自然语言处理: 开发和部署用于图像识别、视频分析、自然语言理解和文本转语音应用的模型。
入门指南
这是一个“Hello World”风格的示例,展示了如何使用AWS SDK for Python (Boto3) 调用Amazon Bedrock的基础模型。此示例调用了Anthropic的Claude模型。
首先,确保您已安装并配置了Boto3: ```bash pip install boto3
然后,使用以下Python代码: ```python import boto3 import json
创建一个Bedrock运行时客户端
bedrock_runtime = boto3.client(service_name=’bedrock-runtime’, region_name=’us-east-1’)
定义提示和模型参数
prompt = “你好,世界!请写一首关于人工智能的短诗。” kwargs = { “modelId”: “anthropic.claude-v2”, “contentType”: “application/json”, “accept”: “/”, “body”: json.dumps({ “prompt”: f”\n\nHuman: {prompt}\n\nAssistant:”, “max_tokens_to_sample”: 300, “temperature”: 0.7, “top_p”: 1, }) }
调用模型
response = bedrock_runtime.invoke_model(**kwargs)
处理并打印响应
response_body = json.loads(response.get(‘body’).read()) print(response_body.get(‘completion’))
定价
AWS采用按需付费的定价模式。您只需为您需要的单个服务付费,按使用时长计费,没有长期合同或复杂的许可。对于AI服务,定价通常基于实例使用时间(用于训练和托管)、处理的数据量以及API请求的数量。AWS还为许多服务提供免费套餐,让新用户可以在没有初始成本的情况下获得实践经验。