Como usar chamadas de ferramentas (Tool Calling) com Ollama
L'chamada de ferramenta no Ollama representa um avanço significativo para transformar modelos de linguagem em agentes capazes de interagir com o mundo externo. Essa funcionalidade permite que um LLM, hospedado localmente via Ollama, determine quando e como utilizar funções externas (ferramentas) para responder a uma solicitação complexa. Neste guia, exploraremos detalhadamente a teoria por trás dessa capacidade, os mecanismos práticos de implementação e como otimizar o uso de modelos com pesos abertos de alto desempenho em sua infraestrutura local. Abordaremos também as especificidades dos diferentes modelos disponíveis no nosso catálogo para maximizar suas chances de sucesso com o tool calling.
Entender o conceito de chamada de ferramenta (Tool Calling)
Le tool calling é uma capacidade avançada em que um LLM não se limita a gerar texto, mas produz, em vez disso, uma estrutura de dados específica (geralmente JSON) que indica que uma função deve ser executada. O processo segue um ciclo iterativo:
- Requisição do Usuário : O usuário faz uma pergunta que exige informações externas (ex.: "Como estará o tempo em Paris amanhã?").
- Análise do LLM : O modelo, tendo sido treinado com conhecimento das funções que você tem disponíveis (o schema), determina que uma função
get_weather(city)é apropriada. Ele não responde diretamente, mas gera uma chamada no formato esperado. - Execução Externa : Seu sistema hospedeiro intercepta essa saída JSON e executa a função real (chamada a uma API de previsão do tempo).
- Retorno do Resultado : O resultado da execução (
{"temperature": "15°C", "condition": "ensoleillé"}) é devolvido ao LLM como um novo contexto. - Geração Final : O LLM utiliza esse resultado factual para formular uma resposta natural e completa para o usuário.
Essa arquitetura permite preencher a lacuna entre o conhecimento estático do modelo e os dados dinâmicos necessários para aplicações reais. Para tarefas que exigem raciocínio complexo, você poderia considerar o uso de modelos poderosos como DeepSeek V4 Pro 1.6T ficha técnica do DeepSeek V4 Pro 1.6T ou MiMo V2.5 Pro ficha MiMo V2.5 Pro, cujos contextos ampliados facilitam a gestão de esquemas de ferramentas complexos, atingindo até 1.000.000 de tokens em contexto.
Escolher o modelo certo para o Agente LLM: Desempenho versus Tamanho
O sucesso dachamada de ferramenta no Ollama depende intrinsecamente da capacidade do modelo de seguir instruções estruturadas e raciocinar logicamente. Os modelos com pesos abertos variam consideravelmente em termos de complexidade, o que impacta diretamente seu desempenho em tool calling.
Para tarefas que exigem alta fidelidade na chamada de ferramentas (onde a precisão do JSON é crítica), prefira modelos com forte alinhamento instrucional. Por exemplo, Kimi K2.7 Code Ficha técnica do Kimi K2.7 Code ou Qwen3-Coder-Next 80B-A3B ficha Qwen3-Coder-Next 80B-A3B demonstram alta aptidão para raciocínio estruturado, o que é um pré-requisito para o tool calling fiable.
Por outro lado, se suas restrições de hardware forem severas (por exemplo, uso em configurações com menos de 16GB de VRAM), você terá que optar por modelos menores, ainda assim com bom desempenho. Modelos como Mistral Medium 3.5 128B ficha técnica do Mistral Medium 3.5 128B ou Llama 4 Scout 109B ficha Llama 4 Scout 109B oferecem um bom equilíbrio entre capacidade de raciocínio e uso de memória, permitindo testes eficazes do tool calling sem sobrecarregar o GPU.
Implementação técnica: o papel do prompt de sistema
A forma como você apresenta as ferramentas ao LLM é crucial. Você deve fornecer uma descrição clara (o schema) de cada função disponível, incluindo seus parâmetros esperados e seus tipos de dados. Essa documentação deve ser integrada ao prompt de sistema ou fornecida como contexto antes da requisição do usuário.
Um bom exemplo de definição de ferramenta seria:
"description": "Récupère les informations sur un modèle spécifique.", "parameters": {"type": "object", "properties": {"model_name": {"type": "string", "description": "Le nom exact du LLM à rechercher (ex: DeepSeek V4 Pro 1.6T)"}}}
A eficácia dessa descrição está diretamente ligada ao nível de instrução do modelo. Modelos treinados com conjuntos de dados ricos em exemplos de chamada de função têm melhor desempenho. Para comparar as capacidades, você pode consultar nosso guia comparativo de LLM. Recomendamos também analisar o desempenho de Inkling ficha Inkling que possui um contexto muito amplo, ideal para manter a definição das ferramentas ao longo de várias interações.
Gestão de fluxos e iterações com Ollama
A implementação do tool calling exige um ciclo de interação entre sua aplicação e a API Ollama. É essencial gerenciar os estados seguintes:
- Inicialização : Enviar o prompt de sistema contendo a definição das ferramentas para o LLM via Ollama.
- Verificação de Saída : Analisar a resposta do LLM. Se ela contiver uma chamada de ferramenta (formato JSON predefinido), avance para a etapa 3. Caso contrário, é a resposta final.
- Execução e Injeção : Executar o código correspondente à chamada e, em seguida, retornar o resultado bruto ao LLM em uma nova requisição, especificando que se trata do resultado da ferramenta.
- Finalização : O LLM utiliza esse resultado para gerar a resposta final para o usuário.
Modelos como GLM 5.2 753B-A40B Ficha técnica do GLM 5.2 753B-A40B ou Mixtral 8x22B Instruct ficha Mixtral 8x22B Instruct são excelentes para esta fase de raciocínio iterativo, pois mantêm uma alta coerência entre as etapas de chamada e resposta. Para mais detalhes sobre a otimização de prompts, consulte nosso artigo sobre prompt engineering.
Casos de uso práticos para LLMs locais
Le tool calling abre caminho para aplicações autônomas baseadas nos seus modelos com pesos abertos:
- Agentes de Pesquisa Especializada : Um agente pode usar uma ferramenta de pesquisa web (se você fornecer) para encontrar as últimas informações sobre uma tecnologia, depois sintetizar essas informações usando um modelo como DeepSeek V3.2 ficha DeepSeek V3.2.
- Assistentes de Código Contextuais : Um LLM pode chamar ferramentas para ler a documentação local ou executar testes unitários em uma base de código, antes de propor uma correção usando um modelo especializado como Kimi K2.5 ficha Kimi K2.5.
- Sistemas de Gestão de Entidades : Para extrair e classificar dados complexos a partir de documentos, a ferramenta pode ser uma função de classificação ou de validação de esquema. Modelos como Qwen 3 VL 235B-A22B ficha Qwen 3 VL 235B-A22B são particularmente adequados para esse tipo de análise multimodal e estruturada.
Para comparar o desempenho de diferentes modelos em cenários específicos, convidamos você a usar nossa ferramenta de comparação.
Perguntas frequentes sobre chamadas de ferramentas com Ollama
P: Qual é o principal pré-requisito para que meu LLM compatível com o Ollama faça tool calling ?
R: O pré-requisito fundamental não é apenas a capacidade nativa do modelo, mas principalmente a qualidade do seu prompt de sistema. Você deve descrever as funções disponíveis (nome, descrição, parâmetros esperados) em um formato estruturado (geralmente JSON Schema) que o LLM deve aprender a reproduzir na saída quando julgar que uma ferramenta é necessária para responder.
Q: Todos os modelos com pesos abertos suportam nativamente o tool calling ?
R: Não, isso depende da forma como o modelo foi treinado e ajustado (fine-tuning). As versões otimizadas ou especializadas em alinhamento instrucional são muito mais propensas a gerar chamadas de ferramenta confiáveis. Modelos como Nemotron 3 Ultra ficha do Nemotron 3 Ultra mostram uma forte capacidade de seguir esses esquemas complexos.
P: Qual o impacto do tamanho do modelo no sucesso da chamada de ferramenta?
R: Geralmente, quanto maior o modelo (em parâmetros), melhor é sua capacidade de raciocínio e sua fidelidade ao formato JSON exigido para a chamada. No entanto, um modelo médio bem alinhado pode superar um modelo muito grande mal ajustado nessa tarefa específica.
P: Como lidar com erros durante a execução de uma ferramenta externa?
R: Quando seu código executa uma ferramenta e encontra um erro (ex: API indisponível), você deve retornar essa mensagem de erro ao LLM como contexto. O modelo deve então ser capaz de reconhecer esse erro e, se possível, sugerir uma ação corretiva ou informar ao usuário que a tarefa não pode ser concluída.
P: Qual é o papel do contexto (janela de contexto) no tool calling ?
R: Um contexto amplo permite que o LLM "se lembre" ao mesmo tempo das definições complexas de todas as suas ferramentas, do histórico completo da conversa e dos resultados intermediários. Modelos com contexto ampliado como DeepSeek V4 Pro 1.6T ficha DeepSeek V4 Pro 1.6T são particularmente vantajosos para agentes que executam várias etapas.
Conclusão: Rumo a agentes LLM autônomos locais
Dominar ochamada de ferramenta no Ollama é a chave para transformar um simples gerador de texto em um verdadeiro agente capaz de agir em seu ambiente local ou remoto. Combinando a escolha cuidadosa de um modelo eficaz — seja GLM-5 744B-A40B ficha GLM 5 744B-A40B para a potência bruta, ou um modelo mais leve como MiMo V2 Flash ficha do MiMo V2 Flash para eficiência — com uma engenharia de prompt rigorosa, você constrói sistemas robustos. Para explorar as capacidades específicas de cada LLM nesse campo ou configurar seu ambiente ideal, consulte nosso catálogo completo ou nosso configurador de hardware.
Fontes externas utilizadas para enriquecimento (mínimo de 3 exigidas) Guia sobre chamadas de função em geral Documentação da API Ollama Pesquisa acadêmica sobre agentes LLM
O hardware para rodar um LLM localmente
Para executar esses modelos localmente com conforto, uma RTX 5070 Ti oferece uma excelente relação preço/desempenho. Compare os preços:
Links afiliados — QualLLM pode receber uma comissão sobre as compras, sem custo adicional para você. Como Parceiro Amazon, QualLLM obtém lucro com compras que atendem às condições exigidas.