Neste tutorial, você criará um agente de IA ReAct (Reasoning and Action) com o framework LangGraph de código aberto, usando um modelo IBM Granite por meio da API do IBM® watsonx.ai em Python. O caso de uso é gerenciar tickets de suporte de TI existentes e criar novos.
Um agente de inteligência artificial (IA) se refere a um sistema ou programa capaz de executar tarefas de forma autônoma em nome de um usuário ou outro sistema, projetando seu fluxo de trabalho e utilizando as ferramentas disponíveis. Os agentes de IA generativa usam técnicas avançadas de processamento de linguagem natural (NLP) de grandes modelos de linguagem (LLMs) para compreender e responder passo a passo às entradas do usuário e determinar quando recorrer a ferramentas externas. Um componente essencial dos agentes de IA é o raciocínio. Ao adquirir novas informações por meio de chamadas de ferramentas, intervenção humana ou outros agentes, o paradigma de raciocínio orienta as próximas etapas do agente.
Com cada ação e cada resposta da ferramenta, o paradigma ReAct (Reasoning and Action) instrui os agentes a pensar e planejar suas próximas etapas. Esse raciocínio passo a passo e lento nos fornece um insight de como o agente usa o contexto atualizado para formular conclusões. Como esse processo de reflexão é contínuo, ele é frequentemente chamado de ciclo pensar-agir-observar e é uma forma de prompts da cadeia de pensamento.
Este tutorial usará o framework LangGraph, um framework de agentes de IA de código aberto projetada para criar, implementar e gerenciar fluxos de trabalho complexos de IA generativa. A função
No LangGraph, a funcionalidade de "estado" serve como um banco de memória que registra e rastreia todas as informações valiosas processadas por cada iteração do sistema de IA. Esses gráficos com estado permitem que o agente recupere informações passadas e contexto valioso. A estrutura cíclica do gráfico do ReAct é aproveitada quando o resultado de uma etapa depende das etapas anteriores no loop. Os nós, ou "atores," no gráfico codificam a lógica do agente e são conectados por edges. Edges são essencialmente funções do Python que determinam o próximo nó a ser executado dependendo do estado atual.
Você precisa de uma conta do IBM Cloud para criar um projeto do watsonx.ai .
Para utilizar a interface de programação de aplicativos (API) do watsonx , é necessário concluir as etapas a seguir. Observe que você também pode acessar esse tutorial no GitHub.
Faça login no watsonx.ai usando sua conta do IBM Cloud.
Crie uma instância do serviço do watsonx.ai Runtime (tempo de execução) (selecione a região apropriada e escolha o plano Lite, que é uma instância gratuita).
Gere uma chave de interface de programação de aplicativos (API).
Para começar facilmente a implementar agentes no watsonx.ai, clone este repositório do GitHub e acesse o projeto de agentes ReAct de suporte de TI. Você pode executar o seguinte comando em seu terminal para fazê-lo.
Em seguida, instale o poetry, se ainda não o tiver instalado. O poetry é uma ferramenta para gerenciar dependências e empacotamento do Python.
Em seguida, ative seu ambiente virtual.
Em vez de usar o comando
É necessário adicionar um diretório de trabalho a PYTHONPATH para as próximas etapas. Em seu terminal, execute:
Para configurar seu ambiente, siga as instruções no arquivo README.md no Github. Essa configuração exige que vários comandos sejam executados em seu IDE ou linha de comando.
No arquivo
Nosso agente precisa de uma fonte de dados para apresentar informações atualizadas e adicionar novos dados. Armazenaremos nosso arquivo de dados no IBM® Cloud Object Storage.
Para fornecer ao agente ReAct a funcionalidade de gerenciamento de tickets de TI, devemos nos conectar à nossa fonte de dados no IBM Cloud Object Storage. Para esta etapa, podemos usar a
Em
Nosso agente poderá ler e escrever dados no nosso arquivo. Primeiro, vamos criar a ferramenta para ler os dados usando o LangChain
Adicionamos essa ferramenta
Em seguida, adicionamos a ferramenta
Essa ferramenta recebe a descrição do problema do usuário e a urgência do problema como seus argumentos. Uma nova linha é adicionada ao nosso arquivo no COS com essas informações e, assim, um novo ticket é criado. Caso contrário, uma exceção será lançada.
Uma última ferramenta que devemos adicionar ao nosso
Para conceder ao nosso agente acesso a essas ferramentas, as adicionamos à lista
Essas ferramentas são importadas no arquivo
Antes de implementar seu agente, lembre-se de preencher todas as informações necessárias no
Há três maneiras de conversar com seu agente.
Execute o script para a execução de serviços de IA local.
A opção final é acessar o agente no espaço Implementações do watsonx.ai. Para fazer isso, selecione "Implementações" no menu lateral esquerdo. Em seguida, selecione seu espaço de implementação, selecione a guia "Ativos", selecione seu ativo
Para executar o script de implementação, inicialize a variável
O
Em seguida, execute o script de implementação.
Em seguida, execute o script para consultar a implementação.
Para os fins deste tutorial, vamos escolher a opção 2 e consultar nosso agente implementado no watsonx.ai na forma de um chatbot agêntico. Vamos apresentar ao agente alguns prompts que exigiriam o uso de ferramentas. Ao seguir as etapas listadas na Opção 3, você deverá ver uma interface de bate-papo no watsonx.ai. Lá, podemos digitar nosso prompt.
Primeiro, vamos testar se a
Como você pode ver na resposta final do agente, o sistema de IA usou com sucesso a solução de problemas para criar um novo ticket com a
Ótimo! O agente adicionou o ticket ao arquivo com sucesso.
Neste tutorial, você criou um agente com o framework ReAct que utiliza a tomada de decisão para resolver tarefas complexas, como recuperação e criação de tickets de suporte. Existem vários modelos de IA que permitem a chamada de ferramentas agênticas, como o Gemini do Google, o Granite da IBM e o GPT-4 da OpenAI. Em nosso projeto, usamos um modelo de IA do IBM Granite por meio da API watsonx.ai. O modelo se comportou conforme o esperado tanto localmente quanto quando implementado no watsonx.ai. Como próxima etapa, verifique os modelos LlamaIndex e crewAI multiagentes disponíveis no repositório do GitHub do watsonx-developer-hub para criar agentes de IA.
Permita que desenvolvedores criem, implementem e monitorem agentes de IA com o IBM watsonx.ai studio.
Atinja uma produtividade revolucionária com um dos conjuntos de recursos mais abrangentes do setor para ajudar as empresas a criar, personalizar e gerenciar agentes e assistentes de IA.
Tenha mais de 90% de economia de custos com os modelos menores e abertos do Granite, projetados para a eficiência do desenvolvedor. Esses modelos prontos para uso corporativo oferecem desempenho excepcional em relação aos benchmarks de segurança e em uma ampla variedade de tarefas corporativas, da cibersegurança a RAG.