Ferramentas e plugins personalizados para LLMs
Desenvolva e integre ferramentas personalizadas que os LLMs possam usar para ampliar suas capacidades além de seu conhecimento básico.
Ferramentas e plugins personalizados para LLMs é uma aula grátis de AI Prompt Engineering no CoddyKit. Esta é a aula 3 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de AI Prompt Engineering, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de AI Prompt Engineering inclui 3 aulas no total.
O que são ferramentas personalizadas?
Boas-vindas à lição final do nosso curso de «Instruções avançadas com uso de ferramentas e agentes»! Hoje, vamos explorar ferramentas personalizadas e extensões para modelos de linguagem de grande porte (LLMs).
As ferramentas personalizadas permitem que os LLMs ultrapassem os dados usados em seu treinamento e interajam com o mundo real ou com sistemas específicos. Pense nelas como habilidades especiais que você ensina a um LLM.
- Ampliar capacidades: adicionar novas funções.
- Acessar dados em tempo real: obter informações atuais.
- Executar ações: fazer alterações em sistemas externos.
Capacidades personalizadas versus integradas
Você aprendeu sobre chamadas básicas de funções e integração com interfaces de programação de aplicações. As ferramentas personalizadas levam esse conceito um passo adiante.
Embora um LLM possa saber inerentemente como «resumir texto», ele não sabe como «verificar o tempo em Londres» a menos que você forneça uma ferramenta para isso. As ferramentas personalizadas preenchem essa lacuna, oferecendo ao LLM capacidades específicas e externas que não fazem parte de sua base de conhecimento central.
Anatomia de uma ferramenta personalizada
Toda ferramenta personalizada precisa de uma definição clara para que o LLM saiba quando e como usá-la. Os principais componentes incluem:
- Nome: um identificador exclusivo (por exemplo,
get_current_time). - Descrição: explica o que a ferramenta faz e quando deve ser usada. Isso é essencial para a tomada de decisões do LLM.
- Parâmetros: entradas de que a ferramenta precisa para funcionar (por exemplo,
timezonepara uma ferramenta de horário). - Saída esperada: o tipo de informação que a ferramenta retorna.
Descrevendo ferramentas com um esquema
Para «ensinar» a um LLM sobre uma ferramenta personalizada, fornecemos sua definição em um formato estruturado, geralmente um esquema JSON. Esse esquema informa ao LLM tudo o que ele precisa saber para chamar a ferramenta corretamente.
Veja um exemplo simplificado de como nossa ferramenta get_current_time poderia ser descrita:
{
"name": "get_current_time",
"description": "Gets the current time in a specified timezone.",
"parameters": {
"type": "object",
"properties": {
"timezone": {
"type": "string",
"description": "The timezone to get the time for (e.g., UTC, America/New_York)."
}
},
"required": []
}
}Criando uma ferramenta simples: obter o horário
Vamos criar um exemplo prático: uma ferramenta chamada get_current_time. Essa ferramenta simplesmente retornará o horário atual, opcionalmente para um determinado fuso horário.
Embora o LLM compreenda a descrição (proveniente do esquema), nós somos responsáveis por escrever o código que realmente executa a ação descrita. Esse código é executado externamente quando o LLM decide invocar a ferramenta.
Exemplo de implementação de uma ferramenta
Este trecho de código Python mostra como a ferramenta get_current_time poderia funcionar nos bastidores. Quando o LLM chama a ferramenta, ele executa essa função (ou uma lógica semelhante na linguagem escolhida) e obtém o resultado.
Experimente executá-lo para ver a saída!
import datetime
def get_current_time(timezone="UTC"):
"""
Returns the current time in the specified timezone.
"""
# For simplicity, we'll return UTC time and note timezone
now = datetime.datetime.now(datetime.timezone.utc)
return f"Current time in {timezone}: {now.strftime('%Y-%m-%d %H:%M:%S')} (UTC basis)"
# This is the entry point that would be called by the LLM's integration layer
if __name__ == "__main__":
print(get_current_time())
print(get_current_time(timezone="America/New_York"))Fluxo de invocação de ferramentas pelo LLM
Veja como um LLM normalmente usa uma ferramenta personalizada:
- Instrução do usuário: você faz uma pergunta ao LLM (por exemplo, «Que horas são em Nova York?»).
- Decisão do LLM: o LLM analisa sua instrução e as descrições das ferramentas disponíveis.
- Chamada da ferramenta: se uma ferramenta for relevante, o LLM gera uma chamada de ferramenta (por exemplo,
get_current_time(timezone="America/New_York")). - Execução: seu sistema executa o código real da ferramenta.
- Resultado: a saída da ferramenta é retornada ao LLM.
- Resposta do LLM: o LLM usa a saída da ferramenta para formular sua resposta final para você.
Dando instruções com ferramentas personalizadas
Quando você dá instruções a um LLM que tem acesso a ferramentas personalizadas, não precisa dizer explicitamente para ele usar a ferramenta. Basta fazer uma pergunta que indique a necessidade dela.
A capacidade do LLM de compreender a descrição da ferramenta é essencial. Uma boa descrição ajuda o LLM a escolher a ferramenta certa no momento certo.
- Instrução:
"What is the current time right now?" - Ação do LLM: invoca
get_current_time() - Saída da ferramenta:
"Current time in UTC: 2023-10-27 10:30:00 (UTC basis)" - Resposta do LLM:
"The current time is 10:30 AM UTC."
Benefícios das ferramentas personalizadas
As ferramentas personalizadas desbloqueiam capacidades poderosas para os LLMs:
- Especificidade de domínio: forneça aos LLMs conhecimentos que vão além de seu treinamento geral.
- Interação em tempo real: acesse informações atualizadas (por exemplo, preços de ações e condições meteorológicas).
- IA acionável: permita que os LLMs executem ações (por exemplo, enviem e-mails e agendem compromissos).
- Maior precisão: reduza alucinações baseando-se em saídas factuais das ferramentas.
- Modularidade: mantenha a lógica do LLM separada das interações com sistemas externos.
Verificação rápida: ferramentas personalizadas
Quais dos itens a seguir são componentes essenciais da definição de uma ferramenta personalizada para um LLM?
Recapitulação: ampliando o poder dos LLMs
Nesta lição, exploramos ferramentas personalizadas e extensões, uma maneira poderosa de ampliar as capacidades dos LLMs.
- As ferramentas personalizadas permitem que os LLMs interajam com sistemas e dados externos.
- Elas exigem uma definição clara (nome, descrição e parâmetros), geralmente usando um esquema JSON.
- Você implementa a lógica real que é executada quando o LLM chama a ferramenta.
- As ferramentas personalizadas permitem que os LLMs adquiram conhecimento específico de um domínio, acessem dados em tempo real e executem ações, indo além da simples geração de texto.
Ao dominar as ferramentas personalizadas, você poderá criar aplicações de IA verdadeiramente inteligentes e interativas!
Perguntas Frequentes
A aula “Ferramentas e plugins personalizados para LLMs” é grátis?
Sim — o texto completo de “Ferramentas e plugins personalizados para LLMs” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de AI Prompt Engineering, atualize para CoddyKit PRO. O curso de AI Prompt Engineering inclui 3 aulas no total.
O que vou aprender em “Ferramentas e plugins personalizados para LLMs”?
Desenvolva e integre ferramentas personalizadas que os LLMs possam usar para ampliar suas capacidades além de seu conhecimento básico. Você pratica AI Prompt Engineering com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar AI Prompt Engineering?
Nenhuma experiência prévia é necessária. AI Prompt Engineering no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 3.
Quanto tempo leva a aula “Ferramentas e plugins personalizados para LLMs”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de AI Prompt Engineering?
Sim. Cada aula de AI Prompt Engineering inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Chamada de funções e integração com APIs
- Sistemas de prompting multiagente
- Ferramentas e plugins personalizados para LLMs