Bot de IA - Ferramentas personalizadas

:bookmark: Este guia explica como criar, configurar e integrar ferramentas de IA personalizadas no plugin Discourse AI, permitindo que os administradores estendam as capacidades do bot com funções JavaScript definidas pelo usuário.

:person_raising_hand: Nível de usuário necessário: Administrador

Ferramentas são funcionalidades programáveis que podem ser usadas pelo bot de IA para executar tarefas específicas ou recuperar informações além de apenas respostas baseadas em texto. Essas ferramentas são scripts ou integrações que permitem ao bot interagir com APIs externas, manipular dados ou executar funções adicionais para estender suas capacidades.

Resumo

Esta documentação abrange:

  • Criação de uma nova ferramenta de IA personalizada
  • Configuração de parâmetros e scripts de ferramentas
  • APIs disponíveis para scripts de ferramentas
  • Integração de ferramentas personalizadas com personas de IA
  • Teste e solução de problemas de ferramentas personalizadas

Criação de uma nova ferramenta de IA personalizada

Para criar uma nova ferramenta de IA:

  1. Navegue até o Painel de Administração > Plugins > Discourse AI > Ferramentas
  2. Clique em “Nova Ferramenta” (você pode usar predefinições existentes para aprender sobre as opções)
  3. Preencha os seguintes campos:
    • Nome: O nome da ferramenta como apresentado ao LLM
    • Descrição: A descrição da ferramenta como apresentada ao LLM
    • Resumo: Resumo do que a ferramenta faz para ajudar os usuários (exibido nos detalhes)
    • Parâmetros: Defina as entradas que sua ferramenta precisa como apresentadas ao LLM
    • Script: O código JavaScript que alimenta sua ferramenta
  4. Clique em “Salvar”

Configuração de scripts de ferramentas

APIs disponíveis

Seus scripts de ferramentas têm acesso às seguintes APIs:

  1. Requisições HTTP:

    http.get(url, options)
    http.post(url, options)
    

    Use estas para interagir com serviços externos. Você pode usar options para especificar cabeçalhos HTTP:

    http.get(url, { headers: { Auth: "some value" } })
    http.post(url, { headers: { Auth: "some value", body: "some body" } })
    http.patch(url, { headers: { Auth: "some value", body: "some body" } })
    http.delete(url, { headers: ...})
    http.put(url, { headers: ... , body: ...})
    
  2. Integração LLM (Modelo de Linguagem):

    llm.truncate(text, length)
    

    Isso permite que você manipule texto dentro dos limites de tokens do modelo de IA.

  3. Integração de upload personalizado (RAG)

    index.search(query, { filenames: options, limit: max_fragments_optional })
    
  4. Suporte à criação de upload

    upload.create(filename, base_64_content)
    
  5. Controle da cadeia de execução

    chain.setCustomRaw(raw) - define o corpo da postagem na cadeia.
    

Funções necessárias

Seu script deve implementar:

  • invoke(params): A função principal que executa quando a ferramenta é chamada

Opcionalmente, pode implementar:

  • details(): (Opcional) Fornece informações adicionais sobre a execução da ferramenta

Exemplo de script:

function invoke(params) {
  let result = http.get("https://api.example.com/data?query=" + params.query);
  return JSON.parse(result.body);
}

function details() {
  return "Fetched data from Example API";
}

Limitações e segurança

  • Tempo Limite de Execução: As ferramentas têm um tempo limite padrão de 2 segundos
  • Requisições HTTP: Máximo de 20 requisições por execução de ferramenta
  • Ambiente Sandboxed: Sem acesso ao sistema de arquivos do servidor ou bibliotecas Ruby

Testando sua ferramenta

Você deve testar qualquer ferramenta que construir para garantir que os resultados fornecidos ao LLM correspondam às suas expectativas.

Integrando ferramentas com personas de IA

Para adicionar sua ferramenta personalizada a uma Persona de IA:

  1. Vá para Painel de Administração > Plugins > Discourse AI > Personas
  2. Edite uma persona existente ou crie uma nova
  3. Na seção “Ferramentas”, você verá suas ferramentas personalizadas listadas ao lado das ferramentas integradas
  4. Selecione sua ferramenta personalizada para adicioná-la à persona

Ferramentas personalizadas em ação

Depois de fornecer a ferramenta personalizada ao seu LLM, ele pode usá-la para aprimorar a conversa.

Solução de problemas

Se sua ferramenta não estiver funcionando como esperado:

  1. Use a interface de Teste para garantir que ela se comporte como esperado para suas entradas.
  2. Certifique-se de que seu grupo esteja em ai_bot_debugging_allowed_groups. Membros deste grupo têm acesso total às transcrições do bot; você pode ver os logs da IA lá.
  3. Se algo inesperado estiver acontecendo, visite https://NOMEDOSITE/logs para verificar se há erros.

Recursos adicionais

14 curtidas