Camada unificada de acesso multimodal para Poe da Quora usando Amazon Bedrock
Sources: https://aws.amazon.com/blogs/machine-learning/unified-multimodal-access-layer-for-quoras-poe-using-amazon-bedrock, https://aws.amazon.com/blogs/machine-learning/unified-multimodal-access-layer-for-quoras-poe-using-amazon-bedrock/, AWS ML Blog
TL;DR
- Uma API wrapper unificada viabiliza uma abordagem de build único, deploy de vários modelos (Bedrock) no Poe.
- A arquitetura traduz o protocolo Server-Sent Events (SSE) do Poe para as APIs REST do Bedrock, com uso híbrido da Converse API lançada pela Bedrock em mai/2024.
- Um sistema de configuração baseado em templates reduz drasticamente o tempo de implantação para cerca de 15 minutos e escala para mais de 30 modelos Bedrock em texto, imagem e vídeo.
- A solução diminui mudanças de código em até 95% e suporta produção em alto volume com tratamento robusto de erros, contabilização de tokens e autenticação segura com AWS.
Contexto e antecedentes
Organizações buscam cada vez mais arquiteturas de Generative AI Gateway para acessar várias FMs por meio de uma API normalizada única. Construir integrações separadas para cada modelo implica em alto esforço de engenharia, manutenção e onboarding de novos modelos. A AWS Generative AI Innovation Center e a Quora trabalharam juntas para criar uma API wrapper unificada que padroniza o acesso aos FMs do Bedrock no Poe. Poe é o sistema de IA multimodal da Quora que permite aos usuários interagir com uma biblioteca de modelos de IA e assistentes de diversos provedores. A integração exigiu reconciliar a arquitetura SSE baseada em eventos do Poe com o Bedrock REST, padrões de uso da AWS SDK, autenticação SigV4, disponibilidade de modelos por região e opções de streaming. A iniciativa destacou a necessidade de manter a aplicabilidade e onboarding rápido de novos modelos. Em maio de 2024, a Bedrock introduziu a Converse API, oferecendo benefícios de padronização que simplificaram a arquitetura de integração. A solução descreve aqui utiliza a Converse API quando apropriado, mantendo compatibilidade com APIs específicas de modelos para capacidades especializadas. Essa abordagem híbrida oferece flexibilidade com padronização.
O que há de novo
A inovação central é uma API wrapper modular que fica entre o Poe e o Bedrock, fornecendo uma interface unificada e uma camada de tradução que normaliza diferenças entre modelos e protocolos, mantendo as capacidades de cada modelo. Elementos-chave:
- Bot Factory: cria dinamicamente o manipulador do modelo com base no tipo de modelo (texto, imagem ou vídeo).
- Service Manager: orquestra serviços especializados necessários para processar a requisição, incluindo serviços de token, streaming e tratamento de erros.
- Camada de tradução: faz a ponte entre o SSE do Poe e os endpoints REST do Bedrock, tratando diferenças sutis entre modelos para manter o formato esperado por Poe.
- ErrorService: fornece tratamento de erros consistente entre modelos.
- AwsClientService: gerencia autenticação segura e gerenciamento de conexões com Bedrock.
- Configuração baseada em templates: sistema de configuração central com defaults compartilhados e overrides específicos de modelo, permitindo onboarding rápido de novos modelos com poucas mudanças de código.
- Contagem de tokens e otimização: permite estimativas de custo precisas e uso eficiente dos modelos.
- Pool de conexões com aiobotocore: suporta alto volume de requisições mantendo um pool de conexões com Bedrock.
- Uso da Converse API: quando aplicável, para padronização, mantendo capacidades dos modelos. A capacidade de implantação de “build único, deploy de múltiplos modelos” permitiu ampliar o catálogo de modelos Bedrock no Poe, incluindo mais de 30 modelos em texto, imagem e vídeo, em semanas, não meses. A arquitetura foi desenhada de forma modular para facilitar a expansão futura.
Por que isso importa (impacto para desenvolvedores/empresas)
- Implantação mais rápida de múltiplos modelos: configuração por templates e a camada de tradução reduzem o tempo de onboarding e o esforço de engenharia.
- Maior diversidade de modelos: o Poe pode expandir rapidamente seu catálogo de modelos Bedrock sem reescrever integrações para cada um.
- Controle operacional e confiabilidade: tratamento de erros consistente, contagem de tokens e autenticação segura garantem comportamento previsível.
- Manutenção facilitada: uma camada de abstração única reduz a carga de manutenção diante de mudanças em APIs ou recursos do Bedrock.
- Preparação para produção: a arquitetura suporta workloads de alto volume com estratégias robustas de escalabilidade.
Detalhes técnicos ou Implementação
O desafio técnico principal foi ligar o modelo orientado a eventos SSE do Poe ao surface REST do Bedrock. A equipe implementou uma camada de tradução de protocolo robusta que normaliza as respostas e mantém o formato do Poe. Componentes e práticas importantes:
- BotConfig e configuração baseada em templates: a classe BotConfig oferece definições estruturadas, com validação de tipo, para configurar bots de forma consistente.
- Tratamento de erros: o ErrorService garante mensagens de erro claras em falhas de modelo ou condições de API.
- Contagem de tokens: facilita estimativas de custo e uso eficiente dos modelos.
- AwsClientService para autenticação: gerencia autenticação segura com serviços da AWS.
- Abordagem híbrida: usa Converse API para padronização, mantendo compatibilidade com APIs específicas dos modelos.
- Suporte multimodal: demonstra capacidade em texto, imagem e vídeo com diversos modelos Bedrock.
- Preparação para produção: pool de conexões com Bedrock gerenciado pelo aiobotocore para alto desempenho. Um aspecto de impacto é a melhoria na eficiência de implantação: onboarding de mais de 30 modelos Bedrock em múltiplas modalidades ocorreu em semanas, não meses. A arquitetura de configuração única e a camada de tradução de protocolo aceleram ciclos de inovação mantendo controle operacional.
Contexto de implantação e catálogos de modelos
O Catálogo de Modelos Bedrock funciona como um hub central para descoberta e avaliação de modelos de várias casas. No Poe, a integração possibilita uma experiência de catálogo escalável onde os modelos aparecem como “chatbots” independentes na interface, permitindo aos usuários interagir com múltiplos provedores por meio de uma única plataforma.
Métricas e comparação em formato de tabela
| Métrica | Antes da integração | Depois da integração |---|---|---| | Tempo de implantação para incorporar modelos Bedrock | meses | ~15 minutos |Número de modelos Bedrock onboardados | não escalável | >30 em texto, imagem e vídeo |Alterações de código por onboarding | significativas | redução de até 95% |Estratégia de concorrência | conexões manuais separadas | pooling de conexões com aiobotocore |
Principais conclusões
- Uma camada de abstração bem desenhada simplifica fortemente a implantação de múltiplos modelos, normalizando protocolos e interfaces.
- Configuração baseada em templates acelera onboarding e reduz risco de drift entre modelos.
- Abordagens híbridas com APIs padronizadas (Converse) e APIs específicas dos modelos equilibram consistência e capacidades.
- Princípios operacionais fortes (tratamento de erros, contagem de tokens, autenticação segura) são críticos para sistemas de IA mult modelo em produção.
- Arquiteturas modulares permitem expansão rápida de catálogos de modelos mantendo comportamento previsível.
FAQ
-
Qual problema a API wrapper resolve?
Fornece uma interface unificada para o Poe que normaliza diferenças entre SSE do Poe e REST do Bedrock, reduzindo complexidade de integração e manutenção.
-
Como o Poe SSE é conectado ao Bedrock REST?
Por meio de uma camada de tradução de protocolo que assegura que as respostas atendam ao formato esperado pelo Poe, usando Bedrock REST e, quando cabível, a Converse API para padronização.
-
ual o papel da Converse API nesta integração?
Oferece benefícios de padronização que a wrapper utiliza quando apropriado, mantendo compatibilidade com APIs de modelo específicas para recursos avançados.
-
uantos modelos Bedrock foram onboarded e em quais modalities?
Mais de 30 modelos Bedrock em texto, imagem e vídeo foram integrados.
Referências
More news
Levar agentes de IA do conceito à produção com Amazon Bedrock AgentCore
Análise detalhada de como o Amazon Bedrock AgentCore ajuda a transformar aplicações de IA baseadas em agentes de conceito em sistemas de produção de nível empresarial, mantendo memória, segurança, observabilidade e gerenciamento de ferramentas escalável.
Monitorar Bedrock batch inference da Amazon usando métricas do CloudWatch
Saiba como monitorar e otimizar trabalhos de bedrock batch inference com métricas do CloudWatch, alarmes e painéis para melhorar desempenho, custo e governança.
Prompting para precisão com Stability AI Image Services no Amazon Bedrock
O Bedrock now oferece Stability AI Image Services com nove ferramentas para criar e editar imagens com maior precisão. Veja técnicas de prompting para uso empresarial.
Aumente a produção visual com Stability AI Image Services no Amazon Bedrock
Stability AI Image Services já estão disponíveis no Amazon Bedrock, oferecendo capacidades de edição de mídia prontas para uso via Bedrock API, ampliando os modelos Stable Diffusion 3.5 e Stable Image Core/Ultra já existentes no Bedrock.
Use AWS Deep Learning Containers com o SageMaker AI gerenciado MLflow
Explore como os AWS Deep Learning Containers (DLCs) se integram ao SageMaker AI gerenciado pelo MLflow para equilibrar controle de infraestrutura e governança robusta de ML. Um fluxo de trabalho de predição de idade de ostra com TensorFlow demonstra rastreamento de ponta a ponta, governança de model
Construir Fluxos de Trabalho Agenticos com GPT OSS da OpenAI no SageMaker AI e no Bedrock AgentCore
Visão geral de ponta a ponta para implantar modelos GPT OSS da OpenAI no SageMaker AI e no Bedrock AgentCore, alimentando um analisador de ações com múltiplos agentes usando LangGraph, incluindo quantização MXFP4 de 4 bits e orquestração serverless.