Início
Architectures
Híbrido
Conversas com o agent assist
Um sistema de atendimento de vários níveis em uma organização pode utilizar um assistente de conversação (ou chatbot) com grandes modelos de linguagem, juntamente com agentes humanos, oferecendo assistência eficiente e abrangente aos usuários finais.
A arquitetura para conversação com o agent assist é mostrada no diagrama acima. As principais etapas do fluxo da arquitetura são:
Documentos corporativos, como manuais de produtos, documentos de dúvidas frequentes, materiais de oferta, prospectos, tíquetes de suporte resolvidos e outros, são ingeridos em uma instância do IBM® watsonx Discovery e preparados para pesquisa semântica.
Os usuários enviam solicitações, problemas ou perguntas por meio de uma interface no site da organização, em um aplicativo dedicado ou em outras plataformas. Essa interação é viabilizada pelo IBM® watsonx Assistant, que atua como a interface principal para interações via bate-papo.
No caso de solicitações que exigem a recuperação de dados dos documentos ou da base de conhecimento da organização, o IBM watsonx Discovery é usado para pesquisar e recuperar as passagens de informações mais relevantes para a solicitação do usuário.
O watsonx Assistant envia a solicitação do usuário e as informações relevantes recuperadas do watsonx Discovery para um grande modelo de linguagem (LLM) hospedado no watsonx.ai.
O LLM sintetiza a solicitação do usuário e as informações fornecidas junto com o conhecimento integrado do LLM, gerando uma resposta semelhante à humana que é enviada de volta ao watsonx.ai e que, após uma possível formatação e outros processamentos, é apresentada ao usuário.
Se o usuário não estiver satisfeito com a resposta gerada (p. ex., se a solicitação tiver muitas especificidades, for complexa ou exigir conhecimento específico), ele pode solicitar ao watsonx Assistant que encaminhe a chamada para um agente humano. Da mesma forma, as interações podem ser encaminhadas de forma automática se a resposta do LLM for detectada como de baixa confiança ou potencialmente ofensiva. Além disso, os usuários podem optar por interagir com um atendente humano a qualquer momento. O watsonx Assistant faz a transição tranquila da interação para um agente humano por meio do sistema de gerenciamento da central de contato da empresa.
Um agente humano, com acesso total ao histórico de conversas do watsonx Assistant, ajuda o usuário a resolver a solicitação, o problema ou a dúvida.
Após a resolução, o sistema, por meio do watsonx Assistant, pode solicitar feedback do usuário. Esse feedback auxilia no aprimoramento de interações futuras, analisando consultas frequentemente perdidas ou encaminhadas e permitindo que a organização ajuste o LLM hospedado no watsonx.ai e/ou ajuste os parâmetros de pesquisa do watsonx Discovery para melhorar o desempenho.
O mapeamento do portfólio de produtos de IA do IBM watsonx para a arquitetura conceitual é mostrado no diagrama abaixo. O watsonx Assistant fornece os recursos de interação do componente de assistente virtual, enquanto o watsonx Discovery, um complemento do watsonx Assistant, fornece recursos de ingestão de documentos e pesquisa semântica. O ambiente de desenvolvimento e hospedagem do modelo watsonx.ai é usado para selecionar, ajustar, testar e implementar o grande modelo de linguagem.
Alguns clientes não têm o watsonx.ai disponível em sua região ou podem ter problemas de segurança ou requisitos regulatórios que os impedem o uso do estúdio de IA watsonx.ai de nível empresarial. Para esses clientes, oferecemos o watsonx.ai como um conjunto de serviços conteinerizados que podem ser implementados no Red Hat Openshift em execução nos data centers dos clientes, em uma nuvem privada virtual (VPC), na infraestrutura de um provedor de serviço de nuvem ou em outro local.
Muitos fatores influem na escolha de um modelo adequado para seu projeto.
A licença do modelo pode restringir a forma como ele pode ser usado. Por exemplo, a licença de um modelo pode impedir que ele seja usado como parte de uma aplicação comercial.
O conjunto de dados usado para treinar o treinamento do modelo tem um impacto direto em seu funcionamento para uma aplicação específica e afeta de forma significativa o risco de que o modelo possa gerar respostas sem sentido, ofensivas ou simplesmente indesejadas. Da mesma forma, modelos treinados em dados protegidos por direitos autorais ou privados podem expor seus usuários a responsabilidade legal. A IBM fornece plena transparência de dados de treinamento e indenização por reivindicações legais decorrentes de seus modelos.
O tamanho do modelo, com quantos parâmetros ele é treinado e o tamanho de sua janela de contexto (quanto tempo de uma passagem de texto o modelo pode aceitar) afetam seu desempenho, requisitos de recursos e rendimento. Embora seja tentador adotar a filosofia do “quanto maior, melhor” e escolher um modelo de 20 bilhões de parâmetros, os requisitos de recursos e uma eventual melhoria na precisão (se houver) podem não justificá-lo. Estudos recentes mostraram que modelos menores podem superar significativamente os maiores em algumas soluções
.Qualquer ajuste aplicado a um modelo pode afetar sua adequação a uma tarefa. Por exemplo, a IBM oferece duas versões do modelo Granite: uma ajustada para aplicações gerais de bate-papo e outra ajustada para seguir instruções.
Veja outras considerações ao escolher um modelo:
Seleção dos parâmetros do modelo, p. ex., a temperatura do modelo, para equilibrar a criação de textos semelhantes aos humanos e respostas factuais. A definição da temperatura do modelo em um valor alto gerará respostas coerentes, mas possivelmente desinteressantes ou muito concisas, enquanto o uso de um valor baixo introduzirá mais variedade nas respostas, mas aumentará a imprevisibilidade no tamanho e no conteúdo das respostas.
Seleção e implementação de proteções do modelo para proteção contra resultados ineficazes ou ofensivos.
O idioma dos dados do cliente e dos prompts do usuário também deve ser levado em consideração. A maioria dos LLMs é treinada com textos em inglês e muitas vezes podem traduzir entre inglês e outros idiomas com níveis variados de conhecimento. As aplicações que exigem compatibilidade com idiomas localizados ou multilíngues podem exigir o uso de diferentes modelos treinados em cada um dos idiomas disponíveis ou a implementação de uma etapa de tradução para traduzir inputs multilíngues para o inglês ou outro idioma de “base”.