Introdução
Nessa documentação você entenderá como configurar o copilot com o PALM no Fortics SZ.chat.
O que é o PALM?
Segundo o Bard o PALM, ou Pathways Language Model, é um tipo de inteligência artificial que pode entender e gerar texto. Ele é treinado em um enorme conjunto de dados de texto e código, o que significa que pode aprender sobre o mundo e como usá-lo para gerar texto que seja relevante e informativo.
O Bard é um modelo de linguagem que usa o PALM para gerar texto, escrever diferentes tipos de conteúdo criativo e responder a perguntas de forma informativa.
Aqui está uma analogia que pode ajudar a entender a relação entre o PALM e o Bard:
Imagine que o PALM é uma biblioteca enorme, cheia de livros e artigos sobre todos os tipos de assuntos. O Bard é um bibliotecário que sabe como encontrar informações nessa biblioteca e usá-las para responder às suas perguntas.
Requisitos necessários para integração com o SZ.chat
Siga as instruções abaixo para obter um JSON que será usado na configuração do recurso.
1. Acesse o Google Cloud Platform, se logue e clique para acessar o console;
2. Localize Vertex AI e ative todas as APIs recomentadas;
3. Navegue até IAM e adminstrador > contas de serviço;
4. Clique em criar conta de serviço;
5. Preencha o nome da conta e a descrição conforme a sua preferência, ao concluir clique em continuar;
6. Nessa segunda etapa selecione a opção agente de serviço da Vertex AI e clique para concluir o processo;
7 - Localize a conta criada e clique em "gerenciar chaves";
8 - Em "chaves" navegue até "adicionar chave" e clique em "criar nova chave";
9 - Selecione a opção JSON e clique para criar. Ao criar, será feito o download da chave em json. Guarde-a de forma segura para que o acesso aos serviços sejam feitos apenas por você.
Concluímos as configurações no Google Cloud Platform (GCP). Agora, vamos prosseguir para a plataforma SZ.chat.
10 - Em integração > REST clique para realizar um novo cadastro;
11 - O campo nome deve ser preenchido conforme a sua preferência. Em categoria é necessário selecionar a opção copilot e escolher um dos itens do Google Palm.
A diferença entre os itens é que em um você já vai passar o contexto e no outro você poderá passar o contexto posteriormente.
Com contexto - indicado para uso como copiloto da tela do agente.
Sem contexto - Indicado para o fluxo, pois podemos passar o contexto dentro do fluxo, permitindo que o mesmo REST seja utilizado em processos diferentes.
12 - Em método de autenticação selecione "conta de serviço".
13 - Em conta de serviço adicione o JSON obtido no passo 9.
14 - Caso tenha escolhido o item com contexto, você deverá navegar até o final da configuração para selecionar o contexto que será utilizado.
Configuração de um contexto
É por meio do contexto que você irá passar as instruções e informações necessárias para realização das ações desejadas. Darei 2 exemplos para facilitar a compreensão.
- Exemplo 1
Esse é um exemplo de contexto caso você deseje que a IA interprete a mensagem do cliente e informe com qual setor ele deve falar para solucionar a sua dificuldade.
Identifique com qual setor da empresa o contato precisa falar para resolver o seu problema. Retorne apenas o nome do setor, suporte, financeiro ou comercial. |
- Exemplo 2
A Fortics é uma empresa brasileira que desenvolve plataformas de atendimento e tem os produtos SZ.chat e Fortics PBX como os principais produtos. Conta hoje com mais de 2500 clientes em todo o território nacional. A Fortics tem 130 colaboradores espalhados pelo Brasil e pelo mundo. Para saber mais sobre nossos produtos, nos acione através do WhatsApp https://wa.me/558003678427 Só responda questionamentos relacionadas ao contexto. |
Configuração do contexto
1 - Para configurar um contexto você deve navegar até configuração > contexto e clique para adicionar um novo contexto;
2 - Informe o nome desejado, ele servirá apenas para identificação do contexto dentro da plataforma. Em conteúdo adicione o contexto necessário para realizar a integração.
Fluxo de atendimento
A configuração e funcionamento do recurso é similar a integração com o GPT.
Como também é possível definir o contexto dentro da configuração do fluxo, é interessante que seja ustilizado um REST sem contexto, pois dessa forma o mesmo REST poderá ser utilizado de diversas formas em um mesmo fluxo. Exemplo, em determinada etapa do fluxo usar a integração para identificar o setor que será capaz de solucionar a necessidade do cliente. E em outra etapa utilizar a integração para responder perguntas frequentes.
A estrutura do fluxo deve seguir esse padrão.
- Contexto: irá passar as instruções e conteúdo necessário para solucionar a necessidade do cliente.
- Entrada de dados: para capturar a mensagem do cliente
- Script: irá unir a mensagem do cliente com o contexto os adequando ao formato necessário para integração
- RPA: irá executar a integração configurada em integração > REST.
O que será feito com o retorno da integração dependerá do seu objetivo. Os componentes seguintes seguirão conforme a sua preferência.
Vejamos a seguir o detalhamento da configuração de cada componente citado.
Contexto
Selecione o contexto desejado. Nesse componente irão aparecer os contextos localizados em configuração > contexto.
Entrada de dados
Configure o componente com a variável desejada, essa mesma variável será utilizada no próximo componente.
Script
Para conseguir unir o contexto e a mensagens do cliente, é necessário somar o conteúdo da variável utilizada na entrada de dados com a variável do contexto. O retorno deverá ser adicionada na variável PROMPT.
() => {
return "Context: " + context + "\nP:" + prompt + "\nP:";
};
RPA
Adicione no componente RPA um REST sem contexto visto que estamos passando o contexto dentro do fluxo.
O retorno pode ser em JSON ou variável, conforme a sua preferência. Nesse exemplo mostraremos o retorno em JSON. Nesse caso a resposta a ser dada para o cliente ficará armazenada na variável CHOICES, mas o conteúdo ainda precisa ser tratada para que fica no formado ideal para ser enviada para o cliente.
{
"metadata": "{{METADATA}}",
"predictions": [
{
"candidates": "{{CHOICES}}"
}
]
}
Mensagem
Para que a mensagem fique em um formato compreensível para o cliente, você pode tratar o conteúdo da variável CHOICES com o mustache. Vou colocar um exemplo a seguir, mas o formato do mustache irá mudar conforme a sua necessidade. Clique aqui para acessar a documentação sobre mustache.