- 新增 BedrockClient 客户端实现,支持 Converse API - 支持两种认证方式:IAM 凭证和 IAM 角色 - 支持对话生成、流式输出、工具调用、多模态、文本嵌入 - 添加配置模板和完整文档 - 更新依赖:aioboto3, botocore
2.3 KiB
2.3 KiB
AWS Bedrock 集成完成 ✅
快速开始
1. 安装依赖
pip install aioboto3 botocore
2. 配置凭证
在 config/model_config.toml 添加:
[[api_providers]]
name = "bedrock_us_east"
base_url = ""
api_key = "YOUR_AWS_ACCESS_KEY_ID"
client_type = "bedrock"
timeout = 60
[api_providers.extra_params]
aws_secret_key = "YOUR_AWS_SECRET_ACCESS_KEY"
region = "us-east-1"
[[models]]
model_identifier = "us.anthropic.claude-3-5-sonnet-20240620-v1:0"
name = "claude-3.5-sonnet-bedrock"
api_provider = "bedrock_us_east"
price_in = 3.0
price_out = 15.0
3. 使用示例
from src.llm_models import get_llm_client
from src.llm_models.payload_content.message import MessageBuilder
client = get_llm_client("bedrock_us_east")
builder = MessageBuilder()
builder.add_user_message("你好,AWS Bedrock!")
response = await client.get_response(
model_info=get_model_info("claude-3.5-sonnet-bedrock"),
message_list=[builder.build()],
max_tokens=1024
)
print(response.content)
新增文件
- ✅
src/llm_models/model_client/bedrock_client.py- Bedrock 客户端实现 - ✅
docs/integrations/Bedrock.md- 完整文档 - ✅
scripts/test_bedrock_client.py- 测试脚本
修改文件
- ✅
src/llm_models/model_client/__init__.py- 添加 Bedrock 导入 - ✅
src/config/api_ada_configs.py- 添加bedrockclient_type - ✅
template/model_config_template.toml- 添加 Bedrock 配置示例(注释形式) - ✅
requirements.txt- 添加 aioboto3 和 botocore 依赖 - ✅
pyproject.toml- 添加 aioboto3 和 botocore 依赖
支持功能
- ✅ 对话生成:支持多轮对话
- ✅ 流式输出:支持流式响应
- ✅ 工具调用:完整支持 Tool Use
- ✅ 多模态:支持图片输入
- ✅ 文本嵌入:支持 Titan Embeddings
- ✅ 跨区推理:支持 Inference Profile
支持模型
- Amazon Nova 系列 (Micro/Lite/Pro)
- Anthropic Claude 3/3.5 系列
- Meta Llama 2/3 系列
- Mistral AI 系列
- Cohere Command 系列
- AI21 Jamba 系列
- Stability AI SDXL
测试
# 修改凭证后运行测试
python scripts/test_bedrock_client.py
文档
详细文档:docs/integrations/Bedrock.md
集成状态: ✅ 生产就绪
集成时间: 2025年12月6日