Sobre o projeto

Este projeto é um pipeline de recuperação de informações multiagente voltado para a Wiki do jogo Azur Lane, construído com AutoGen AgentChat. Após o usuário inserir uma consulta em linguagem natural, o sistema coordena vários agentes por meio do seletor dinâmico SelectorGroupChat: o summarize_agent analisa a demanda e gera parâmetros de chamada de ferramenta, o search_agent chama a ferramenta externa get_blhx_wiki_data para coletar dados da Wiki do 碧蓝海事局, o extract_agent extrai os campos de interesse do usuário e o user_proxy revisa automaticamente o resultado. Se a revisão não for aprovada, o fluxo volta ao extract_agent para nova extração; se for aprovada, emite Terminated e encerra a tarefa. O sistema possui proteção de término em duas camadas: TextMentionTermination detecta o marcador de término normal e max_turns=3 limita o número máximo de rodadas de diálogo, evitando loops infinitos entre os agentes. O projeto suporta integração de Function Calling com a ferramenta de rastreamento da Wiki, opera de forma totalmente automática sem intervenção humana e coleta as mensagens de diálogo por meio do fluxo de eventos, extraindo automaticamente o resultado da última rodada de extração como saída. O ambiente de execução requer Python 3.13.15 ou superior. Antes de usar, é necessário clonar o repositório, criar um ambiente virtual, instalar as dependências e configurar MODEL_NAME, LLM_BASE_URL e LLM_API_KEY no arquivo .env. Para iniciar, entre no diretório src e execute python azurelane_search_agent.py. O README fornece exemplos de consulta, como perguntar "Qual é o número de tentativas garantidas da Shinano?", e o sistema retorna informações estruturadas, incluindo o número acumulado de construções no pool do evento e o número de trocas disponíveis.