Fala português, mas ainda não sabe usar ferramentas. 😅
O modelo Amália foi treinado com dados até 2024. E é por isso que acha que o Marcelo ainda é o Presidente e que o Cavaco Silva já morreu.
Para resolver o problema, a solução óbvia seria dar-lhe acesso a ferramentas externas: pesquisa na internet, bases de dados, Código Penal, etc...
Foi exatamente isso que começámos a fazer quando começamos a testar o modelo
Qual o problema? Não existe documentação clara sobre como implementar tool calling no Amália
A nossa primeira abordagem foi criar um sistema em duas etapas:
1- Enviávamos ao Amália um JSON com todas as ferramentas disponíveis e pedíamos-lhe para escolher a mais adequada.
2- Executávamos essa ferramenta e enviávamos o resultado num segundo pedido, juntamente com a pergunta original do utilizador.
Para perguntas isoladas, funcionava relativamente bem.
Mas, à medida que a conversa avançava, o modelo começava a perder o contexto: deixava de perceber exatamente ao que estava a responder, confundia ferramentas e nem sempre sabia como incorporar os resultados.
Tentámos depois uma abordagem mais parecida ao function calling dos modelos modernos: enviar tudo num único pedido, usando estruturas como <tool>.
Aí correu ainda pior... 😅
O modelo não foi treinado para reconhecer esse protocolo. Em vez de interpretar as tags como instruções estruturadas, tratava-as como simples texto da conversa.
Conclusão: o Amália ainda não sabe usar tools. É um australopiteco digital!
E se fizermos como os Egípcios e pedirmos ajuda a alienígenas tecnologicamente mais avançados? 🛕
Introducing: o modelo híbrido.
Passámos a usar um modelo mais avançado, como o GPT, como camada de orquestração.
Esse modelo funciona como um router: interpreta a intenção do utilizador, decide se é necessário usar ferramentas e escolhe quais devem ser chamadas.
Depois, enviamos ao Amália:
- a pergunta do utilizador;
- o contexto da conversa;
- os resultados obtidos pelas ferramentas.
O Amália continua a ser o modelo que produz a resposta final. Portanto continua a ser uma resposta do Amália, certo?
O resultado é deveras interessante: se quereis, podem testar em iaamalia(.com)