Agentische workflows bouwen met SageMaker AI en Bedrock AgentCore
Amazon Web Services
Anthropic
Alibaba/Qwen
Dit bericht laat zien hoe OpenAI-compatibele eindpunten op Amazon SageMaker AI kunnen worden gecombineerd met Amazon Bedrock AgentCore-runtime om multi-agentsystemen te bouwen. Het doorloopt het implementeren van Qwen 3.5 9B op SageMaker AI, het integreren ervan in een Strands Agents multi-agentsysteem naast modellen op Amazon Bedrock, en het verzenden van de hele workflow naar Amazon Bedrock AgentCore-runtime. De focus ligt op integratiemechanica, inclusief observatie op tokenniveau van SageMaker-eindpunten, die Strands standaard niet biedt.
Een veelvoorkomende uitdaging bij het bouwen van agentische workflows is het combineren van beheerde fundatiemodellen met je eigen kostengeoptimaliseerde of domeinspecifieke modellen, zonder het agentframework te herschrijven. Deze post laat zien hoe je OpenAI-compatibele eindpunten op Amazon SageMaker AI kunt combineren met Amazon Bedrock AgentCore runtime en de beheerde implementatie ervan. De architectuur verbindt drie modelhostingpaden via een enkele Amazon Bedrock AgentCore-container: een orchestratoragent (Claude Haiku 4.5 op Bedrock) voor intentieclassificatie en routering, een budgetagent (Claude Sonnet 4.6 op Bedrock) voor budgetuitsplitsingen, en een financiële analyseagent (Qwen 3.5 9B op Amazon SageMaker AI) voor aandelenanalyse met behulp van tool-calling. De implementatie omvat automatisch verversende bearer-tokens voor langlopende sessies, het gebruik van Strands Agents' agents als tools-patroon, en implementatie via de bedrock-agentcore-starter-toolkit. Een belangrijke uitdaging is dat Amazon Bedrock AgentCore runtime agents automatisch instrumenteert met OpenTelemetry, maar SageMaker OpenAI-compatibele eindpunten geen automatische token-telemetrie krijgen. De oplossing omvat het handmatig emitteren van gen_ai.chat-spans die de SageMaker-agentaanroep omvatten en het extraheren van tokenverbruik uit Strands' AgentResult.metrics.accumulated_usage. Bovendien moet stream_options: {"include_usage": True} worden ingesteld omdat vLLM standaard geen usage-chunk in streamingresponses opneemt. De post behandelt ook stapsgewijze configuratie, voorbeeldtrace-output, belangrijkste leerpunten en het uitbreiden van het patroon met fijn afgestemde modellen, A/B-testen met inferentiecomponenten en kostenbewuste routering.
Bron: AWS ML blog —
origineel
