Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Amazon Bedrock bietet verwaltete Rückschlüsse auf Foundation-Modelle über AWS. Agent Framework kann ein Bedrock IChatClient umschließen oder die Python BedrockChatClient verwenden, während die Standard-Agent-, Sitzungs-, Middleware- und Tool-APIs beibehalten werden.
Important
Amazon Bedrock ist ein Drittanbietersystem. Überprüfen Sie die AWS-Servicebedingungen, datenverarbeitung, regionale Verfügbarkeit, Modellzugriff und Nutzungskosten, bevor Sie Anwendungsdaten senden.
Installieren der Pakete
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"
Die Authentifizierung verwendet die standardmäßige AWS-Anmeldeinformationskette, einschließlich Umgebungsvariablen, freigegebener Profile, Workloadidentität und IAM-Rollen.
Erstellen Sie den AWS Bedrock-Runtime-Client, konvertieren Sie ihn in IChatClient, und erstellen Sie dann einen Agent Framework-Agent.
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");
AWS-Anmeldeinformationen folgen der standardmäßigen AWS-Anmeldeinformationskette. Gewähren Sie nur die Bedrock-Modellaktionen, die die Anwendung benötigt.
Installiere das Paket
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 liest die Anmeldeinformationen für Modell, Region und AWS aus den Einstellungen oder expliziten Konstruktorwerten vor.
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}")
Verwendung BedrockChatOptions für Bedrock-spezifische Anforderungsoptionen und BedrockGuardrailConfig wenn Ihre Bereitstellung Bedrock-Schutzschienen verwendet.
Einbettungen generieren
BedrockEmbeddingClient generiert Einbettungen mit Amazon Titan Embedding-Modellen. Konfigurieren BEDROCK_EMBEDDING_MODEL und BEDROCK_REGION, verwenden Sie dann die gleiche AWS-Anmeldeinformationskette wie BedrockChatClient.
Für diesen Client wird derzeit kein runnables Agent Framework-Einbettungsbeispiel veröffentlicht.
Note
Amazon Bedrock-Integration ist derzeit nicht für Agent Framework Go verfügbar. Den neuesten Status finden Sie im Agent Framework Go-Repository .
Tools
Bedrock unterstützt lokal aufgerufene Agent Framework-Tools, stellt aber keine vom Anbieter gehosteten Toolfabriken zur Verfügung.
| Werkzeug | C# | Python | Hinweise |
|---|---|---|---|
| Funktionswerkzeuge | ✅ | ✅ | Die Modellunterstützung variiert je nach ausgewähltem Bedrock-Modell. |
| Toolgenehmigung | ✅ | ✅ | Wird von der Funktionsaufrufschleife des Agent-Frameworks angewendet. |
| Codedolmetscher | ❌ | ❌ | Keine Bedrock-gehostete Codedolmetscherintegration. |
| Dateisuche | ❌ | ❌ | Keine Bedrock-gehostete Dateisuche-Integration. |
| Websuche | ❌ | ❌ | Keine Bedrock-gehostete Websuche-Integration. |
| Gehostete MCP-Tools | ❌ | ❌ | Keine bedrock-gehostete MCP-Integration. |
| Lokale MCP-Tools | ✅ | ✅ | Wird im Anwendungsprozess ausgeführt. |