AWS Bedrock 接⼊⼿册
AWS Bedrock 接⼊⼿册
一、⼿册说明
该⼿册是为⽅便⽤户快速接⼊ AWS Bedrock 调⽤模型⽽编写。
⽂档中的接⼊示例暂时仅提供 Python 语⾔版本,后续会陆续更新其他语⾔的版本示例。
⽂档会提供快速验证⽅式和⽣产推荐⽅式,⽤户可⾃⾏选择。
二、调⽤示例
2.0 前置准备
- 安装依赖
- 权限要求
IAM ⽤户或⻆⾊需具备⾜够权限访问 Bedrock
我⽅在提供账号时已完成权限分配
2.1 快速验证
说明:该版本中 AK/SK 直接写在脚本中,不推荐⽣产环境使⽤,仅⽤于⽤户本地快速验证。
pip install boto3
#!/usr/bin/env python3
-- coding: utf-8 --
“”"
AWS Bedrock 调⽤示例脚本
模型:Anthropic Claude
调⽤⽅式:使⽤ Inference Profile ARN
⚠ 注意:
- 本版本直接写⼊ AK/SK,仅⽤于测试
- ⽣产环境建议使⽤环境变量
“”"
import boto3
import json
from botocore.config import Config
=============================
配置区(⽤户需要修改)
=============================
AWS_ACCESS_KEY_ID = “填写你的AK”
AWS_SECRET_ACCESS_KEY = “填写你的SK”
AWS_REGION = “us-east-1”
可以填写:
1. 模型ID,如 anthropic.claude-3-sonnet-20240229-v1:0
2. 或 inference profile ARN
MODEL_ID = “arn:aws:bedrock:us-east-1:xxxxxxxxxxxx:application-inferenceprofile/
xxxxxxxxxxxx”
=============================
创建 Bedrock Runtime 客户端
=============================
bedrock = boto3.client(
service_name=“bedrock-runtime”,
region_name=AWS_REGION,
aws_access_key_id=AWS_ACCESS_KEY_ID,
aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
config=Config(
retries={
“max_attempts”: 3,
“mode”: “standard”
}
)
)
=============================
构造请求体(Anthropic 格式)
=============================
request_body = {
“anthropic_version”: “bedrock-2023-05-31”,
“max_tokens”: 500,
“temperature”: 0.7,
“messages”: [
{
“role”: “user”,
“content”: [
2.2 ⽣产推荐
⽬的:
更安全
不暴漏 AK/SK
可⽤于服务器部署
- 设置环境变量
Mac / Linux:
Windows:
{
“type”: “text”,
“text”: “你好”
}
]
}
]
}
try:
print(“正在调⽤模型…”)
response = bedrock.invoke_model(
modelId=MODEL_ID,
body=json.dumps(request_body),
contentType=“application/json”,
accept=“application/json”
)
response_body = json.loads(response[“body”].read())
print(“\n模型返回结果:\n”)
print(response_body[“content”][0][“text”])
except Exception as e:
print(f"调⽤失败: {e}")
export AWS_ACCESS_KEY_ID=你的AK
export AWS_SECRET_ACCESS_KEY=你的SK
export AWS_REGION=你的region
setx AWS_ACCESS_KEY_ID “你的AK”
setx AWS_SECRET_ACCESS_KEY “你的SK”
setx AWS_REGION “你的region” - 完整脚本
#!/usr/bin/env python3
-- coding: utf-8 --
“”"
AWS Bedrock 调⽤示例(推荐版本)
使⽤环境变量读取 AWS 凭证
“”"
import boto3
import json
import os
从环境变量读取
AWS_REGION = os.getenv(“AWS_REGION”, “us-east-1”)
可以填写:
1. 模型ID,如 anthropic.claude-3-sonnet-v1:0
2. 或 inference profile ARN
MODEL_ID = “arn:aws:bedrock:us-east-1:xxxxxxxxxxxx:application-inferenceprofile/
xxxxxxxxxxxx”
创建客户端(⾃动读取环境变量)
bedrock = boto3.client(
service_name=“bedrock-runtime”,
region_name=AWS_REGION
)
request_body = {
“anthropic_version”: “XXXXX”,
“max_tokens”: 500,
“temperature”: 0.7,
“messages”: [
{
“role”: “user”,
“content”: [
{
“type”: “text”,
“text”: “你好”
}
]
}
]
}
try:
print(“开始调⽤模型…”)
response = bedrock.invoke_model(
modelId=MODEL_ID,
body=json.dumps(request_body),
2.3 返回示例
执⾏脚本:
contentType=“application/json”,
accept=“application/json”
)
response_body = json.loads(response[“body”].read())
print(“\n模型输出:\n”)
print(response_body[“content”][0][“text”])
except Exception as e:
print(f"调⽤异常: {e}")
python test-Bedrock.py
正在调⽤模型…
模型返回结果:
你好!
我是 Claude,⼀个由 Anthropic 公司开发的 AI 助⼿。
我能做什么?
- 对话交流 — 回答问题、聊天、提供建议
- 写作帮助 — 写⽂章、邮件、故事、⽂案等
- 分析思考 — 逻辑推理、数据分析、问题解决
- 编程辅助 — 写代码、调试、解释技术概念
- 学习辅导 — 解释复杂概念、帮助学习新知识
- 多语⾔ — ⽀持中⽂、英⽂等多种语⾔
我的特点
- 尽⼒提供准确、客观的信息
- 知识有截⽌⽇期,不能浏览实时⽹络
- 会坦诚说明不确定或不知道的事情
- 注重安全和道德原则
有什么我可以帮你的吗?
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)