Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Amazon Bedrock fornece inferência gerenciada para modelos de fundação por meio da AWS. O Agent Framework pode encapsular um Bedrock IChatClient ou usar o Python BedrockChatClient mantendo as APIs padrão de agente, sessão, middleware e ferramenta.
Importante
Amazon Bedrock é um sistema de terceiros. Examine os termos de serviço, o tratamento de dados, a disponibilidade regional, o acesso ao modelo e os custos de uso antes de enviar dados do aplicativo.
Instalar os pacotes
dotnet add package AWSSDK.Extensions.Bedrock.MEAI
dotnet add package Microsoft.Agents.AI --prerelease
Configuration
AWS_REGION="us-east-1"
BEDROCK_MODEL_ID="anthropic.claude-3-5-sonnet-20241022-v2:0"
A autenticação usa a cadeia de credenciais padrão do AWS, incluindo variáveis de ambiente, perfis compartilhados, identidade de carga de trabalho e funções IAM.
Crie o cliente de runtime do AWS Bedrock, converta-o IChatClientem e crie um agente do Agent Framework.
var awsRegion = Environment.GetEnvironmentVariable("AWS_REGION") ?? "us-east-1";
var modelId = Environment.GetEnvironmentVariable("BEDROCK_MODEL_ID") ?? "anthropic.claude-3-5-sonnet-20241022-v2:0";
// Create the Bedrock runtime client.
var bedrockRuntime = new AmazonBedrockRuntimeClient(RegionEndpoint.GetBySystemName(awsRegion));
IChatClient chatClient = bedrockRuntime.AsIChatClient(modelId);
AIAgent agent = chatClient.AsAIAgent(
instructions: "You are a helpful assistant.",
name: "BedrockAgent");
As credenciais da AWS seguem a cadeia de credenciais padrão da AWS. Conceda apenas as ações do modelo Bedrock de que o aplicativo precisa.
Instalar o pacote
pip install agent-framework-bedrock --pre
Configuration
BEDROCK_REGION="us-east-1"
BEDROCK_CHAT_MODEL="anthropic.claude-3-5-sonnet-20241022-v2:0"
AWS_ACCESS_KEY_ID="<access-key>"
AWS_SECRET_ACCESS_KEY="<secret-key>"
# Optional temporary credentials:
AWS_SESSION_TOKEN="<session-token>"
# Optional shared profile:
AWS_PROFILE="<profile>"
BedrockChatClient lê as credenciais de modelo, região e AWS de suas configurações ou valores de construtor explícitos.
async def main() -> None:
"""Run a Bedrock-backed agent with one tool call."""
# 1. Create an agent with Bedrock chat client and one tool.
agent = Agent(
client=BedrockChatClient(),
instructions="You are a concise travel assistant.",
name="BedrockWeatherAgent",
tools=[get_weather],
default_options=BedrockChatOptions(tool_choice="auto"),
)
# 2. Run a query that uses the weather tool.
query = "Use the weather tool to check the forecast for New York."
print(f"User: {query}")
response = await agent.run(query)
print(f"Assistant: {response.text}")
Use BedrockChatOptions para opções de solicitação específicas do Bedrock e BedrockGuardrailConfig quando sua implantação usa guardrails bedrock.
Gerar inserções
BedrockEmbeddingClient gera inserções com modelos de inserção do Amazon Titan. Configure BEDROCK_EMBEDDING_MODEL e BEDROCK_REGION, em seguida, use a mesma cadeia de credenciais do AWS que BedrockChatClient.
Nenhum exemplo de inserção do Agent Framework executável está publicado no momento para este cliente.
Note
Atualmente, a integração do Amazon Bedrock não está disponível para o Agent Framework Go. Consulte o repositório Agent Framework Go para obter o status mais recente.
Tools
O Bedrock dá suporte a ferramentas do Agent Framework invocadas localmente, mas não expõe fábricas de ferramentas hospedadas pelo provedor.
| Tool | C# | Python | Notes |
|---|---|---|---|
| Ferramentas de Funções | ✅ | ✅ | O suporte ao modelo varia de acordo com o modelo bedrock selecionado. |
| Aprovação da ferramenta | ✅ | ✅ | Aplicado pelo loop de invocação de função do Agent Framework. |
| Interpretador de Código | ❌ | ❌ | Nenhuma integração de interpretador de código hospedada no Bedrock. |
| Pesquisa de Arquivo | ❌ | ❌ | Nenhuma integração de pesquisa de arquivos hospedada no Bedrock. |
| Pesquisa na Web | ❌ | ❌ | Nenhuma integração de pesquisa na Web hospedada no Bedrock. |
| Ferramentas MCP hospedadas | ❌ | ❌ | Nenhuma integração mcp hospedada pela Bedrock. |
| Ferramentas MCP locais | ✅ | ✅ | É executado no processo do aplicativo. |