# Tutorial: Flowise AI (2024) ## Transcrições de: Flowise AI (2024) Tutorial Tipo: Playlist Data: 08-01-2025 23: 39: 41 ## Vídeo 1: [Youtube Link](https://www.youtube.com/watch?v=nqAK_L66sIQ) (Idioma: en) O Flowwise AI é uma ferramenta incrível que faz a criação de aplicações de Inteligência Artificial (IA) poderosa sem escrever uma única linha de código. É aberto, de uso gratuito e foi desenvolvido utilizando o framework extremamente poderoso LangChain. Se você estiver desconhecido com o LangChain, é um framework de desenvolvimento que permite aos desenvolvedores construir aplicativos IA-potenciados e tem crescido em popularidade rapidamente. E o Flowwise faz todas as funcionalidades do LangChain acessíveis via uma interface de usuário drag-and-drop fácil de usar. Diferentemente de tê-las que escrever código complicado, basta arrastar e soltar esses "nós" em um canvas para criar alguns aplicativos de IA complexos. O Flowwise é minha plataforma favorita para criar chatbots e agentes de IA para meus clientes, e posso dizer de forma experiente que é possível criar algumas aplicações de IA impressionantes usando o Flowwise. Também é fácil integrar o Flowwise aos nossos sites ou aplicações usando algumas das seguintes opções: embedding ou API endpoints. Vamos começar por configurar o Flowwise localmente. Encaminharemos a implantação do Flowwise na nuvem nesta série, mas é sempre uma boa ideia começar com uma instância local para desenvolvimento e testes. A configuração é extremamente fácil, e podemos ver na página do site do Flowwise que basicamente envolve chamar dois comandos no terminal. Isto instalará o Flowwise globalmente em nossas máquinas, o que pessoalmente não é a minha opção, então também mostrarei dois métodos adicionais para instalar o Flowwise em uma pasta específica. E se você permanecer, mostrarei também como você pode usar um simples script que eu escrevi especificamente para esta série para instalar e atualizar o Flowwise rapidamente. Para usar o Flowwise, você precisa ter o Node. js instalado, então vá para [nodejs. org](http://nodejs.org) e instale a versão LTS do Node. Em seguida, abra seu prompt de comando ou terminal, e em seguida insira o comando `npm install -g flowwise`, e pressione Enter. Isto instalará o Flowwise globalmente em sua máquina. Se você gostaria de instalar o Flowwise em uma pasta específica em vez disso, avance para o próximo método. Para a maioria dos usuários, este método será perfeitamente adequado. Após a conclusão da instalação, podemos iniciar o Flowwise executando `npx flowwise start`. Isto iniciará um servidor local, e podemos acessá-lo indo para `localhost 3000`, e você deverá ver um painel como o seguinte. Portanto, sempre que você quiser iniciar o Flowwise, abra seu terminal, digite `npx flowwise start`, e você poderá então acessá-lo indo para `localhost 3000`. Para atualizar seu Flowwise, basta executar o comando `npm update -g flowwise`, e isto atualizará seu Flowwise à sua versão mais recente. E caso você sempre quisesse desinstalar o Flowwise, poderá simplesmente executar este comando. Agora para a maioria dos usuários, este processo de instalação funcionará justamente, mas se você quisesse instalar o Flowwise em uma pasta específica, podemos fazer isso também. Instalar o Flowwise em uma pasta específica abre bolhas de funcionalidades mais avançadas, que examinaremos durante a série. Isso não é muito complicado, mas envolve alguns passos, e depois dele, mostrar como você pode baixar um único script que executará todos esses passos em um único único passo. Para este método, você precisa ter o `npm` instalado em seu sistema operacional. Em seguida, execute este comando no prompt de comando ou terminal: `mkdir flowwise-app && cd flowwise-app && npm init -y`. Em seguida, baixe o package. json. json já preparado no link [aqui](https://gist.githubusercontent.com/seunghwan92/c1a9e04f4957dd9ea40cafc6fcf43cb8/raw/1dd3c857e3ffd434f2f0473a69194b8a61198d99/package.json.json) e coloque o arquivo no diretório da sua aplicação. Em seguida, execute o comando `npm install` para instalar todas as dependências necessárias, incluindo o Flowwise. Depois disso, rode o comando `npm run start: dev` para iniciar o servidor local do Flowwise. Agora, sem precisar instalar Flowwise globalmente, você pode acessá-lo a partir de `localhost: 3000`. ## Vídeo 2: [Youtube Link](https://www.youtube.com/watch?v=kAyKOsm8L5Y) (Idioma: en) Agora que configuramos o Flowwise, podemos finalmente ir para frente e criar nossa primeira aplicação com Flowise. Podemos criar uma nova aplicação com Flowise clicando em "Add New" no painel principal. O primeiro passo que recomendo fazer é salvar a aplicação e daremos para ela um nome. No meu caso, chamar minha aplicação "Meu Primeiro Chat Flow" e salvá-la. Após salvar a aplicação, você terá notado que agora temos duas opções adicionais disponíveis. Vamos ter um olhar nesta opção do botão de API endpoint. Nesse painel de opção, podemos ver todas as formas diferentes de se integrar a sua aplicação Flowise numa aplicação externa. Nesta função de embed, podemos ver este pedaço de código de exemplo que podemos usar para adicionar a aplicação Flowise a um site. E mostrarei um exemplo de qual seria isso em um site real. Após adicionar este código ao seu site, você verá este pequeno botão de chat surgir e os usuários poderão depois interagir com a aplicação Flowise. Vamos ter um olhar esta função de embed em mais detalhes nesta série. Podemos também ver código de exemplo de Python para chamar a aplicação e código JavaScript. E sob curls, podemos ver o endpoint da API para chamar a aplicação. Sob autorização, podemos também definir uma chave API para proteger este endpoint. E sob configuração, podemos também definir coisas como o limite de expedição e uma mensagem que será exibida uma vez que o limite for alcançado. E podemos também ver este botão de configuração. E a partir dela podemos ver as conversas anteriores que tivemos com a aplicação. Podemos duplicar esta aplicação. Podemos carregar uma aplicação existente de um arquivo. Podemos também exportar a aplicação. E podemos excluir a aplicação. E é extraordinariamente importante que podemos analisar nossa aplicação com a integração de ferramentas como Langsmith. Em seguida, podemos ver este botão para adicionar nós. E podemos também ver este botão do chat, que podemos usar para interagir com a aplicação. E na parte inferior da tela, podemos encontrar botões para aumentar o zoom, diminuí-lo, ajustar todo o layout de nós para visualização, e bloquear os nós de forma que não possam ser movidos acidentalmente. Agora onde começaremos? O primeiro passo é adicionar um nó à tela. Mas qual nó devemos adicionar? Como ferramento de regra, todos os chat flows devem conter pelo menos um agente ou uma cadeia. Agentes são um pouco mais avançados e examinaremos esses em vídeos futuros. Mas começaremos por adicionando uma cadeia nossa tela. E em esta lista você pode observar alguns tipos diferentes de cadeias. Adicionaremos o tipo mais básico de cadeia à nossa tela e isso será chamado de cadeia LLM (Large Language Model Chain). E neste nó de cadeia, podemos ver todas as entradas que ela espera no lado esquerdo do nó, com aqueles que são indicados por este pequeno asterisco simbolizando aqueles que são obrigatórios. Então neste exemplo, precisamos fornecer um modelo de linguagem, bem como um prompt. A saída de parsing e moderadores de entrada é opcional. Também podemos dar um nome para a cadeia. E finalmente, podemos também ver a saída que este nó produzirá. Basta deixá-la em LLM Chain, mas examinaremos a saída de previsão neste vídeo. Podemos também notar que ao passar o cursor sobre os nós, uma lenta pop-up pode surgir à direita do nó. Nesta opção, podemos duplicar este nó, você também pode adicionar um nó composto ou uma subcadeia por meio de algumas configurações avançadas, mas isso examinaremos no decorrer da série. # Começando com modelos de linguagem grandes em Flow-wise Este guia mostra-lhe como adicionar um modelo de linguagem grande a uma cadeia em Flow-wise e criar um fluxo de dialogo. ## Adicionando um Modelo de Linguagem Grande 1. Clique em `Adicionar Nós`. 2. Deslize para baixo na lista até encontrar `OpenAI`. 3. Adicione o nó `OpenAI` no canvas. 4. Conecte o nó `OpenAI` à sua cadeia arrastando do seu saída para o campo de entrada de linguagem grande na cadeia. ### Configurando as Credenciais do OpenAI 1. O nó `OpenAI` necessita de credenciais para se conectar com o OpenAI. 2. Clique no dropdown e selecione `Criar Novo`. 3. Dê um nome à credencial (por exemplo, `Tutorial de Flow-wise`). 4. Insira sua chave API do OpenAI e clique em `Adicionar`. 5. Você pode gerenciar todas as suas credenciais indo de volta ao painel de controle do Flow-wise. ## Definindo Modelo e Parâmetros 1. Clique no dropdown do nó `OpenAI`. 2. Você pode escolher entre três diferentes modelos. 3. Defina a temperatura entre 0 e 1. `0` significa que as respostas serão precisas e factuais, enquanto `1` significa que o modelo terá total controle criativo. 4. Você também pode definir parâmetros adicionais. ## Adicionando o Nó de Prompt 1. Clique em `Adicionar Nós` e selecione `Prompts`. 2. Adicione um `Modelo de Prompt` no seu canvas. 3. Conecte o `Modelo de Prompt` à sua cadeia. ## Injectando o Texto de Entrada nos Modelos de Prompt 1. Substitua o texto estático no prompt por valores dinâmicos ou variáveis. Por exemplo, use chaves curvas (`{}`) para representar uma variável e especifique o valor dessa variável na seção `Format Prompt Values`. ## Testando Seu Fluxo de Diálogo 1. Clique no botão de bolha para testar seu fluxo de diálogo. 2. Insira uma mensagem ou expanda o diálogo clicando no botão Expand. 3. Salve o seu fluxo de diálogo antes de o testar, pois as alterações só terão efeito uma vez que você salve. ## Conectando Varreduras Múltiplas 1. Você pode conectar varreduras várias juntas passando a saída de uma varredura como entrada para a próxima varredura. 2. Crie uma segunda varredura com as mesmas etapas da primeira varredura (Chef e Critic neste exemplo). 3. Transmita a saída da primeira varredura para a entrada da segunda varredura. 4. Teste o seu fluxo de multivarredura e divirta-se com a melhor performance e inteligência! Para mais informações, você pode assistir as vídeos 3 e 4 aqui: - [Vídeo 3](https://www.youtube.com/watch?v=yLfiNnK4NOM) (Idioma: Inglês) - [Vídeo 4](https://www.youtube.com/watch?v=bT308854-Qw) (Idioma: Inglês) # Setup Prompt Template ## Definindo o modelo de template de prompt Este exemplo mostra como criar um modelo de prompt para identificar se uma frase é verdadeira ou falsa e extrair informações específicas de uma frase. ### Trocando o texto do prompt 1. Para o prompt base, digite "Determine if the following **frase** é verdadeira ou falsa". 2. Defina um **placeholders** chamado "frase". ### Salvar o fluxo de diálogo 1. Salve o fluxo de diálogo após criar o prompt. ### Testar o fluxo de diálogo 1. Teste o fluxo de diálogo entrando com uma frase, por exemplo "O céu é verde". 2. Observe o retorno, que deverá ser um valor booleano "false". ### Aplicando um analisador de saída estruturado 1. Para melhorar a precision do retorno, você pode usar um **analisador de saída estruturado**. 2. Adicione um analisador de saída estruturado ao fluxo de diálogo. 3. Conecte o analisador de saída estruturado à entrada de parsers de saída do chain. 4. Abra as opções de **parâmetros adicionais** do analisador de saída estruturado. 5. Apague as propriedades de exemplo. 6. Adicione uma nova propriedade, dê-lhe um **nome** chamado "sentimento". 7. Defina o **tipo** como um valor booleano. 8. Adicione uma descrição explicando "frase é verdadeira ou falsa". ### Testando o fluxo de diálogo com o analisador de saída estruturado 1. Limpe a história do chat. 2. Digite uma frase no chat, por exemplo, "1 mais 1 é igual a 3". 3. Observe o retorno do chat, que deverá ser um objeto JSON. 4. Dentro do objeto JSON, você pode ver a propriedade "sentimento" com um valor de "false". ### Utilizando o valor de saída do analisador de saída estruturado para implementar lógica 1. O exemplo a seguir mostra como utilizar o valor de saída no analisador de saída estruturado para implementar lógica. 2. Você pode visualizar como se aplicar isso em sua aplicação no decorrer da série. ## Uma outra use case interessante para o analisador de saída estruturado 1. Remova a parte inicial do prompt. 2. Digite "extrair informações da seguinte frase". 3. Formate os valores do prompt para mapear o **frase** para a pergunta do chat box. 4. Lembre-se que uma frase pause, como "Max é 30 anos e casado com Angie", pode ser usada para obter informações específicas como o nome e idade de uma pessoa usando o analisador de saída estruturado. ## Como fazer a extração de informações 1. Remova essa frase do prompt. 2. Salve sua Flow. 3. Atualize o analisador de saída estruturado clicando em "**parâmetros adicionais**", removendo sentiment e adicionando a propriedade **nome** que será do tipo "string", com uma descrição: "nome da pessoa". 4. Adicione uma **propriedade** chamada "idade" que retorne um número e tenha uma descrição: "idade da pessoa". 5. Adicione outra propriedade chamada "esposa" que será do tipo "string" e tenha uma descrição: "nome da esposa". 6. Você pode fazer isto manualmente, ou pode usar uma API para consultar uma # Criação de um chatbot com Flowwise AI Este tutorial mostra-lhe como criar um chatbot com características semelhantes ao [chatGPT](https://chat.openai.com/) sem escrita de qualquer linha de código usando Flowwise AI. Aproveitando estes passos, pode ter conversações de dados com o chatbot, e também vemos como manter e recolher diferentes conversações, já como o próprio [chatGPT](https://chat.openai.com/). ## Nova conversação automática 1. Por início, crie uma nova conversação e dê-lhe um nome. ## Definição da cadeia de conversas No passado aprendemos acerca da cadeias LLM que nos permite fornecer um modelo e um moldes de exemplo. Nas nossas lições do dia, nós vaimos para o tipo de cadeia, chamado de cadeia de conversa. - Anexe uma cadeia de conversão à tua tela - Conecte o chat modelo na cadeia - Anexe também um nó de memória de buffer ## Definição da configuração do modelo Anexe a modelo AI de chatOpen ao teu canvas e junte-lo à cadeia. Para isso configura o seguinte: `Nome`: GPT 3. 5 turbo e `Calor` cerca de `0. 7` ## Entendimento do nó de memória A memória recolhe as conversas no histórico e é uma condição crítica para recordar a historia da conversas. Puedes escolher entre uns poucos desafia como o nó de memória de buffer neste momento mantenha as coisas simples let's starting with the buffer memory node . ## Teste o chatbot - Salvai a fluxo de chat e abrai o chat de teste. - Abra uma nova conversão digitando a palavra "olá" e depois observede a sua resposta. - Teste também a memoria digitando "o nome é Leon " e pergunte "e qual é meu nome " ## Utilizador de modelos de mensagens de exemplo O modelos de mensagem de exemplo é opicional mas pode te ter casos importantes usar. Posso introduzir uma mensagem de system, manipule a mensage de humanas ou utiliza modelos que já estivem pronto. 1. Anexar um template de mensage de exemplo ao teu canvas e crie uma connexão direta à tua cadeia. 2. Faça uma adjustment na sua mensage do system para abrir o coração do chatbot, pela exemplo ": Vocês é um capitão chamado John . " 3. Utilize juntamente a mensagens do user e do bot para personalisar o nosso chat bot. ## Utiliza a cadeia de dados em applicações Aplicar a concatenação de dados pode expandir a funcionabilidade chatbot. 1. Encontre cadeia AI e configure juntamente do modelo prompt e credencial. 2. Na template dos modelos incluya um caminho para os dados em saída da cadeia e incorpora-las nas respostas do nossos chatbot . ## Moderação de entradas Sistemas de moderação bloquearão inserções problemáticas, ou não, de utilizador. Utilize moderação simples para censura certas palavras ou frases. Útiliza nodo de mordida OAI para bocar expressions que violentam as politics do OAI. ## Memória extensiva em conversas Para armazenar conversão para futuras referentes, utilize módulo chat de memoria diferente nós como 'upstache Redis Memoria de nodo de discussão'. Percorra sequentemente com estes procedimentos configurar. . . 1. Apague node de memórias de bufer. 2. Tens um [nó chamado ‘upstache Redis membrana de recolha comunicadora memória de discurso do chat’ de adicion # Upstash e Flow-wise: Criando um Botão de IA de Conversação utilizando Flow-wise AI Este guia mostra como criar um botão de IA de Conversação usando Flow-wise AI. ## Acessando e Criando uma Base de Dados 1. Navegue até o [upstache. com](http://upstache.com) e faça login. 2. Certifique-se de que Redis foi selecionado, então clique em "Criar Banco de Dados". 3. Dê um nome ao banco de dados (por exemplo, "Flowwise AI"). 4. Selecione uma região, então clique em "Criar". 5. Descolare até a seção REST API. 6. Copie a URL e o Token REST das botões correspondentes. ## Configurando a Base de Dados 7. Coloque o Token REST no campo adequado e clique em "Adicionar". 8. Forneça a URL REST copiando-a e colando-a no campo adjacente. 9. Clique em "Parâmetros Adicionais", então especifique um ID de Sessão único (por exemplo, "chat1"). 10. Defina um tempo limite de sessão se desejado (para apagar a conversa após um determinado período). 11. Salve o fluxo e clique em "Chat". ## Interagindo com o Botão de IA de Conversação 12. Digite uma pergunta, como "Qual é o seu nome? ". 13. O botão responde e você pode continuar a conversa. 14. Você pode criar uma nova sessão, como "chat2" e iniciar uma nova conversa. 15. Você pode alternar entre sessões para gerenciar múltiplas conversas. ## Vídeo 6: [Link](https://www.youtube.com/watch?v=V7uBy3VQJAc) (Idioma: en) O Flow-wise facilita a criação de botões de IA que respondem às perguntas baseadas em várias fontes de dados, como documentos, sites web, bancos de dados ou outras fontes. Isso é útil para empresas, serviços e produtos. Neste vídeo, criaremos um botão de recuperação que responde às perguntas baseadas em nossa própria fonte de dados e discutiremos o armazenamento desta base de conhecimento em um servidor pinecone armazenado em armazenamento em nuvem sem servidor. ## Gerência Auxiliada pela Recuperação (RAG) Antes de mergulhar no fluxo de conversação, vamos discutir o conceito de Gerência Auxiliada pela Recuperação (RAG). 1. Para demonstrar o RAG, vamos usar o ChatGPT. 2. Quando perguntamos uma questão sobre dados fora do modelo de treinamento, o modelo pode não fornecer uma resposta precisa. 3. Para melhorar a resposta, inclua contexto no pedido. 4. Injete o conteúdo relevante, pergunte novamente e obtenha a resposta correta. Por usar o Flow-wise, o modelo recuperará dinamicamente o contexto da fonte de dados e o incorporará à resposta final. ## Criando um Botão de Recuperação 1. No painel do Flow-wise, clique em "Adicionar Novo". 2. Salve o projeto, o nomeie "botão RAG" e comece adicionando uma cadeia ao projeto. 3. Adicione a cadeia de conversação de recuperação, semelhante à cadeia de conversação do vídeo anterior. 4. Adicione o modelo de chat openai, definindo a temperatura em 0, 4 e selecionando os seus credenciais. 5. Adic # Documento: Guia para a Up-Cert de Dados e Web Scraping usando Flow-wise ## Up-Certando Dados para a Bancos de Dados Este guia irá demonstrar como fazer o Up-Cert de dados para a base de dados usando Flow-wise. ### Up-Certando Dados Para Up-Certar dados, basta clicar no botão verde, o que fará aparecer uma janela com as etapas para carregar os dados. A Flow-wise oferece um ponto final da API para desencadear o processo Up-Cert de soluções personalizadas. Para carregar dados usando este método, basta clicar em "Up-Cert" na janela. Você deverá receber uma mensagem que o Up-Cert foi bem sucedido. Feche a janela e tente testar. ### Perguntas Relevantes No chat, pergunte uma questão relacionada a este documento PDF, por exemplo, "Quais foram as ações totais em 2023? " Você deverá receber a resposta correta em retorno. ## Scraping de Informações de um Website Esta secção descreve como scrapear informações a partir da documentação da Flow-wise. ### Despachando Flow-wise Para desencadear Flow-wise, vá em Add Nodes, Document Loaders, e adicione o scraper web do Cheerio. Alimente o scraper web com o armazenamento vector e alimente o separador de texto com o carregador de documento. ### Scraping de Informações da Documentação da Flow-wise Copie o URL da documentação e cole-o no nó. Tente-o tocando "Upsert vector database". Toque em "upsert" e tente. ### Mais de Um URL e Opções de Scrape Adicionais É possível obter mais de um URL ao mesmo tempo e extrair todos os conteúdos de seu site. Para fazer isso, clique em opções adicionais, altere o método para web crawl ou scrape XML sitemap. ### Gerenciando Links Substitua atualmente o URL com um link para o sitemap. Toque em "fetch links" para ver quais páginas serão scrapeadas. ## Perguntas sobre a página Iniciar Vamos perguntar uma questão sobre a página Iniciar, por exemplo, "Como posso configurar a Flow-wise como desenvolvedor? " Você deverá receber a resposta correta em retorno. ## Adicionando um Servidor Pinecone without captions para o Projeto Esta seção explica como adicionar um Pinecone serverless database no projeto. ### Removendo o Armazenamento Vector de Memória Remova o armazenamento vector de memória e adicione o armazenamento vector de Pinecone. Conecte os embeddings com pinecone e o carregador de documento. Conecte pinecone com a cadeia de conversa. ### Propor Credenciais de Pinecone Propor as suas credenciais de Pinecone, incluindo o nome do seu index de Pinecone. Você pode encontrar estas credenciais ir para [pinecone. io](http://pinecone.io). ## Usando o Index de Pinecone Depois de criar o index, copie o valor da chave e cole-o no Pinecone interface da Flow-wise. ## Recuperações Você pode usar recuperações para ver os documentos originais. ## Modelos de Linguagem Tocar nos cadernos limpar e perguntar "O que é LCL? " para demonstrar o uso do chatbot. ## Depurando e Monitorando as Aplicações AlloLm A LangSmith é uma plataforma poderosa para depurando e monitorando as aplicações AlloLm. Ela permite monitorar cada passo dentro da sua aplicação em detalhe. Para mais informações sobre a LangSmith, consulte o [Manual da LangSmith](https://www.youtube.com/watch?v=QghlUiQHMbw). --- ### Vídeo 7: [Link para o Manual da LangSmith](https://www.youtube.com/watch?v=QghlUiQHMbw) (Idioma: en) Este conjunto de vídeos explora a criação de vários fluxos de chat usando Flowwise. Manter uma conta do que as aplicações AlloLm estão fazendo por trás das cenas pode se tornar um desafio quando a complexidade aumenta, especialmente ao se movimentar para aplicações mais complexas como agentes com produtos. No entanto, há uma solução para depurar e monitorar estas aplicações em detalhes: a LangSmith. A LangSmith é uma plataforma desenvolvida pela LangChain que nos permite monitorar cada passo dentro da nossa aplicação em detalhe. Este recurso pode ser especialmente útil para verificar o número de tokens utilizados pela nossa aplicação, entre outras vantagens. Registre-se para uma conta gratuita de LangSmith para começar a utilizar. # Documentação Técnica: Utilização de Langsmith em Flow-wise Este guia fornece orientação sobre o uso de Langsmith em Flow-wise, um poderoso assistente sem código para criar soluções de intuição humana altamente sofisticadas. Encontre como utilizar Langsmith para respostas diretas de conhecimentos e solucionar tarefas complexas usando ferramentas. ## Tokens e custos em Flow-wise Encontre mais informações sobre isso clicando no registro. A esquerda, você pode ver todas as etapas executadas como parte deste rastreamento. Como este foi uma aplicação simples, realmente houve apenas uma etapa. Essa foi a chamada para abrir o AI. Você pode ver o conteúdo da instrução de prompt clicando neste link e vê-se que o placeholder foi de fato preenchido com o valor "cavalo". ``` curl -X POST https://api.Langsmith.com/api/v1/answer \ -H "Content-Type: application/json" \ -d '{"message": "{{token}}"}' ``` ## Langsmith com parser de saída tagged Aqui tem uma cadeia simples de LLM com um modelo de instrução de "Lista separada por vírgula de sinônimos com base em uma determination". Passamos um termo do diálogo, e para o modelo estamos utilizando o GPT 3. 5 Turbo. Temos um parser de saída personalizado nesta cadeia. Ele recebe as saídas do prompt e expõe uma estrutura JSON em uma lista. Para executar isso, clique em `configurações` e `análise de fluxo de discussão`. Dentro de Langsmith, forneça suas credenciais. Dê um nome ao projeto, por exemplo `Flow-wise`. Ative esta configuração. Clique em `Salvar`. Na conversa, digite o termo "feliz". Isso retorna um JSON com uma lista de valores. O que é interessante neste exemplo é que sem idealmente ter nenhuma ideia de como este parser de saída funciona, podemos ver que o espaço de dados de parcelas de mandatos foi utilizado para passar o parâmetro 'format_instructions'. O módulo de parser de saidas adicionou esta palavra-chave para dizer que sua resposta deve estar em um formato de lista dividido por virgula. Além disso, também existe um exemplo de valores. Isso significa que a saída do modelo agora está no formato JSON da lista. Como legal! ! ! ### Metadata Você também pode encontrar informações interessantes como qual modelo foi utilizado durante a execução, a temperatura e o parser usado. ## Conversas com memória atribuída Este é um fluxo de conversas simples com memória atribuída. Para o modelo, estou utilizando o GPT 3. 5 Turbo. Este fluxo de conversas é considerado uma seqüência executável, então no discretional você pode ver sua entrada. Clicando em `mostrar tudo`, você pode ver um mapa simples de etapas. A primeira etapa neste processo é simplesmente receber a mensagem do mapa entrada e devolver esta estrutura saída que inclui a história da conversa. Esta saída então é passada para a próxima etapa em seqüência, na qual é a instrução de tópico. ### Uso da API do OpenAI Clique em `secrets`, e não que esqueça de copiar sua chave API do OpenAI. ## Exemplo final Este é o exemplo final de um chatbot com base em pine-cone. Este é o mesmo exemplo que usamos no vídeo passado com o objetivo de treinar o modelo para responder às perguntas em língua longrange chain express language. Clique em `configurações`, entre em `análise de fluxo de discussão`, inscreva suas credenciais. Dê um nome ao projeto, para exemplo `Flow-wise`, ative esta confugração e clique em `Salvar`. Na conversa, pergunte `O que é LCL? ` Como era esperado, recebemos a resposta correta. Veja a tratação de memória clicando em `último rastreamento`, em seguida, em `mostrar tudo`. A principal diferença entre as cadeias e os agentes: > * Cadeias respondem uma pergunta por uma maneira pré-definida. > * Agentes usam razão para figurar o que precisam para concluir um trabalho. # Integração de Cálculadora e Exemplos Adicionais de Ferramentas Esta seção demonstra como adicionar uma cálculadora a um agente, juntamente com alguns exemplos de ferramentas adicionais. ## Integração de Cálculadora Na seção ` Ferramentas`, vamos adicionar uma cálculadora no canvas e atá-la aos ferramentas permitidas. Grave as alterações no fluxo de chat e teste com uma pergunta como, "Qual é o resultado de 5000 divisível por 20? ". É importante ter em mente que poderá ser desafiador determinar se foi usado uma ferramenta ou a resposta foi gerada pelo modelo. Para inspecionar o processo, utilize uma ferramenta como o Langsmith, que exibirá a entrada e a saída da ferramenta de cálculadora no rastreamento. ### Implementação de Langsmith 1. Acesse `Análise de fluxo de chat`. 2. Clique em `Langsmith`. 3. Forneça suas credenciais de Langsmith. 4. Dê um nome para o seu projeto, por exemplo, `demo do agente`. 5. Inicie o rastreio. 6. Grave novamente as alterações. 7. Inicie o chat novamente. 8. Vea o rastreamento no Langsmith para ver o uso e a entrada/saída da ferramenta de cálculadora. Reveja o video anterior na série para uma guia detalhada sobre a integração do Langsmith em Flow-wise. ## Exemplos Adicionais de Ferramentas ### Movimentação da Ferramenta de Cálculadora Move a ferramenta de cálculadora para outro local e adicione uma ferramenta que permita ao agente realizar pesquisas na web. 1. Navegue até `Adicionar Nó > Ferramentas`. 2. Adicione o API de Pesquisas SERP. 3. Ligue a ferramenta API SERP ao seu agente. 4. Introduza as suas credenciais. 5. Inscreva-se em uma chave API de SERP API. com, depois cole a chave no campo requerido e clique em `Adicionar`. 6. Agora pode utilizar esta ferramenta em sessões de chat. ### Funcionalidade de Pesquisa na Web Para adicionar funcionalidade de pesquisa na web, siga estes passos: 1. Acesse `Adicionar Nó > Ferramentas`. 2. Escolha entre as opções para a funcionalidade de pesquisa, por exemplo, o API de Pesquisas SERP. 3. Ligue a ferramenta escolhida ao seu agente. 4. Tenha disposição para introduzir as suas credenciais, se necessário. ## Perguntas da Base de Conhecimento Adicione uma base de conhecimento personalizada ao seu agente utilizando uma ferramenta de recuperação. 1. Clique em `Adicionar Nó > Ferramentas`. 2. Adicione a ferramenta de recuperação ao seu workspace. 3. Ligue a ferramenta de recuperação ao seu agente. 4. Dê um nome adequado à ferramenta de recuperação e uma descrição apropriada. 5. Faça as configurações necessárias da sua base de dados vectorização e vectores, se necessário. 6. Suba o documento relevante ou conloque-se à base de dados existente de pinecone. Com a adição destas ferramentas, o seu agente será mais capaz de realizar tarefas como cálculos de matemática, pesquisas na web e recuperação de respostas de uma base de conhecimento personalizada. # Guia Rápido: Implementação de FlowWise nas Nuvem Este documento fornece uma passo a passo para a implementação de FlowWise na nuvem e para acesso aos fluxos de chat por qualquer local. ## Pré-requisitos - Uma conta no GitHub ([Cadastre-se](https://github.com/signup)) - Acesso ao [repositório de FlowWise no GitHub](https://github.com/flowwiseai/flowwise) ## Passos para implementar FlowWise no Render 1. **Forkar o Repositório** - Acesse o repositório de FlowWise no GitHub. - Clique em `Fork` para criar uma cópia do repositório no seu próprio nome de espaço. 2. **Criar um novo serviço no Render** - Acesse Render. com e crie uma conta ou faça login com a sua conta existente. - Depois de fazer login, você verá uma tela de painel. Clique em `Novo` para criar um novo serviço. - Selecione `Web Service` como o tipo de serviço. 3. **Implementar do GitHub** - Na seção `Deploy from`, selecione `GitHub`. - Conecte seu conta com o GitHub, caso solicitado. - Selecione o repositório `FlowWise AI` forcado e clique em `Conectar`. 4. **Configurar o serviço Web** - Dê um nome ao seu projeto, por exemplo, `FlowWise AI YouTube`. - Selecione a região onde deseja hospedar o serviço e deixe os campos `Branch`, `Route Directory`, e `Mount Directory` intactos. - Selecione `Docker` como o runtime. 5. **Escolher tipo de instância e variáveis ambiente** - Sob `Instance type`, escolha o plano desejado com base em suas necessidades, incluindo um plano gratuito para seguir este tutorial. - Defina as seguintes variáveis ambiente: - `flowwise_username` - `flowwise_password` - `node_version` (defina para `18. 18. 1`) - Para limitar o acesso aos fluxos de chat, sempre forneça credenciais de usuário seguras para ambas `flowwise_username` e `flowwise_password`. 6. **Adicionar armazenamento persistente (opcional)** - Caso deseje utilizar o FlowWise em um ambiente de produção, considere subir um plano pago e adicionar armazenamento persistente seguindo estes passos: 1. Clique em `Avançado`. 2. Clique em `Adicionar disco`. 3. Dê um nome ao seu disco (por exemplo, `flowwise_disk`). 4. Para o path do montagem, insira `/opt/render/dot/flowwise`. 5. Defina o tamanho para `1G` (ou maior se necessário). 6. Adicione as seguintes quatro variáveis ambiente adicionais: - `DATABASE_PATH` (use o mesmo valor do `path do montagem`). - `API_KEY_PATH` (usando o mesmo valor de `DATABASE_PATH`). - `LOGS_PATH` (`/logs`). - `SECRET_PATH` (usando o mesmo valor anterior). 7. **Criar o serviço Web** - Clique em `Criar Serviço Web` para implementar o FlowWise no Render. Depois da implementação, aguarde o processo de build finalizar. Você verá um ícone vivo ao lado do nome do projeto quando estiver concluído. Clique no nome do projeto para abrir a instância implantada de FlowWise, a partir de onde você pode fazer login com suas credenciais para o uso desejado. ## Atualizando FlowWise no Render Quando a equipe de FlowWise lançar atualizações, elas não são automaticamente aplicadas à instância de FlowWise. Para atualizar a sua instância, siga estes passos: 1. Acesse o quarto repositório de FlowWise em sua conta do GitHub. 2. Sincronize sua cópia clicando em `Sincronizar Fork` seguido de `Atualizar ramal`. 3. Atualize a tela do painel do Render e observe que um novo deploy foi iniciado, atualizando a sua instância de FlowWise no Render para a versão mais recente. ## Recursos Adicionais - [Implementação de FlowWise em vários fornecedores](https://flowwise.gitbook.io/docs/deployment) - [Vídeo 9: Implementação de FlowWise na Nuvem](https://www.youtube.com/watch?v=OMNC8MQKosU) - [Vídeo 10: Adicionando um bot de chat inteligente ao seu website com FlowWise AI](https://www.youtube.com/watch?v=G1ZSxKNdPG4) # Documentando a integração de um chatbot em uma aplicação Next. js usando Flowize Saiba como incluir um chatbot em uma aplicação Next. js seguindo este guia. Neste artigo, vamos cobrir a adição do chatbot a um site HTML antes de avançar para a integração com uma aplicação Next. js, personalização de sua aparência e discutindo uma ferramenta útil para ajudar na personalização da janela de dialogo. ## Adicionando o chatbot em um site HTML ### Obter o Embed Snippet de Flowize Para manter tudo simples, vamos trabalhar com um arquivo `index. html`. Embora não precisaremos focar no código HTML, este passeio mostrará como copiar o snippet de embed do Flowize e colar nele em projetos de seu site. Este processo permanece o mesmo independentemente da plataforma que estiver usando, ejas Wix, Squarespace, Shopify, ou qualquer outra plataforma que permita a cópia e colagem de snippets de JavaScript. Procure as instruções relevantes para seu provedor específico para aprender a colocar o código em uma localização adequada dentro do template de seu site. Quando obter o embed snippet, siga as etapas a seguir: 1. Volte para o Flowize e receberá a mensagem `Coja e cola isso em qualquer lugar dentro dos parênteses de fechamento do elemento body de seu HTML`. 2. Copie o snippet de código fornecido. 3. Cole o snippet em qualquer lugar dentro dos `<body>` tag do seu HTML. 4. Abre o arquivo, execute-o para ver o bolinho de chat aparecer na parte inferior da tela e interaja com ele com desejo. ### Consultar e analisar a conversa 1. Depois de dizer `Olá`, recebe uma resposta do Flowize. 2. No Flowize, vá para **Configurações** > **Ver Mensagens** para ver a conversa gravada com estas duas mensagens. 3. Se continuar a conversa perguntando por uma história engraçada, você pode fazê-lo e regressar ao método **Ver Mensagens** para visualizar o transcrípio inteiro da conversa. >滚步注意： Analise os logs de chat com o objetivo de melhorar seu chatbot. ### Configurando a aparência do chatbot #### Modificar a paleta de cores e remover a marca registrada 1. No Flowize, copie o objeto de tema localizado abaixo do código de exemplo ao checar o checkbox abaixo do código de exemplo. 2. Cole o objeto de tema em seu site depois do `API host` propriedade. Sobstituir o tema e os corchetes por código copiado. 3. Na versão modificada do objeto de tema, altere as propriedades desejadas para personalizar a paleta de cores, ícones, posição do bolinho de chat, mensagem de boas-vindas, e outros elementos para obter seu aspecto e sensação desejados. >Tips: ** > >- Para utilizar a ferramenta útil mencionada neste artigo para uma personalização simplificada, veja o [Flowize Customizer](https://flow-customizer.vercel.app/) no final deste guide. >- Para uma lista exhaustiva de parâmetros para escolher, visite a [Flowize referência de tema](https://www.flow.com/docs/web/customize-chatbots/). ## Integrando o chatbot com uma aplicação Next. js Avancemos com a integração do chatbot em uma aplicação Next. js. Este exemplo usa uma aplicação Next. js vanilla para fins de demonstração, mas venha a usar React se isso é sua preferência. 1. Primeiro, instale a dependência: `npm install flow-wise-embed-react` 2. Crie um novo `components/chatbot. jsx` arquivo e crie uma componente React funcional chamada `Chatbot`. ```bash import { BubbleChat } from 'flow-wise-embed-react'; import { useClient } from '@mantine/next'; const Chatbot = () => { const { client } = useClient(); // Inicialize o componente BubbleChat com a URL do servidor API e o ID do fluxo de chat return ( <BubbleChat apiHost="your-api-host-url" chatFlowId="your-chat-flow-id" /> ); }; export default Chatbot; ``` 3. Adicione `Chatbot` em todas as páginas de seu projeto: ```bash // pages/layout. js import Chatbot from '. . /components/chatbot'; // . . . export default function MyApp({ Component, pageProps }) { return ( <Container> <Header /> <ChakraProvider {. . . chakraProvider}> <Chatbot /> {/* Renderize o Chatbot dentro dos tags de body */} <Component {. . . pageProps} /> </ChakraProvider> </Container> ); } ``` > Observação: ** Este exemplo utiliza as bibliotecas @mantine/next e chakra-ui. Utilize equivalentes personalizados para a inicialização caso não esteja utilizando estas bibliotecas. Depois de salvar estas alterações, o bolinho de chat deverá aparecer e estar pronto para interação em todas as páginas de sua aplicação Next. js. ### Usando o Flowize Customizer Tool Para tornar a personalização mais fácil, siga estas etapas para utilizar a [Flowize Customizer Tool](https://flow-customizer.vercel.app/): 1. Acesse a [Flowize Customizer Tool](https://flow-customizer.vercel.app/). 2. Insira o ID do seu fluxo de chat e o servidor API. 3. Personalize a janela de diálogo utilizando os atributos disponíveis. 4. Clique no botão "Copiar JSON" quando estiver terminando. 5. No seu projeto, substitua o objeto de tema pelo JSON copiado. Isso deixará com você com uma janela de chat contendo todos os seus novos atributos personalizados. # Configuração e Criação de Chatbot Local usando Markdown Nesta seção, você aprenderá a instalar o Olama e criar um chatbot local usando Flow-wise. ## Instalando Olama 1. **Primeiro**, acesse [`olama. com`](https://olama.com) e clique em `Download`. 2. **Executar o arquivo baixado** e instale o Olama. Após a instalação, a janela de instalação desaparecerá, isso é normal. 3. **Inicie o Olama manualmente** usando o terminal. Para isso, abra o terminal, PowerShell ou prompt de comando em seu computador, escolha o que preferir. 4. **Agora, deseja baixar seu primeiro modelo**. O modelo escolhido é extremamente importante, pois alguns modelos são extremamente intensivos em recursos. Para esse vídeo, eu escolheria o modelo LLM2, mas recomendo que teste diferentes modelos com base em sua hardware. 5. **Para baixar um modelo, clique no nome do modelo, ** e você pode ver a seguinte linha de comando: `Olama run LLM2`. **Copie-a** e digite-a no terminal. 6. O primeiro vez que você executar esse comando, o Olama primeiro download o modelo LLM2 e você receberá essa mensagem: "envie um comando" Se você digitar algo como "Olá", receberá uma resposta do modelo LLM2. --- ## Iniciando o Olama em um servidor local Para servir o Olama em um servidor local, digite no terminal `olama serve`. Se você receber essa mensagem de erro: "Olama já está em execução", significa que ele já está em execução. Confirme pela URL: http://127.0.0.1:8000/status se "Olama está em execução". --- ## Criando um chatbot local em Flow-wise 1. Crie um **novo Chat Flow**. Chame-o "chatbot local". 2. Adicione **uma corrente de conversação**. Sobre ela, você pode usar a extenção stapels plataforma Flow-wise 3. Adicione **o modelo de chat Olama**. Nesse modelo, você deve definir a URL do servidor local onde o Olama foi executado. 4. **Salinhe** o Chat Flow e teste-o questionando "Olá". 5. Agora você tem um chatbot local que você pode usar em seu computador. --- ## Criando um chatbot visando um arquivo RAG (Recursos, Acesso, Garantia) Para criar um chatbot RAG, crie um novo Chat Flow. Chame-o "chatbot RAG local". 1. **Adicione uma corrente conversacional de retrieval QA**. Isso permitirá que adicione um arquivo de dados para essa corrente. 2. Adicione **ao chat model Olama** e **conecte-o a corrente**. Nesse modelo, defina o modelo como `LLM2`. 3. **Adicione o documento carregador** para colocar seu arquivo de dados na RAG (Recursos, Acesso, Garantia). 4. **Adicione o aplicativo de representação em tempo de execução**. Isso também é levemente diferente do que você está acostumado com os modelos OpenAI. 5. Aponte-a para o seu documento de carregamento. 6. **Salve o chatbot**. Agora você pode questionar sobre o arquivo de dados que você carregou. ## API do Flowise Flowise oferece vários pontos de extremidade API que podemos utilizar para integrar nossos chat flows em aplicações personalizadas ou plataformas terceirizadas. Essas APIs nos permitem Titulo: Visão Geral sobre Personalização das Respostas da API utilizando o Flowwise com Markdown ------ Transforme o Modelo de Assistente de Linguagem (LLM) com a conveniente funcionalidade de personalização de respostas. Iniciemos por adicionar uma propriedade adicional à carga de dados, denominada `override config`. Em seguida, adicione um sinal de pontos e suspensório seguido de chaves e colchetes para especificar propriedades adicionais. Agora, procurue a propriedade que corresponde ao nome do modelo. Abra novamente o nó **chatOpenAI** para encontrar a propriedade de nome específica nesta coluna "nome". Copie então esta propriedade de nome de modelo. Adicione-a à sua carga de dados, especifique um valor com um ponto e entre aspas, por exemplo, GPT 4. Execute então esta configuração. Obtenha a resposta, mas como saber se este modelo é realmente GPT 4 e não GPT 3. 5 Turbo? Esta é uma situação comum onde a ferramenta de análise de linguagem, como a Langsmouth, pode ser útil. * Fique a ver nesta página <https://etherealengine.com/learn/tools-for-developers/langsmouth> para saber como utilizar a Langsmouth. * Ative a Langsmouth acessando Configuração > Análise de Chat > seguindo por Langsmouth, somente selecione as suas credenciais. Dê um nome para o projeto, como API demo. Ative a Langsmouth. Clique em Salvar. Salve então o fluxo de chat. Agora que a Langsmouth está ativa, execute novamente a consulta. * A Langsmouth então mostra então o projeto API demo e, ao clicar no LLM chain, podemos verificar o modelo usado clicando no bloco Metadata, onde podemos verificar que o modelo utilizado foi realmente GPT 4. Podemos personalizar também outras propriedades, como o prompt template. Para sobrescrever totalmente este valor, encontre a propriedade pelo ícone de popup > opção de Configuração de Entrada > logo no prompt template, encontramos as propriedades do prompt template e do prompt values. Copie o nome da propriedade de prompt template. * Em Postman, insira um prompt de template `tell me a joke about` e o product como `assunto`. Troque o valor do input user de cakes para dogs, execute então e veja como obtemos uma resposta de piada em vez do nome de um produto. Também podemos passar um valor específico para uma variável, copiando a propriedade de dados de prompt. Além disso, é necessário adicionar a propriedade `override config`. Sudomente, utilize o prompt values como um objeto, especifique o nome da variável que será substituída, como `assunto`, e o seu valor. * Caso utilize multiplos prompt templates em um fluxo, é possível sobrescrever o template de um nó específico. Isso pode ser feito facilmente especificando a ID do nó na sua sobreposição. A ID do nó pode ser encontada clicando no botão de informações ao passar o mouse sobre qualquer nó. Há também a possibilidade de continuar com uma conversa existente no fluxo de chat. Encontre a ID de sessão (session ID) ao clicar na opção Conversa > Divide os exchange > selecionando uma convremorável resposta emitida pelo modelo e selecionando marcar como saída do modelo > colorindo o texto > clicando com o botão direito > copiando. * Selecione então o nó correspondente ao qual o tempo de vida deseja obter a conexão ativa e, em seguida, coloque seu código de controle de ID de sessão copiado ao lado do ID de sessão do cliente. Isso permite retornar uma # Documentação Este guia mostrará-lhe como realizar várias operações usando a API num aplicativo de cadeia Lang. ## Upsert de Dados Começar com a subida de dados utilizando o botão fornecido. Você verá uma mensagem indicando que o upsert foi realizado com sucesso. Em nosso índice de Pinecone, podemos ver um novo registro contendo o conteúdo da página. Agora, vamos consultar os dados usando Postman. ### Consulta de Dados com Postman 1. Remova `override config`. Vamos abordar isso mais tarde. 2. Substitua o ID de sessão por um ID de sessão para este fluxo de chat RAG. 3. Mude a pergunta para `O que é a cadeia de Lang? `. 4. Execute a consulta. Deverá receber a resposta correta. ### Uso da API para Executar o Upsert 1. Limpe o Pinecone para começar sem dados. 2. Clique em `upsert` novamente no Flow Wise. 3. Clique em `show API`. 4. Clique em `curl` e copie a URL. No Postman, crie uma nova aba e cole a URL. 1. Mude o tipo para `POST` nas opções de cabeçalho. 2. Adicione a propriedade `content-type` com um valor de `application/json`. 3. No corpo, mude para `raw`. Para o momento, não precisaremos de entrar com nada no corpo. 4. Clique em `enviar`. Deverá receber uma resposta que diz `upsert realizado com sucesso`. 5. Atualice o Pinecone para verificar que os dados foram realmente inseridos. ### Adição de Dados a um Namespace Específico A adição de dados a nomespaces específicos pode ser importante para aplicações de mundo real. Por exemplo, uma aplicação com vários usuários exigirá que os usuários se autentiquem para se comunicar com os sua chat flows. Depois de se autenticarem, os usuários podem querer carregar documentos para seus espaços de conhecimento. Quando eles perguntarem sobre os dados, apenas os dados que pertencem a eles deveriam ser consultados. Para adicionar dados a especificos nomespaces: 1. No corpo da solicitação de upsert, adicione a `override config` propriedade, que é um objeto. 2. Quando mudar de volta para Flow Wise, verá quais propriedades podem ser alteradas. Altere o `namespace de pinecone`. 3. Copie o valor e cole-o como uma propriedade em Postman. 4. Especifique qualquer valor para o namespace que desejar. Isso pode ser algo como um ID ou endereço de email único do usuário. 5. Execute o upsert. 6. Atualize o Pinecone para verificar que a entrada foi criada e o namespace adicionado. ### Especificar o Namespace para Consultas Quando consultar dados, Precisa especificar o namespace para o qual a consulta deve ser realizada. Para fazer isso: 1. Adicione a `override config` propriedade. 2. Defina a propriedade `namespace de pinecone`. 3. Executar novamente a consulta. Esta vez deverá receber a resposta correta. ### Segurança e Limitando APIs As APIs podem ser protegidas usando uma chave API e impedindo que as pessoas se wasted na API através do estabelecimento de um limite de taxa. 1. Clique em `Endpoint de API`, depois selecione `API key` em `curl`. 2. Você pode adicionar uma nova chave API ou usar a chave padrão. 3. Para autorizar aplicações para chamar estes endpoints, defina uma propriedade de autenticação na cabeça da sua solicitação. 4. Fixe o limite de escrita ao ir para `configurações`, `configuração`, e na guia `limite de escrita`, defina quantas mensagens devem ser permitidas em um determinado período. API setup ---------------- Se você pode ver o botão "Implantar", pode configurar sua própria extremidade de inferência para este modelo. Para isso, basta clicar na opção, carregar seus detalhes de pagamento, e fazer uma API pública como um exemplo. devido à não entrada de detalhes de pagamento, não consigo hospedar isto. No entanto, a adição de detalhes de pagamento permitirá a implantação da extremidade, após o que receberá um URL para a extremidade. Adicione um modelo de Prompt ---------------------------- Para personalizar as respostas do modelo, precisamos adicionar um modelo de prompt. Para isso, navegue até "Adicionar Nós" > "Prompts" e insira nossa plantilla de modelo personalizada. Em seguida, conecte essa plantilla à cadeia, defina a plantilla, e crie uma variável usando chaves, por exemplo, `{subject}`. Salve a plantilla, salve o fluxo de discussão e teste a resposta no chat. Melhora de Respostas do Modelo ------------------------------ Quando trabalhar com modelos open-source, melhorar as respostas pode ser frustrante, especialmente quando se refere à geração de respostas com palavras desnecessárias. Para mitigar esse problema, é essencial seguir as instruções fornecidas para cada modelo no documento. Por exemplo, neste caso, o modelo requer colocar os colchetes S ao redor da instrução para obter o formato de resposta desejado. Ajuste a plantilla ajustando a instrução de adicionar os colchetes abertos antes e os colchetes fechados no final, por exemplo: ``` S: Diga-me uma piada sobre o assunto ``` Salve as alterações, salve o fluxo de discussão, e teste a resposta melhorada ao implantar a extremidade. Recursos escondidos do Flowwise (Vídeo 14) ------------------------------------------ Este vídeo apresenta vários recursos escondidos do Flowwise que podem essencialmente melhorar seus fluxos de discussão. Alguns desses recursos incluem: 1. Permitir que usuários carreguem imagens 2. Reconhecimento de fala 3. Recursos Anotativos 4. Recursos Iniciais Consulte o vídeo para instruções detalhadas sobre como utilizar estes recursos. Proteção dos fluxos de discussão em produção (de Vídeo 15) ---------------------------------------------------------- Leve vantagem das seguintes características importantes para proteger seus fluxos de discussão em produção: 1. Filtro de Taxa: Previne usuários de inundar o robo de chat, enviando várias mensagens, levando a custos maiorados. 2. Domínios Permitidos: Previne o embed da cadeia em sites não autorizados. 3. Feedback Chat: Permite que os usuários forneçam feedback durante a conversa, o que pode ser valioso para melhora do robo de chat. 4. Gerente de Registros: Ajudará a manter os registros e evitar a duplicação quando atualizando fontes de dados. [Vídeo 14: https://www.youtube.com/watch?v=Sf0e9kD5NPE (Língua: en)] [Vídeo 15: https://www.youtube.com/watch?v=sNk6-ISi7i4 (Língua: en)] Título: Implementação do Gerenciador de Registros em Fluxos de Chat para Prevenção de Duplicatos em Bancos de Dados Vectores Subtítulo: Guide para Configuração e uso do Gerenciador de Registros com o Armazenamento de Vetores Pinecone ## Introdução Nesta demonstração, nos iremos focar na implementação do Gerenciador de Registros para prevenir duplicatos em bancos de dados de vetores, especificamente usando o Armazenamento de Vetores Pinecone. ### Pré-requisitos - Familiaridade com Flow-wise e suas componentes - Acesso a um Armazenamento de Vetores Pinecone ### Passos #### Preparação 1. Limpe os registros de vetor existentes no Armazenamento de Bancos de Dados Pinecone. 2. Guarde o documento inicial com a especialidade do sushi. 3. Exclua todos os registros no Armazenamento de Bancos de Dados Pinecone para começar com um armazenamento vectorial limpo. #### Implementando o Gerenciador de Registros 1. Adicione o nó do Gerenciador de Registros no canvas. (Adicione nós > Gerenciador de Registros) 2. Conecte o nó do Gerenciador de Registros com o nó do Armazenamento de Vetores Pinecone. 3. Conecte um Banco de Dados Postgres. (Você pode criar um Banco de Dados Postgres gratuito na Superbase. com) 4. No Flow-wise, configure as credenciais para o Gerenciador de Registros Postgres. Forneça um nome de usuário, senha, nome de hospedeiro, porta, nome de bases de dados, e nome da tabela. 5. No Superbase, crie um novo projeto, dê-lhe um nome, crie uma senha de banco de dados, selecione a região e crie o novo projeto. Copie os parâmetros de conexão do Superbase e cole-os no nó do Gerenciador de Registros no Flow-wise. #### Testando o Gerenciador de Registros 1. Carregue o documento inicial com a especialidade do sushi no Armazenamento de Vetores Pinecone. Verifique se o número de registros esperados foi adicionado. 2. Altere a especialidade no documento inicial para steaks e carregue o documento atualizado. Verifique se o número de registros processados foi processado, com um documento adicionado, um registro excluído e alguns desconsiderados. 3. Atualize o Armazenamento de Vetores Pinecone para verificar que apenas 29 registros existem, garantindo que não houve duplicados. 4. Teste o chat perguntando por as especialidades. A resposta deveria mencionar apenas a especialidade mais recente, ou seja, steaks. #### Conclusão Adicionando o Gerenciador de Registros ao fluxo de chat, podemos evitar eficientemente duplicados e manter o armazenamento vectorial limpo e atualizado para uma experiência de usuário mais precisa e consistente. # Método Incremental e Exemplo Final O método incremental registrará todos os alterações feitas. Por exemplo, se alterarmos o valor de `dog` para `dog2`, a alteração será registrada, mas nenhum registro será excluído. Se excluirmos `cat`, o registro `cat` permanecerá na loja de vetor e somente as alterações serão registradas. Vamos testar isso. Primeiro, atualizei estes dois documentos. Tudo bem. Agora, dois registros foram adicionados. Alterou `dog` para `dog2` duas vezes. E excludemos completamente o nó `cat`. Tudo salvo, vamos executar novamente o upset. E neste momento, podemos ver que um registro foi adicionado e um foi excluído. Se regressarmos a Pinecone e atualizarmos, podemos ver que a alteração de `dog` para `dog2` foi registrada, mas `cat` não foi excluído. Isso ocorre porque o método incremental apenas armazena mudanças novas e não deleta documentos de origem que não foram parte da execução atual. Agora, vamos ver o exemplo final: o método de limpeza total. Podemos usar o método de limpeza total para excluir todos os documentos que não são parte da execução atual. Para isso, faça isto: 1. Limpe a loja de vetor 2. Exclua os registros da base de dados Postgres 3. Voltando a `dog` 4. Voltando a adicionar o nosso nó de texto simples 5. Adicione o texto `cat`, e salve-o em Pinecone 6. Execute o upsell 7. Altere o texto de `dog` para `dog2` 8. Exclua o nó `cat`, processo semelhante ao que fizemos com o exemplo incremental 9. A ferramenta registrará a mudança para `dog`, mas porque não estamos passando mais o documento de origem `cat`, este documento deve ser excluído 10. Salve o upsell 11. Quando executarmos o upsell novamente, podemos ver que um registro foi adicionado (`dog2`), e dois documentos foram excluídos (o registro original `dog` e o registro `cat` relacionado ao documento de origem) 12. Atualizem Pinecone. Agora podemos ver que somos apenas com o registro `dog2` e o `cat` foi excluído. ## Porque este vídeo é relevante? Olhando constantemente por esses tipos de comentários: Por que estás a usar apenas a OpenAI nos tus tutoriais? A razão é bem simples. Por muito tempo, a OpenAI foi a única provedora que apoiava a utilização de ferramentas ou função chamada. Agora, mais e mais modelos estão a apoiar função chamada, de forma que, Flow-wise decidiu depreciar os seus agentes de ferramenta e função e implementar um agente de fermenta único que funciona com qualquer modelo que apoiar função chamada. ## Criando um Agente de Ferramenta utilizando o Modelo Claude 3 Para criar um agente de ferramenta utilizando os modelos Claude 3, precisará: 1. Chave da API Anthropic 2. Depois de se inscrever, deverá receber seus créditos gratuitos. Para gerar a chave da API: 1. Vá a Recursos API 2. Clique em Create Key 3. Dê ao teu key um nome, por exemplo `YouTube Tutorial` 4. Crie a key 5. Copie esta key, depois volta para Flow-wise 3. Vai para Credenciais, clique em Add Credencial, clique em Anthropic API, dê ao teu credential um nome, por exemplo `Tool Agent Key`, e cole a tua key. Agora vamos criar este fluxo: 1. Vá a Chats Flows, depois clique em Add Novo 2. Salve este e chame-lhe `Claude Tool Agent` 3. Adicione um Agente de Ferramenta no canvas 4. Adicione o Nó de CMS no canvas e junte a modelo de chats ao agente 5. Sob Credenciais, selecione o Agente de Credencial que já criaste 6. Sob Model Name, selecione `Opus`, o modelopoweroso 7. Adicione o nó de Memória de Buffer e conecte-o ao agente 8. Adicione três ferramentas ao agente (podes adicionar tan muitas ferramentas quanto quiser) 1. Calculadora 2. API SERP 3. Ferramenta personalizada (apenas para os programadores) 9. Teste o agente perguntando uma questão matemática, por exemplo "Qual é 500 vezes 10. 000? " 10. Para realizar a busca na internet, junte o nó SERP API e conecte-o às ferramentas 11. Para este nó funcionar, forneça credenciais clicando em Create New, dando-lhe um nome, e copiando a key da API SERP de SERPAPI. com 12. Adicione a capacidade do agente de responder questões repositório de conhecimento, junta uma ferramenta Retriever (Informação de Restaturant) e adiciona uma loja de vetor em memória 13. Configura todos os nó RAG e habilita return source documents para ver onde o modelo recuperou informação de. E tudo isto! Agora tens um agente de ferramenta utilizando os modelos Claude 3. Sinta-se à vontade para substituir a ferramenta por qualquer modelo que apoiar função chamada, como os que foram mencionados anteriormente. Aprenda com felicidade! ## Recursos Adicionais - [Anthropic API](https://www.anthropic.com/api/) - [SERPAPI](https://serpapi.com/) - [Tutoriais e documentação de flow-wise](https://www.flow-wise.com/docs) - [Treino de sequência L incremental](https://arxiv.org/abs/2102.02142) - [Opus](https://arxiv.org/abs/2305.11879) - [Grok](https://arxiv.org/abs/2111.14637) - [Gemini](https://arxiv.org/abs/2104.11660) - [Mistral](https://arxiv.org/abs/2112.12379) [Vídeo 16](https://www.youtube.com/watch?v=YuEw3NTMmT0) (Inglês) # Documentação: Interagir com Documentos Usando Flowwise e Embeddings AI do Voyage O objetivo deste tutorial é mostrar como utilizar o Flowwise para criar um agente que interage com documentos usando o Voyage AI para embeddings. Neste tutorial, você aprenderá a (1) adicionar o text splitter recursivo, (2) configurar o tamanho de bloco de 200 com uma sobreposição de 20, (3) configurar o Voyage AI embeddings function, (4) criar credenciais no Voyage AI, e (5) testar o agente com um exemplo simples. Tabela de conteúdos ------------------- 1. **Instalação do Voyage AI Embeddings Function** - Adicionar o text splitter recursivo e as dependências necessárias - Configurar o tamanho de bloco (chunk size) para 200 e a sobreposição (overlap) para 20 2. **Configurar o Voyage AI** - Criar credenciais no Voyage AI - Configurar o Voyage AI embeddings function no agente 3. **Testando o agente com um exemplo simples** - Carregar um documento FAQ sobre especialidades de comida - Verificar a resposta do agente à pergunta "Quais são as especialidades? " ## 1. Instalação do Voyage AI Embeddings Function Para iniciar, você primeiramente precisará instalar o text splitter recursivo e as dependências necessárias para o Voyage AI. ```bash # Instalar as dependências necessárias pip install git+https://github.com/sberrw/doc_parser.git pip install --upgrade flow wise ``` Em seguida, configure a API do Voyage AI. ```bash # Configurar o tamanho de bloco e a sobreposição flow set-project-default document_loader "doc_parser. embeddings. VoyageAI" --options chunk_size=200 --options overlap=20 ``` ## 2. Configurar o Voyage AI Para criar as credenciais no Voyage AI, acesse o [site oficial](https://voyageai.com) e siga as instruções para criar uma API key. Após criar a API key, use o código abaixo para configurar o Voyage AI no agente em tempo de execução. ```bash # Instanciar o agente agent = flow. Agent() # Configurar o Voyage AI embeddings function e credenciais agent. set_functions({"voyage_ai_embeddings": ["doc_parser. embeddings. VoyageAI", "--api_key=<SEU_TOKEN_DA_API>"]}) ``` Agora, você pode começar a utilizar o Voyage AI em seu agente Flowwise. ## 3. Testando o agente com um exemplo simples Utilizando esses passos, você agora pode criar um projeto e testar com seu agente Flowwise carregando um documento FAQ sobre especialidades de comida. Pergunte à sua variável agente "Quais são as especialidades? " e compare a resposta com a do documento FAQ original. Pode-se verificar que Flowwise e AI do Voyage facilitam as conversas de documentos nas suas aplicações. Você pode aplicar este framework em muitas outras aplicações que envolvam análise de documentos e processamento de linguagem natural. # Explicação de Trabalhadores e Seus Papéis Neste documento, explicaremos os papéis de cada trabalhador num sistema. Começaremos por adicionar o nosso primeiro trabalhador e duplicá-lo para adicionar um supervisor. ## Pesquisador Líder O Pesquisador Líder é responsável pelas seguintes tarefas: 1. Entrar online e construir um relatório detalhado de uma determinada liderança. 2. Coletar informações sobre a experiência profissional, a participação em projectos e as empresas. O Pesquisador Líder precisa de acesso a uma ferramenta de pesquisa Google para poder realizar pesquisa atualizada. ### Comando para Pesquisador Líder Para o Pesquisador Líder, é uma descrição de papel simples: > Como Pesquisador Líder, utilize todos os recursos disponíveis para construir um relatório detalhado para uma pessoa de liderança numa empresa-alvo. ### Utilização de Exemplo Podemos dar ao nosso primeiro trabalhador o nome "Pesquisador Líder" e guardar o comando. Para a empresa-alvo e a pessoa que queremos pesquisar, queremos "Cadeia de Linguagem" e "Harrison Chase", respectivamente. ## Representante de Vendas Líder O Representante de Vendas Líder é responsável pela criação de mensagens personalizadas baseadas nos resultados da pesquisa realizada por um determinado pesquisador. ### Comando para Representante de Vendas Líder Para o Representante de Vendas Líder, é uma descrição de papel simples: > Como Representante de Vendas Líder, crie mensagens personalizadas para a pessoa alvo. ### Utilização de Exemplo Podes guardar o comando para o Representante de Vendas Líder de forma semelhante à do Pesquisador Líder. ## Adição de Ferramentas aos Trabalhadores Para melhorar os resultados do Pesquisador Líder, precisamos adicionar uma ferramenta de pesquisa customizada Google à sua arsenal. 1. Entrar no "Adicionar Nós" e seleccionar "Ferramentas" para atribuir ferramentas a qualquer trabalhador. 2. Escolher a "Ferramenta de Pesquisa Customizada Google" e atá-la ao trabalhador do Pesquisador Líder. 3. Fornecer as credenciais necessárias para a ferramenta de pesquisa customizada Google. ## Execução do Fluxo Fazemos o fluxo e vemos o Pesquisador Líder utilizando a ferramenta de pesquisa customizada Google para realizar a sua pesquisa. ``` go ``` O supervisor passará o comando para o Pesquisador Líder, e depois de o pesquisador terminar, pedirá ao Representante de Vendas Líder para redigir mensagens personalizadas. ## Atualização do Wise Flow Para manter a sua instalação Flow Wise atualizada, siga estes passos: 1. Para uma instalação global, abra a janela de comandos ou o terminal e introduza: ``` npm update -g flowwise ``` Para uma instalação local, navegue para o diretório e executa: ``` npm update flowwise ``` ou (se usares pnpm) executa: ``` pnpm update flowwise ``` Para uma instalação em desenvolvimento, abra o diretório Flow Wise, abra o terminal e introduza: ``` git pull origin main pnpm install pnpm build ``` # Flow Wise: Construindo Equipes de Inteligência Artificial Multi-Agente O Flow Wise facilita a criação de equipes de inteligência artificial multi-agente que podem executar tarefas em seu nome. No entanto, escrever prompts para os trabalhadores pode ser desafiador se você não for engenheiro de prompts. Felizmente, o Flow Wise tem uma solução para isso. ## Vídeo 19: Despachando o Flow Wise e Criando uma Equipe de Engenharia de Prompts Neste vídeo, você aprenderá a implantar o Flow Wise e criar uma equipe de engenharia de prompts. Esta equipe ajudará você a gerar prompts para seus agentes AI. [Vídeo 19: Despachando o Flow Wise](https://www.youtube.com/watch?v=pkqoan_sJzA) (Inglês) ### Criando uma Equipe de Engenharia de Prompts 1. Vá para o mercado e pesquise o modelo de equipe de engenharia de prompts. 2. Clique em "Usar Modelo" e salve o fluxo de agente. 3. Abra o chat e descreva a equipe que você deseja criar especificando o número de agentes e seus papéis. Você também pode fornecer ferramentas que os agentes terão acesso. 4. Agora você terá os nomes e os prompts detalhados para cada um de seus trabalhadores, que você pode copiar para seu próprio fluxo de agente. ## Vídeo 20: Adicionando Ferramentas Personalizadas e Armazenamentos de Vetores Neste vídeo, você aprenderá a adicionar ferramentas personalizadas e armazenamentos de vetores às suas equipes de multi-agentes no Flowise. [Vídeo 20: Adicionando Ferramentas Personalizadas e Armazenamentos de Vetores](https://www.youtube.com/watch?v=MaqcO15y-Vs) (Inglês) ### Construindo uma Equipe de Pesquisa 1. Neste exemplo, temos uma equipe de pesquisa que consiste em um supervisor, um especialista em pesquisa, um redator de email e um enviador de email. 2. O supervisor coordena o trabalho entre os diferentes trabalhadores. 3. O especialista em pesquisa pega a pergunta do usuário e usa uma ferramenta de recuperação para realizar pesquisas em um arquivo PDF. 4. Os resultados do especialista em pesquisa são enviados para o redator de email, que escreve um email, e um rascunho de email é então passado para o enviador de email. 5. O enviador de email usa uma ferramenta personalizada para enviar o email. ### Testando a Equipe de Pesquisa 1. Para testar a equipe de pesquisa, abra o chat e pergunte uma questão como, "Qual foi a receita da Tesla em 2023 e como ela se compara ao ano anterior? " 2. O supervisor enviará a pergunta para o especialista em pesquisa, que usará o armazenamento de vetores para buscar algumas informações e produzir um relatório. 3. Os resultados da pesquisa do especialista em pesquisa serão então enviados para o redator de email, que escreverá o código HTML para estilizar o email. 4. Finalmente, o rascunho do email será enviado para o enviador de email, que usará a ferramenta personalizada para enviar o email real. ### Criando um Novo Fluxo de Agente 1. Para criar um novo fluxo de agente, navegue no menu de fluxos de agente e clique em "Adicionar Novo. " 2. Clique em "Salvar" para dar # Automatização de Tarefas Diárias com Equipes de Agentes Inteligentes Este tutorial mostra como automatizar tarefas rotineiras usando equipes de agentes inteligentes. A inspiração para este tutorial veio de um vídeo do Code with Brandon, onde ele usou CrewAI para criar uma equipe de pesquisa de vídeos do YouTube. Em vez de escrever código extensivo, vamos utilizar uma plataforma sem código de maneira gratuita chamada Flowwise para conseguir resultados semelhantes. Se você for novo no Flowwise, poderá simplesmente adicionar nós em um canvas para criar aplicações inteligentes avançadas. Configurar o Flowwise localmente ou no cloud é fácil, então veja estes videos sobre como começar. ## Pré-requisitos Antes de entrar nos detalhes da nossa equipe de agentes, vamos tomar um breve olhar sobre o que cada componente da equipe irá alcançar: 1. **Especialista em Pesquisa**: Responsável por encontrar vídeos altamente performantes com base em palavras-chave. 2. **Criador de Conteúdo de Email**: Gera descrições e títulos de vídeo para os vídeos pesquisados. 3. **Remetente de Email**: Envia notificações de email com detalhes do vídeo. ## Problemas e Soluções Enquanto estivermos trabalhando com esses fluxos, poderemos encontrar alguns problemas: 1. **Conversação do Agente Encerrada Anteriormente**: A conversa entre os agentes pode acabar prematuramente. Para resolver isso, adicione instruções para trabalhadores de agente para passar informações para o trabalhador seguinte. Em caso de falha, altere o prompt do supervisor para instrúi-lo a passar informações entre nós. ## Criando a Equipe de Agentes com Flowwise ### Preparando o Canvas Agora, vamos preparar o canvas para nossa equipe de agente: 1. Adicionar nós de ferramenta personalizados ao canvas. 2. Clique em **Add Nodes**, então abra **Ferramentas** e adicione o nó de ferramenta personalizado ao canvas. Os nós de ferramenta personalizados são poderosos, pois permitem a escrita de código JavaScript para executar almostQualquer lógica desejada, como enviando emails. 3. Conecte os nós necessários após uma linha do saída de um nó para a entrada de outro nó. ### Criando a Ferramenta para Enviar Emails Agora, vamos criar uma ferramenta para habilitar nossos agentes a enviar emails: 1. Adicione um nó de ferramenta personalizado ao canvas, anexado ao nó Remetente de Email. 2. Escolha `create new` da lista suspensa e nomeie a ferramenta `send_email`. 3. Preencha as informações a seguir: - Descrição da Ferramenta: use esta ferramenta para enviar emails - Esquema de Entrada: - `mensagem`: String, Corpo do email 4. Coleba código de snippet do vídeo de descrição e substitua as variáveis necessárias. 5. Crie a lógica de envio de email em make. com seguindo as etapas a seguir. ### Enviar Email com make. com 1. Faça login em make. com através do link de referência fornecido no vídeo de descrição. 2. Crie uma nova cenário, nomeie-a `Email Sender Tool`. 3. Adicione uma nova aplicação, busque **webhooks** e adicione o **Custom Webhook** no canvas. 4. Nomeie o custom webhook de algo como `Flow-wise email sender`, e clique em **Salvar**. Essa ação vai gerar um endpoint de URL que Flowwise pode chamar. 5. Copie a URL e cole em um lugar específico do nó personalizado no Flowwise. 6. Adicione uma nova ação à cenário, procure Gmail e clique em **Enviar um email**. ### Configurando o Gmail 1. Configure uma ligação ao Gmail, que envolve criar um projeto no Google Cloud Platform, ativar o API do Gmail, criar credenciais e definir a URI de redirecionamento no Google Cloud Platform. 2. Para saber mais sobre como configurar a ligação, segue estas etapas detalhadas na descrição do vídeo. ### Execução do Fluxo 1. Clique em **Add**, escolha a ferramenta `send_email`, e salve o fluxo. 2. Limpe o chat e execute o fluxo novamente. 3. Se tudo estiver correto, o agentesnter de email deve usar a `send_email` ferramenta para enviar o email, e a estrutura deve ser corretamente determinada. Seguindo estas etapas, será capaz de criar uma ferramenta de envio de email utilizando nós personalizados, JavaScript e make. com. Diverta-se automatizando suas tarefas diárias com equipes de agentes inteligentes! Para mais informações sobre flutuantes de agente e uso do Flowwise, confira nosso outro vídeo: [Fluxo de Agente no Flowwise - Básico e Duas Cenários](https://www.youtube.com/watch?v=eAH7LDGMVEs) (Linguagem: Inglês) # Tutorial de Pesquisa em YouTube: Criando uma Equipe de Agente Inteligente Neste tutorial, vamos abordar a criação de uma equipe de agente inteligente a partir do zero. A estrutura da equipe consiste em cinco diferentes trabalhadores, cada um com responsabilidades específicas. Aqui está uma resumo da equipe: 1. **Supervisor: ** Responsável por delegar tarefas entre os trabalhadores. 2. **Especialista em Pesquisa: ** Pesquisará vídeos no YouTube e recolherá informações relevantes. 3. **Criador de Títulos: ** Gereará 10 títulos de clique aberto para a ideia do vídeo. 4. **Criador de Descrição: ** Tomará os resultados do pesquisador e gerará uma descrição do vídeo. 5. **Criador de Post do Twitter (ou Criador de Expo): ** Gerará um expo para promover o vídeo. 6. **Rescritor: ** Consolidará todos os resultados dos trabalhadores anteriores, criará um relatório e escreverá os resultados em um ficheiro. Entra-se no nosso modo de operação prático: 1. Começando por inserir uma lista de palavras-chave no chat. Por exemplo, vamos criar um vídeo sobre "automatiza a vida com agentes de inteligência artificial. " O supervisor então delega as tarefas para a equipe de forma seguinte: - O especialista em pesquisa pode pesquisar vídeos relacionados com as palavras-chave fornecidas, recolhendo informações adicionais como o número de subscritores, a contagem de visualizações, os nomes dos canais, etc. - O criador de títulos gera 10 ideias de títulos unicas para o vídeo. - O criador de descrição cria uma descrição do vídeo. - O criador de post do Twitter (ou Criador de Expo) gera um post de rede social ou um expo para promover o vídeo. - O rescritor consolidará todos os resultados dos agentes, criará um relatório, e escreverá os resultados em um ficheiro no sistema de ficheiros. Agora, vamos aprender a criar esta equipe a partir do zero: 1. Aceda ao painel de painel de dashboard, vá para "Agentes de Fluxo, " e crie um fluxo novo. Guarde-o e o nomeie "Tutorial de Pesquisa de YouTube. " 2. No fluxo, terá necessidade de um nó supervisor, além de nós trabalhadores. Comecemos adicionando o nó supervisor. 3. Sob Multi-Agents, adicione o nó do Supervisor. Pode modificar o comando do supervisor de sistema como desejar, mas mantenha em momento presente no valor padrão. 4. Adicione o modelo de chat OpenAI do Atlas ao supervisor ao clicar em "Adicionar Nós, " e naveguar até "Modelos de Chat. " Use o modelo de chat OpenAI, e certifique-se de selecionar as suas credenciais e salvar. 5. Agora vamos criar o primeiro trabalhador, que gera títulos de vídeo baseados nas nossas palavras-chave. Chamaremos-o "Criador de Títulos. " 6. Atribua o supervisor ao criador de títulos, e defina o nome e o comando do trabalhador como desejar. Guarde-o e teste-o usando palavras-chave como "automate tasks using AI agent teams. " 7. Continue a criar novos trabalhadores para descrições de vídeo, post do Twitter, e o rescritor, também conforme explicado anteriormente, atribuindo o supervisor a cada trabalhador de forma adequada. 8. Finalmente, vamos criar o trabalhador de especialista em pesquisa. Este é o trabalhador mais avançado da nossa equipe, com acesso a ferramentas personalizadas para pesquisar no YouTube e exitar detalhes de vídeo e canais do YouTube. Crie as ferramentas personalizadas usando a função "Adicionar Nós" e o nó de ferramenta personalizada. Forneça as propriedades necessárias e o código JavaScript para chamar a API para a pesquisa de vídeo, detalhes de vídeo e detalhes do canal. De seguida, criou-se uma equipe de inteligência artificial para pesquisar e criar um vídeo de tutoriais no YouTube sobre automatizar a vida usando agentes de inteligência artificial! # Fluxo de Pesquisa no YouTube utilizando FlowWise ## Introdução Neste guia, criaremos uma ferramenta personalizada no FlowWise para recuperar detalhes de um canal do YouTube, como o número de inscritos. Este tutorial assume que você tenha conhecimentos básicos sobre FlowWise e sobre a criação de APIs. ## Criação da ferramenta de Detalhes do Canal do YouTube 1. Clique em `Adicionar Nós` e em seguida adicione o `Nó Ativo Customizado`. 2. Na lista de opções de criação de novo nó, renomeie-o `Detalhes do Canal do YouTube`. 3. Preencha a descrição com "Utilize esta ferramenta para recuperar detalhes de um canal específico do YouTube, como o número de inscritos. " 4. Adicione uma nova propriedade e o nomeie `ID do Canal`. Defina seu tipo como `string` e a descrição como "O ID do canal. " 5. Marque a propriedade `ID do Canal` como obrigatória. 6. Cole o código da API do YouTube nos caixas de código. Esta API recuperará detalhes do canal com base no ID fornecido. 7. Salve a ferramenta e clique em `Adicionar` para criá-la. ## Atribuindo Ferramentas ao Especialista em Pesquisas 1. Anexe a nova ferramenta `Detalhes do Canal do YouTube` à entrada do nó de outra ferramenta que deseja atribuí-la. 2. Repita o processo para atribuir a ferramenta a outros nós necessários. ## Centralizando Chaves de API 1. Clique no menu `Variável` e em seguida, `Adicionar Variável`. 2. Nomeie a variável `Chave API YouTube`, defina o tipo como `estático` e cole a chave API. 3. Salve a variável. 4. Atualize todas as ferramentas que referenciam a chave API substituindo a chave estática pelo identificador global. Utilize o seguinte modelo: `$vars. chave API YouTube` ## Utilizando a Chave API Centralizada 1. Substitua a chave API no `Nó Ativo de Pesquisa no YouTube` pela referência da variável. Use o seguinte modelo: `$vars. chave API YouTube` 2. Salve a ferramenta e faça o mesmo para as outras ferramentas. ## Escrita de Relatório no Sistema de Arquivos Crie um trabalhador responsável pela escrita de um relatório no sistema de arquivos: 1. Adicione um novo trabalhador na tela e o nomeie `Escritor de Relatório`. 2. Coloque a instrução da entrada do trabalhador para escrever um relatório no formato HTML, incluindo os dados de pesquisa, títulos, descrições e Tweet. 3. Adicione o `Nó de Escrita de Arquivo` na tela e atribua-o ao `Escritor de Relatório`. 4. Especifique o caminho do arquivo para o `Nó de Escrita de Arquivo`. A escrita de arquivos será realizada no `output` pasta dentro de seu diretório `flow-wise`. 5. Salve o fluxo e clique em `Executar` para testá-lo. ## Ajustando a Prompts do Supervisor Adicione informações ao prompt do supervisor para que ele possa impor o comportamento esperado dos agentes: 1. Abaixo do prompt padrão, adicione alguma informação para que o supervisor solicite que os agentes sejam executados na ordem apropriada: ``` Coupe a especialista de pesquisa passando-lhe as palavras-chave de vídeo. A visitede os resultados da pesquisa juntamente com as palavras-chave de vídeo para que os outros membros da equipe possam executar suas tarefas. Finalmente, uma vez que tenham os resultados da criadora de título, a criadora de descrição e a criadora de tweet, passe-os ao escritor de relatório. ``` ## Teste do Fluxo 1. Execute o fluxo novamente para verificar a nova comportamento do supervisor. 2. Verifique os resultados e certifique-se que a especialista de pesquisa executa as tarefas exigidas. ## Referências - [Vídeo 22](https://www.youtube.com/watch?v=Riln5Mn2UDE) (Idioma: Inglês) # Informação de Restaurante Recuperação com Agentes Sequenciais no Flowise 2. 0 Este tutorial o guiará a criar uma aplicação de agentes multi-fita utilizando agentes sequenciais no Flowise 2. 0. Com agentes sequenciais, você tem total controle sobre as suas aplicações multi-agente, permitindo que você execute agentes condicionalmente, em paralelo e até mesmo incorporate interação humana. Se você é novato no Flowise, isso é uma ótima oportunidade para explorar seus recursos. ## Pré-requisitos - Instale o Node. js (<https://nodejs.org/pt-PT/download/>) - Atualize sua instância do Flowise para a versão 2. 0 ou superior ```bash npx flowise start ``` ## Passos 1. **Início de Nó: ** > Representa o começo de nossa fila sequencial. Ele toma como entrada um modelo de conversa, além da memória, estado e moderação de entrada. 2. **Modelo de Conversa: ** > Adicione um nó de modelo de conversa no seu canvas, como o "modelo de conversa grok" ou "cha co-ai" nó por exemplo para este demo. Para este guia, será usado o nó "cha co-ai". Inserção de suas credenciais OpenAI e o nome do modelo. 3. **Nó de Agente: ** > Adicione um nó de agente e conecte-o ao nó de modelo de conversa. configure o agente com um nome, prompt de sistema e funcionalidade opcional de agente, ferramenta e funcionalidade um-h-t-l. 4. **Fim do Nó: ** > Adicione um nó de fim para marcar o fim da fila. Conecte o agente ao nó de fim. 5. **Nó de Memória do Agente: ** > Adicione um nó de memória de agente para armazenar a história da conversa em um banco de dados SQLite. Anexe o nó de memória do agente ao nó de memória de entrada no nó de início. 6. **Nó do Estado: ** > Use a estrutura de estado para armazenar seus próprios valores, que serão compartilhados entre todos os agentes no estado. Insira seus próprios valores, como um nome, que podem ser recuperados pelos agentes da estrutura de estado. ``` # Exemplo de configuração do estado state: name: "Leon" ``` ## Demo Suponha que temos a seguinte fila: 1. **Usuário** perguntando: "Quais são as suas horários de funcionamento? " 2. **Agente** utiliza as informações apropriadas extraídas do documento do restaurante para fornecer os horários de funcionamento. 3. **Usuário** perguntando: "Quais são as suas promoções atuais ? " 4. **Agente** recupera as promoções do documento. ## Recursos de Vídeo - [Flowise 2. 0 - Agentes Sequenciais](https://www.youtube.com/watch?v=6LbvgTbS0BE) (Inglês) Por final de termos este tutorial, você terá uma solta compreensão de usar agentes sequenciais no Flowise 2. 0 para construir aplicações multi-agente poderosas. Feliz códiga! # Documentação de Fluxo Esta documentação oferece uma visão geral de um fluxo projetado para coletar o nome do usuário e fornecer assistência condicionalmente com base na disponibilidade do nome no estado. ## Recolha do nome do usuário O objetivo deste fluxo é coletar o nome do usuário e fornecer assistência condicionalmente de acordo com a disponibilidade do nome no estado. ### Pré-requisitos - O usuário deve se envolver no fluxo com uma ligação a um assistente de voz ou outra interface de entrada. - A definição e a configuração adecuadas dos agents utilizados no fluxo. ### Descrição do fluxo 1. O fluxo começa com a verificação do estado do usuário, se o nome estiver presente, continua no assistente principal; caso contrário, chama o Agente de Colecta de Informações. 2. O Agente de Colecta de Informações, equipado com uma descrição apropriada, solicita o nome ao usuário e armazena o nome no estado. 3. Depois de armazenar o nome no estado, o fluxo é encaminhado novamente para o assistente principal. 4. O assistente principal fornece assistência de acordo com o nome do usuário armazenado no estado. ## Adição de uma condição para executar os Agentes Para adicionar uma condição ao fluxo para a execução condicional de agents, podemos utilizar o Nó Condicional. 1. Adicionar um Nó Condicional à lista de nós do fluxo. 2. Adicionar conexões de entrada e saída deste novo nó com os respectivos nós de entrada e saída. ## Nó Condicional O Nó Condicional permite a execução condicional de um ou mais agents em um fluxo. ### Parâmetros adicionais - Prompt de Sistema: Descreve o papel do nó condicional no fluxo, por exemplo: "Se o nome do usuário estiver disponível, renderizar a assistência; caso contrário, coletar o nome do usuário. " - Prompt Humano: Descrição que o usuário verá na tela, por exemplo: "O nome informado pelo usuário está disponível. Agora podemos começar a fornecer assistência personalizada para você. " Nós condicionais também podem ser utilizados para ajudar a identificar a intenção do usuário e garantir que eles sejam encaminhados para o agente correto. ## Implementação de Humans In The Loop Para habilitar a opção Humans In The Loop, ative a instância do agente para que este solicite avaliação do usuário antes de executar um determinado comando, por exemplo, utilizando o calculador. 1. Adicionar um Nó de Ferramenta ao fluxo. 2. Selecionar o calculador como ferramenta. 3. Adicionar conexão do agente ao Nó de Ferramenta. 4. Ativar a opção "Require Approval" no agente. Para personalizar o comportamento da opção Humans In The Loop, basta acessar os parâmetros adicionais no agente e: - Definir uma prompt de aprovação para o usuário. - Definir as descrições dos botões de aprovação e negação. ## Condições Adicionais Os Agentes Condicionais também são extremamente úteis para ajudar a identificar a intenção do usuário e encaminhá-lo para o agente correto, como por exemplo, em um hotel. 1. Adicionar um Agente Condicional ao fluxo. 2. Adicionar conexões de entrada e saída deste novo nó com os respectivos nós de entrada e saída. Os agents condicionais possuem parâmetros adicionais que facilitam a execução condicional de agents. - Prompt de Sistema: Descreve o papel do agente condicional no fluxo, por exemplo: "Rotular o usuário como sendo da recepção, manutenção ou restaurante. " - Prompt Humano: Descrição que o usuário verá na tela, garantindo uma interação mais fácil e natural. Para definir os vários caminhos em um agente condicional, basta adicionar novas saidas oportunamente e definir, respectivamente, as condições necessárias para cada uma delas. # Assistant de Restaurante e Hotel Este modelo foi desenvolvido para ajudar a determinar diferentes rotas com base na consulta do utilizador. Aqui descrevemos as condições para responder seja ao receptivo ou ao restaurante. 1. **Rotas** - Se a consulta do utilizador estiver relacionada com o horário de saída, senha de wi-fi ou informações sobre o hotel, responda com `receptivo`. - Se a consulta estiver relacionada com o serviço de quarto, menu de alimentação ou o restaurante, responda com `restaurante`. - Responda com palavras específicas no formato de saída JSON estruturado. 2. **Nova Rota - Enum** - Adicione uma nova rota denominada `Enum` com valores disponíveis: `receptivo`, `manutenção` e `restaurante`. 3. **Regras** - Defina regras para cada rota. Por exemplo, para a rota `receptivo`: - Referir-se a `flow. output. rota` - Se o resultado incluir `receptivo`, ativar a regra `receptivo`. - Repita o processo para as rota `manutenção` e `restaurante`. 4. **Condição Final** - Se o modelo não puder determinar nenhum das rotas, termine o fluxo. 5. **Agentes Sequenciais** - Atribua as condições aos seus respectivos agentes. - Se o modelo não puder determinar nenhum das rotas, termine o fluxo com um nó de fim. ## Teste do Fluxo - Guarde o fluxo. - Teste com consultas de exemplo: 1. "Qual é a senha de wi-fi? " (Ativa `receptivo`) 2. "Minha toalha de ducha está a bruscar. " (Ativa `manutenção`) 3. "Por favor, consentane-me um hambúrguer no quarto. " (Ativa `restaurante`) ## Laços e Demonstração do Projeto - Aprenda a usar laços para criar um projeto que produza e avaliar ensaios de escrita. - Adicione um nó `loop` ao projeto e especifique o nó `allyl m` ou agente a loop back para. - Adicione um nó de condição para determinar quando o laço deve parar, como quando o número de iterações ultrapassa um número determinado. ## Agentes Multi-Agente vs. Sequenciais - Flowise oferece duas soluções para a construção de trabalhos de fluxo de agente complexos: Multi-agentes e Sequenciais-agentes. - Comparar estas duas soluções criando o mesmo projeto em ambos. - Aprenda a criar uma Equipe de Multi-agente e um agente sequencial usando Flowise. No momento, WordPress não parece suportar a formatação Markdown, portanto, não foi possível manter a formatação no texto produzido. Foi realizada apenas a tradução e correção gramatical da frase. # Guia para Agentes Sequenciais Este guia vai te conduzir através da criação de uma aplicação de agente sequencial usando Flowwise. Vamos tentar reproduzir o exemplo fornecido e melhorar o mesmo adicionando vários trabalhadores, bucles iterativos e uma resumo final da conversação. ## Visão Geral Ótimo! Esta configuração foi bastante simples e podemos facilmente adicionar mais trabalhadores a esta aplicação sem alterar nada do resto. No entanto, temos poucos controle sobre a nossa aplicação e dependemos do supervisor para a tomada de decisões. ## Equipe de Software de Agentes Sequenciais Para entender como funcionam os agentes sequenciais, vamos tentar reproduzir o nosso exemplo usando apenas as opções disponíveis para os agentes sequenciais. ### Criação de um Novo Fluxo Começemos criando um novo fluxo e chamando-o de **Equipe de Software de Agentes Sequenciais**. ### Adição de Nós 1. **Nó Inicial: ** Representa o início do nosso projeto. Encontrá-lo-ás sob `Agentes Sequenciais`. 2. **Modelo de Chat (LLM): ** Adicione um modelo de chat ao nó inicial. Escolha o nome do modelo como `GPT40` e defina a temperatura para um valor como 0. 2. 3. **Estado: ** Adicione um nó de estado sequencial attacho e anexe-o ao nó inicial. Discutiremos a importância deste nó mais tarde neste guia. 4. **Supervisor: ** Depois do nó de estado, adicione um nó `allyl m` que irá determinar qual nó chamar a seguir. ### Configuração do Supervisor 1. Conecte o nó inicial ao nó allyl m, e caso esteja aqui, configure o supervisor para determinar qual nó chamar a seguir e definir uma variável em estado. ### Prompt Sistema - Mencione os papéis dos agentes ou trabalhadores dentro do fluxo. - Forneça instruções para cada trabalhador, como suas tarefas e como devem respondê-lo. - Instrua os agentes a passarem os seus resultados e estados quando terminarem. ### Extração de Resultados Para extrair o resultado desejado, adicione um item enum no saída estruturada com valores possíveis para cada trabalhador e a palavra `finish`. Neste caso, nossos valores serão `desenvolvedor de software`, `revisor de código` e `finish`. ### Nó de Condição Agora que temos os resultados do nó LLM, let's usá-los com condições para chamar o agente correto. 1. Adicione um nó de condição e o anexe ao nó LLM. 2. Defina as condições baseadas no output do nó para chamar o agente desenvolvedor de software ou o agente de revisão de código. 3. Adicione um estado final para escenários onde o nó LLM retorna o valor `finish` ou qualquer outro valor não reconhecido. ### Agentes de Trabalhadores 1. **Agente de Desenvolvedor de Software: ** Defina o nome do agente como `desenvolvedor de software`, e defina o prompt do sistema para construir uma aplicação baseada nas requisitos do utilizador usando tecnologias específicas. 2. **Agente de Revisor de Código: ** Defina o nome do agente como `revisor de código`, e defina o prompt do sistema para revisar código do desenvolvedor de software, garantindo as boas práticas de programação e fornecendo feedback quando estiver terminado. ### Bucles e Estados Finais Cada agente necessita de um estado final - um nó de fim ou um laço. Para este exemplo, vamos usar looping. 1. Adicione um laço de tendency de tempo sob `Agentes Sequenciais`, anexe o laço ao agente e configure o loop para voltar ao supervisor. 2. Repita este passo para cada agente worker. ### Resumo Final Garantindo uma resumo final da conversação, adicione um nó LLM e coloque-o no estado final. Defina o prompt humano para gerar uma resposta resumida final baseada nos diálogos anteriores, razões e instruções. ### Testando a Aplicação Finalmente, teste a aplicação executando-a no chat e observando as respostas dos agentes desenvolvedor de software e revisor de código. Itere sobre o prompt de sistema e configuração conforme necessário para obter resultados otimais. Esperamos que este guia ajude a compreender o funcionamento de agentes sequenciais e forneça um ponto de partida para os seus projetos usando Flowwise. Se você precisar mergulhar mais a fundo no uso de agentes sequenciais, verifique este curso de pancadear: https://www.youtube.com/watch?v=SL77Ojbgy6U (Idioma: Inglês). 🇪🇸 Here's the corrected and formatted Markdown text based on your instructions in Portuguese: ```markdown # Aplicação RAG de auto-perfeitização Construindo esta aplicação utilizando agentes sequenciais dentro do Flowwise. ## Demo Simples Ao exemplo do restaurante Oak & Barrel. - *Oak & Barrel* é um restaurante fictício que vende bife e sushi. ### Pergunta e Resposta Caso um usuário pergunte, "Quais são as especialidades atuais? ", o assistente será capaz de responder. A ferramenta de recuperação irá atingir o *conhecimento específico* para obter informações sobre as especialidades atuais. - Um `agente condicional` verifica se os documentos recuperados estão relacionados à pergunta do usuário. - Se os documentos forem relevantes, o processo gerará uma resposta. ### Pergunta Desligada Caso questionemos algo desligado do restaurante, como "Vendes bitcoins? ", a história da conversa mostrará: - O agente de recuperação não encontrou nenhuma informação relacionada a bitcoins. - O agente condicional determinou que os documentos não estão relacionados à pergunta do usuário e chama o agente de reescrita. - O agente de reescrita reformula a pergunta em um esperito de obter uma saída diferente. ### Aplicação RAG Gigante Para construir a aplicação: 1. Acesse a página de painel do Flow-wise. 2. Navegue até `Agente Flows`. - Se você não vê `Agente Flows`, atualize sua instância do Flow-wise para a versão mais recente. 3. Utilize seu serviço de nuvem totalmente gerenciado para uma configuração mais fácil. (Link na descrição. ) ## Construindo o Agente Flow 1. Crie um novo Agente Flow: - Clique no `Adicionar Novo`. - Salve o projeto. - Nomeie-o “Aplicação de RAG auto-perfeitizão”. 2. Adicione um nó de início e modelo do chat. 3. Adicione um nó de agente, por exemplo, `Suporte ao cliente`. - Defina a mensagem de sistema: ``` Você é um agente de suporte do restaurante Oak and Barrel, que sempre fornece a informação mais relevante para a pergunta do usuário utilizando as ferramentas à sua disposição. Você tem esta ferramenta de informação do restaurante disponível. ``` 4. Adicione uma ferramenta de recuperação para se conectar ao agente. 5. Conexão do armazenamento do vetor: - Adicione um armazenamento de vetores em memória. - Conecte o nó de entrada de embelezamento, por exemplo, `Embelezamento da OpenAI`. - Adicione o armazenamento de documentos e conecte-o ao armazenamento de vetores. - Prepare o conhecimento específico (armazenamento de documentos) com exemplo ao carregar seu carregador de arquivos . docx. 6. Adicione o nó destino e conecte-o ao agente. 7. Adicione um agente condicional, por exemplo, `confira se os documentos são relevantes`: - Defina a mensagem de sistema: ``` Você é um grader avaliando a relevância de um documento recuperado em relação à pergunta do usuário. Aqui está o contexto recuperado. Aqui está a pergunta do usuário. Se o documento contiver palavras-chave ou significado semântico relacionados à pergunta do usuário, repare-o como relacionado. Emite uma nota binária de "sim" ou "não" para indicar se o documento é relacionado à pergunta. ``` - Defina saída estruturada para armazenar a resposta, por exemplo, "score": "sim" ou "não". - Condicionalmente chame caminhos de geração ou de reescrita com base no valor da saída da nota. ``` Espero que esta versão corrigida e formatada seja útil! Em caso de dúvida, entre em contato comigo novamente. # Restaurant Chatbot com Agentes Condicionais com Flow ## Introdução Nesta documentação, detalharemos o processo de criação de um chatbot de restaurante usando o Flow, uma plataforma de desenvolvimento de AI sem código. Este chatbot será integrado no WhatsApp para acesso suave e permitirá a criação de agentes condicionais, usando ambos os nós de agente e nós de ferramentas. ## Prerequisites 1. Familaridade com a plataforma Flow 2. Integração do API Business do WhatsApp ([guia](https://www.flow.ai/video/26-chatbot-sem-codigo-com-flowwise-no-whatsapp)) 3. Conta de nuvem [Flowwise](https://flow.ai/) (serviço pago, [trial gratuito disponível](https://flow.ai/pricing)) ## Passos ### Criar um fluxo de chat 1. Acessar a nuvem Flowwise e criar um novo fluxo de chat, e dar-lhe um nome, por exemplo, `chatbot do WhatsApp`. ### Adicionar agentes 2. Adicionar um novo elemento de nota à tela e criar um agente. 3. Selecionar `Agente de Ferramentas` para o nosso cenário. ### Adicionar models de inteligência artificial 4. Adicionar um modelo de inteligência artificial a este projecto, clicando em `Adicionar Notas > Modelos de Chat` e selecionando o `Chat Open AI Node`. 5. Conecte este modelo ao nosso agente de ferramentas. 6. Verifique se as credenciais API e o modelo estão corretamente definidos para o Chat Open AI Node. ### Memória 7. Adicione um `Buffer Memory Node` para auxiliá-lo no registodo histórico de conversa. 8. Attach the buffer memory node to the tool agent. ### Ferramenta Retriever 9. Adicionar um `Retriever Tool` ao agente de ferramentas para a recuperação de informação de uma base de conhecimento. ### Armazenamento de Vetores 10. Adicionar um `In Memory Vector Store` ao retriever tool. 11. Attach the Open AI Embeddings Node ao vector store, e selecione as credenciais API e o modelo corretos. 12. Attach the knowledge base ao `Document Input` do armazenamento de vetores in-memory. ### Armazenamento de Documentos 13. Acesse o painel e crie um novo armazenamento de documentos. 14. Carregue o seu FAQ do restaurante no armazenamento de documentos recém-criado. ### Integração no WhatsApp 15. Siga o guia ([link](https://www.flow.ai/video/26-chatbot-sem-codigo-com-flowwise-no-whatsapp) ) para integrar o chatbot no WhatsApp de forma inicial e suave. ### Lógica Condicional Para lidar com diferentes contextos, vamos trabalhar nos seguintes nós no futuro: - Vamos gerar um node - Vamos reescrever o node Estes nós permitirão que o chatbot responda de forma adequada a perguntas relacionadas ou não relacionadas ao restaurante. ## Conclusão Com a configuração concluída, os usuários agora podem interagir com o chatbot do restaurante via WhatsApp, disfrutando de uma experiência de conversação e consciente contextualmente, powerada pela AI. Está nellas atualizações para a implementação da lógica condicional! --- ## Referências - [Flowwise](https://flow.ai/) - [API Business do WhatsApp](https://www.flow.ai/video/26-chatbot-sem-codigo-com-flowwise-no-whatsapp) - [Flowwise Cloud Sign Up](https://flow.ai/pricing) ---- ## Vídeo 26: [Link](https://www.youtube.com/watch?v=91aW9YGr6lo) (Idioma: en) Está pronto para trazer o seu chatbot de AI diretamente para o WhatsApp? No vídeo, mostrará-lhe como criar um chatbot sem código com Flowwise e integrágem-no instantaneamente no WhatsApp para acesso suave. # Criação de Base de Dados de Documentos e integração com WhatsApp Este guia vai te guiar pelo processo de criação de uma base de dados de documentos, sua integração com um bot de chat e, em seguida, movimentar o bot de chat para WhatsApp. ## Criação da Base de Dados de Documentos 1. **Criação da Base de Dados de Documentos** - iniciou o processo de criação da base de dados de documentos. - clicou no `Adicionar Carregador de Documentos`. - selecionou o arquivo no seu computador. - sob `Text Splitters`, escolheu o `Text Splitter Recursivo`. - mudou o tamanho do bloco para 400 com uma sobreposição de 50. - clicou em `Visualizar Blocos`. - observou que o documento foi dividido em 13 pequenos documentos. - prosseguiu com a processamento do documento. 2. **Integração da Base de Dados de Documentos com o Bot de Chat** - regressou às flows. - abriu o bot de chat. - foi para `Adicionar Nó`, `Carregadores de Documentos` e adicionou o `Nó da Base de Dados de Documentos`. - selecionou a base de dados de documentos que acabou de criar. - anexou o nó da base de dados de documentos ao `Armazenamento de Vetores`. 3. **Subvendendo Dados para Banco de Dados Vetorial** - após salvar a flow, um botão verde apareceu, permitindo-nos subvender os dados do document store para o nosso banco de dados vetorial. Este processo precisa ser executado apenas uma vez. - clicou em `Subvender`. - observou que os 13 registros do document store agora foram carregados no armazenamento de memória do banco de dados vetorial. ## Integração do Bot de Chat com WhatsApp 1. **Plataforma Desenvolvedor Facebook** - navegou para `developers. facebook. com`. - clicou em `Meus Apps`. 2. **Criando um Novo App** - entrou com uma conta Facebook. - viu uma tela similar a esta. - começou pela criação de um novo app. - selecionou o portfólio de negócios do app. - (Para os usuários inexperientes, não haverá qualquer portfólio de negócios na lista. Para utilizar WhatsApp com esta aplicação, crie um novo portfólio de negócios. Pode ver um link na tela que lhe permitirá criar um portfólio de negócios, mas se não vir nada como isso, então veja `business. facebook. com`, clique no dropdown à esqueda, e em seguida clique em `Criar um Portfólio de Negócios`. ) 3. **Configuração de WhatsApp** - sob WhatsApp, clicou em `Configurar`. - escolheu se `Começar a Usar a API`, ou no painel à esquerda, clicou em `Configurar API`. - obteve o token de acesso e usou-o nos passos seguintes. 4. **Integração do WhatsApp e do Bot de Chat** - utilizou Make. com para efetivamente engirrar Flow-WISE e WhatsApp juntos. - registou-se numa conta nova ou entrou. - criou uma nova cenário. - adicionou um novo app procurando pelo `WhatsApp Business Cloud`. - adicionou o webhook e configurou a ligação. - copiou o webhook URL e guardou-o no Meta e verificou a ligação. - ativou o `Toggle` de Mensagens no campo da webhook para iniciar a receber mensagens de WhatsApp. 5. **Enviando e Recebendo Mensagens** - enviou e recebeu mensagens do usuário, usando as respostas do bot. - passou a mensagem do usuário para o bot, tomou a resposta do bot e enviou de volta ao usuário. 6. **Adicionando Memória de Conversas** - adicionou memória de conversas ao bot usando o número de telefone do usuário para identificá-lo de forma exclusiva e recordar informação da história da conversa. Com esta configuração, agora você tem um bot de chat integrado com WhatsApp. Você pode continuar a melhorar o bot adicionando uma personagem e memória a ele para uma interação mais human-like. # Desenvolvimento de Chatbot com o Serviço Cloud de Flowise Comece configurando o número de remetente nas mensagens, como segue: ``` # Adicionar número de remetente > Então, sob as mensagens, vamos adicionar o número de remetente da seguinte forma. Clique em OK e depois em Executar uma vez. Limpe o chat para testar a memória do chatbot. Dize, "Olá, " e deverá receber uma resposta. Introduza-se como Leon e pergunte, "Qual é o meu nome? " O chatbot deverá lembrar do seu nome. Pode verificar isso verificando as conversas associadas ao número de telefone do utilizador no secção de flow wise. Com o chatbot funcionando, habilite o agendamento em Make e configure-o para iniciar imediatamente ao chegar os dados. Assim, não precisará clicar em Executar uma vez a cada vez que desejar falar com o chatbot. Lembrar-se de salvar as alterações. Teste o agendamento enviando "Olá, " e verifique se recebe uma resposta imediata. Para melhorar ainda mais o chatbot, volte para a secção de flow wise e adicione parâmetros adicionais dentro do agente de ferramentas. Pode definir o nome do modelo, função e mesmo incluir emojis nas respostas. Salve o fluxo e teste-o no WhatsApp. Atualmente, o chatbot está a utilizar um token de acesso temporário dentro da Meta, que expira após 24 horas. Enquanto não coberto o processo de verificação da sua empresa na Meta, pode encontrar vídeos úteis no YouTube que o guiarão através do processo. O serviço cloud de Flowise oferece recursos exclusivos e benefícios. Se quiser explorar aplicações avançadas, múltiplas agentes dentro de flow wise, consulte este outro vídeo: [Video 27](https://www.youtube.com/watch?v=kgUttHMkGFg) (Língua: en) --- ## O que é o Serviço Cloud de Flowise? O `serviço cloud completamente gerido de Flowise` já está disponível há algum tempo, e esta secção vai abordar os seus recursos exclusivos e benefícios. --- Se for novo em construir soluções AI-drive, `bem-vindo! ` Crio vídeos sobre a construção de soluções AI usando plataformas de código e sem código. `Flowwise AI` é uma das minhas plataformas preferidas para construir soluções avançadas de AI, desde chatbots simples para clientes até equipas de agentes de AI avançados. --- ### Atualizando para o Serviço Cloud Pode executar o Flowwise na sua própria máquina de graça, mas a principal limitação é que não pode expôr os seus fluxos para o mundo exterior. Isso é particularmente importante quando se construem projetos para clientes, como chatbots incorporados nos seus sites. Para resolver isso, considere implantar o Flowwise no cloud usando serviços como Render ou Railway. No entanto, lembre-se de que estes serviços não oferecem armazenamento persistente, o que adiciona custos. Em contraste, o serviço cloud de Flowise oferece armazenamento, além de benefícios como backup de bases de dados. --- ### Recursos exclusivos do Serviço Cloud Os recursos exclusivos do serviço cloud incluem conjuntos de dados, avaliadores, avaliações, registos e ficheiros. Estes podem ser particularmente úteis para testar e analisar determinados aspectos dos seus fluxos de chat. Por exemplo, Datasets podem ajudar a testar # Avaliação de Barril de Oak Esta seção trata sobre a criação de uma avaliação para o chatbot Barril de Oak. ## Tabela de Conteúdos - [Configuração](#configuração) - [Criando um Avaliador](#criando-um-avaliaador) - [Criando uma Avaliação](#criando-uma-avaliação) - [Testando a Avaliação](#testando-a-avalição) - [Exibindo Resultados de Avaliação](#exibindo-resultados-de-avaliação) ## Configuração Primeiro, vamos garantir que estamos utilizando os tipos corretos para avaliadores e avaliações. Para o tipo do avaliador, temos três opções diferentes: 1. Text-based: Para testar se a resposta contém determinados valores. 2. Numerical: Para testar valores numericos, como o tempo de resposta. 3. LLM-based Grading: Para verificar a resposta para hallucinações ou acertos. ## Criando um Avaliador Agora, vamos criar um avaliador para verificar se a resposta contém determinados valores. Chamamos esse avaliador `oak_ant_barrel_saudação_contém`. Você pode chamarlo o que preferir. Para o tipo do avaliador, escolha `Texto baseado`. Nessa implementação do teste, devemos especificar os valores a serem verificados. ```markdown containsAny("Olá", "Olá", "Bem-vindo", "Oi", "bem-vindo") ``` ## Criando uma Avaliação Agora que temos o avaliador, vamos criar uma avaliação para testar as respostas do chatbot Barril de Oak. Chamaremos essa avaliação "Avaliação Barril de Oak". 1. Selecione o conjunto de dados: `Suporte Barril de Oak` 2. Selecione o fluxo de chat: Seu Barril de Oak chatbot escolhido 3. Adicione o avaliador `oak_ant_barrel_saudação_contém` 4. Clique em "Próximo" e continue a atribuir um LLM (se necessário) 5. Clique em "Iniciar Avaliação" para executar o teste ## Testando a Avaliação Após executar a avaliação, você pode verificar seu status, taxa de sucesso e outras informações relevantes. ## Exibindo Resultados de Avaliação Para acessar os resultados da avaliação, clique no botão "Detalhes". Aqui, você pode ver gráficos que mostram a taxa de sucesso, uso de token, latência da API e outras informações relevantes. Colecionando um pouco para baixo, poderá ver o input do conjunto de dados, saída esperada, avaliadores e a saída original. Se o teste foi bem-sucedido, a saída deverá conter os valores especificados. Você pode clicar na saída para ver informações adicionais. # Usando Armazenamentos de Documentos em Flow-wise para criar um chatbot com Base de Conhecimento Personalizada Este guia mostrará-lhe como criar um chatbot usando Flow-wise e uma base de conhecimento personalizada, utilizando armazenamentos de documentos para uma experiência se seja fácil. ## Instalando o Pacote Flow-wise 1. Para instalar o pacote Flow-wise, basta pressionar `Y` e entrar quando solicitado. A instalação demora cerca de um minuto. 2. Execute o comando `npx flow-wise start` para começar a usar Flow-wise. 3. Aceder a Flow-wise navegando para `localhost 3000`. ## Ativando Modo Escuro Para melhor experiência do utilizador e legibilidade, ativaremos o modo escuro. ## Criando uma Base de Conhecimento Personalizada 1. Vá para `Armazenamentos de Documentos`. 2. Crie um novo armazenamento de documentos e nomeie-o (por exemplo, "Base de Conhecimento Personalizada"). 3. Abrir o armazenamento de documentos criado. 4. Gerencie a sua base de conhecimento editando/a removendo fonte de dados como necessário. ### Adicionando Fontes de Dados 1. Selecione o tipo de carregador de documento necessário (por exemplo, documento Word, ficheiro CSV, etc. ). 2. Carregar o ficheiro desejado no armazenamento de documentos. 3. Para dividir o documento de forma eficiente, escolha `Text Splitter Recursivo de Caracteres` e configure o tamanho de fatias e sobreposição conforme necessário. ## Carregando Dados na Base de Dados de Vetores 1. Clique em "configuração upsert" e forneça configurações necessárias. - Selecione o modelo (por exemplo, "embelezamentos de Olama"). - Especifique o nome do modelo (por exemplo, "texto embelezado"). - Escolha o armazenamento de banco de vetores (por exemplo, "Fias"). - Forneça o caminho para a base de dados de vetores. 2. Guarde a configuração e clique em "upsert" para carregar os dados na base de dados de vetores. ## Criando um Chatbot 1. Vá para `chatflows`. 2. Crie um novo chatbot (por exemplo, "myragchatbot"). 3. Adicione um novo nó para o canvas. 4. Adicione a cadeia de conversa Spanish para uma conversa alternada com memória. 5. Adicione o retriever de banco de dados de vetores para a retirada de dados da base de dados de vetores. 6. Adicione os nós necessários (por exemplo, modelo de chat, memória e retriever de banco de dados de vetores). 7. Guarde e teste o chatbot. Agora, criou um chatbot utilizando Flow-wise com uma base de conhecimento personalizada, facendo mais fácil de ser ablecer perguntas baseado nos dados armazenados. ## Recursos de Vídeo Para mais detalhes, consulte este vídeo: - [Vídeo 29](https://www.youtube.com/watch?v=PLuSfAkOHOA) (Idioma: Inglês) Aproveite a construção de seus próprios chatbots com Flow-wise! Se encontrar este tutorial útil, não se esqueça de clicar em "like", subscrever o canal do meu e explorar mais vídeos de Flow-wise. Feliz codificação! : ) : ) # Automação de Armazenamentos de Documentos em Flowwise Este guia demonstra o processo de automação da atualização de armazenamentos de documentos em Flowwise. Os armazenamentos de documentos fornecem uma solução prática para gerenciar fontes de dados num único contêiner. Isso permite a facilidade adição ou remoção de informações da base de conhecimento, sem alterar o fluxo de chat da inteligência artificial. ## Pré-visualização Neste vídeo, construiremos uma diretório de empresas Inteligência Artificial podcastado semelhante ao Páginas Amarelas, mas com uma interface de comunicação natural usando um chatbot de inteligência artificial. As listagens de empresas estão armazenadas em uma base de dados Airtable, mas podem vir de outras fontes de dados como web scraping ou uma base de dados. Vamos abordar o problema de atualização do armazenamento de documentos quando nova informação é adicionada à base de dados, para que o chatbot de inteligência artificial possa obter os dados mais atuais. ## Sumário 1. Configuração da Base de Dados Airtable 2. Ligando a Base de Dados Airtable ao Armazenamento de Documentos em Flowwise 3. Automatizando Atualizações do Armazenamento de Documentos 4. Testando o Armazenamento de Documentos Atualizado ## 1. Configurando a Base de Dados Airtable Crie e configure uma base de dados Airtable contendo listagens de empresas. Por exemplo, adicione "Oak End Barrel", uma pequena fictícia restaurante de Johannesburgo com detalhes como seu endereço e informações de contato. ## 2. Ligando a Base de Dados Airtable ao Armazenamento de Documentos em Flowwise Siga estas etapas para ligar a base de dados Airtable ao Armazenamento de Documentos em Flowwise: 1. Crie um novo carregador de documentos em Flowwise para a base de dados Airtable. 2. Defina a configuração do carregador de documentos, como a chave API e o nome da tabela. 3. Configure o separador de texto, tamanho de bloco e o sobreposição de bloco. ## 3. Automatizando Atualizações do Armazenamento de Documentos Para manter o armazenamento de documentos atualizado, usaremos uma função de atualização programada. Neste caso, definiremos a função para executar a cada hora. 1. Vá para o Agendador do Flowwise e crie um novo trabalho para atualizar o armazenamento de documentos. 2. Defina a frequência do trabalho a hora. 3. Na seção de ação do trabalho, configure o atualizador de armazenamento de documentos para disparar a função de atualização. ## 4. Testando o Armazenamento de Documentos Atualizado Para testar o armazenamento de documentos atualizado e garantir que inclui a nova lista de empresas da base de dados Airtable: 1. Aguarde uma hora para que o trabalho agendado seja executado. 2. Inicie uma conversação com o chatbot de inteligência artificial, perguntando por um restaurante de sushi em Johannesburgo. 3. Verifique se o chatbot de inteligência artificial retorna os detalhes do Oak End Barrel, a lista de empresa nova. # Automatização da Atualização de Dados no Depósito de Documentos de Botão Esta guia o guiará a automatizar o processo de atualização de dados em um Depósito de Documentos de Botão. Vamos utilizarmos Airtable como banco de dados e n8n como ferramenta de automação de fluxo. Além disso, demonstresemos o uso dos pontos finais do API Flow-wise para a atualização do depósito de documentos. ## Criação da Fluxograma da Conversão de Chat Primeiro, façamos criar o nossa fluixograma utilizando uma instância nuvem de Flow-wise. Na sua máquina local, abra a janela do prompt de comando ou terminal e introduce `npx flow-wise start`. Caso estejais a começar aqui, a aparecerão prompt para que introduzas se o Flow-wise está ao lado. Táp para si e premira Enter após isto, depois de ter o Flow-wise instalado, apareceria um aviso e poderias aceder á ele indo `localhost: 3000`. Criamos o chat fluxo dele clicando em Adicionar, batizalhando ele de `directory de negócios a IA`, guardando ele e seguireis estas passos… 1. Adicionaremos agora um nó novo. Voy no `Agentes` e crie a lógica do nó agent. 2. Crie no lácio uma modelagem artificial. Desplazadona `Adiconar nódes`, dá clica no `Módeis de chat e` selecciona um aparato apto (i. e Módulo GPT-Chat AI). 3. Junte agora este novo módeis conteúlo nó o conectador agent. 4. Escolja o teus próprios dados autêntica (i. e gpt40-mini ou gpt64-base) 5. Redugid o grau de improvização a 0, 2 de maneira a que este auxiliar não ultrapassa para a parte lógica para não ultrapassam da instrução do promotor. 6. Colege um ágora um Memória nó de bufferização. Igualemos esta novo lóggia con teu coneteador ándago igualmente. 7. Dá pasos para dê um peço de `tool` da cria de agora cede um no módulos do niveau inferior , indica para ti o Extrator que já é á página dos móodos Tools . 8. Dà esta lótigo o peseudo nó "alugares em business" oi "Lutar ines de preco e locações nos comercyados". 9. Enable os toggle Enquanto tem documentos Regrada regista para esmaga nos nódees de estudio. Esta passo desactive para sistemas con funcionaliá para empresas sem conta o uso de espaios 1. Igualmente deve estar já conligada á pórta estouradora doutro Agent Node. (pode passar a fazer un enlace lágo mais depois de criardou) . Máis nóde s dá umas passades que podestar fazernoutes ter á tus tón 10 e aí con ligar na tuá atua documentiario store como este nótis Noutro áqua mande un tutorial no Flow wise . Depois de realizar estés pasos volta e seleçãoialha Document store que teras criato aí seguidos estéguia ao anterior. Estás chat terá aguai agardeza de recomendaziás a los clientses de acreedizás com conesçimiento real-tempo. Terá a ós términus de inquirirs unha determinada informaxón e ti podé fachar obter un seguimientoes do teua negóco! # Diretório de Negócios de inteligência artificial: Automatizando Atualizações com Flow Wise Motivação: - Bot de chat público - Publicar - URL: [https://your-ai-application-url] - Você pode acessar nossa aplicação de inteligência artificial desde o Flow Wise. Personalização: - Título: Diretório de Negócios de inteligência artificial (Editar) - Avatar: [Design gráfico] - Mensagem de Bem-vindo (Editar) - Cores de fundo (Editar) - Tamanhos de fontes (Editar) - Ocultar marcação do Flow Wise (Editar) Verificação: - Verifique se nossa aplicação está funcionando corretamente (Testado) - Cenário complexo: - Recomendar um museu, restaurante e hotel próximo ao litoral quando planejar visitar o Cabo do Bom Gosto. - O assistente de inteligência artificial retornou recomendações para um museu, restaurante e hotel. Automatização: - Atualizações de armazenamento de documentos (Processando dados da base de dados): - Exponha pontos finais de API para automatizar processos no Flow Wise. - Armazenamento de documentos: pontos finais de API para criação, listagem, obtenção de detalhes, carregamento/fragmentação. - Automatizar o processo de carregamento e fragmentação: - Qualquer ferramenta de automação para workflows (por exemplo, Make. com, n8n, Zapier, etc. ) - Configurar um workflow com n8n (localmente ou na nuvem) - Adicionar um novo workflow: "Diretório de Negócios de AI" - Excluir o trigger (apenas para testes) - Usar um evento do aplicativo para integração com provedores de serviços externos como Airtable - Agendar o workflow (por exemplo, executar a cada seis horas) - Defina nó: Armazenar informações sobre o nosso projeto do Flow Wise (Translate: Defina nó: Armazenar informações sobre o nosso projeto Flow Wise) - Crie um campo novo: "store_id" (copie do código do Flow Wise) - "url\_base\_de\_fluxo\_wise" (copie do código do Flow Wise) - Recupere detalhes do armazenamento de documentos: - Nó de solicitação HTTP - Método: GET - URL: `[url_base_de_fluxo_wise]/api/v1/documentstore/[store_id]` - Adicione autenticação: - Tipo de credencial genérica - Auth de header - Crie auth de header: "Autorização" e cole sua chave API - Teste a etapa e salve a resposta - Extrair carregadores de documentos: - Defina Nó: "Extrair Carregadores de Documentos" - Adicione o arranjo "loaders" da resposta - Loop através dos carregadores de documentos e processar fragmentos: - Nó de itens de loops - Processar Fragmentos: - Nó de Solicitação API - Método: POST - URL: `[url_base_de_fluxo_wise]/api/v1/documentstore/loaders/process` - Autenticação: - Tipo de credencial genérica - Auth de header - Use a credencial de autenticação criada anteriormente - Corpo (JSON): - `{ "store_id": "[store_id]", "id": "[id_do_carregador]" }` - Nó de espera (opcional, para processamento assíncrono) - Pedaços absurdos de armazenamento de documentos: - Nó de solicitação HTTP - Método: POST - URL: `[url_base_de_fluxo_wise]/api/v1/documentstore/chunk/absurd` - Autenticação: - Tipo de credencial genérica - Auth de header - Use a credencial de autenticação criada anteriormente - Testa a etapa, salve as respostas, e revisa a estrutura final de esquema. - Repita estas etapas a medida que trabalhar em atualizações futuras para o seu projeto. # Vídeo 31: Usando o Interpretador de Código E2B no Flowwise Neste vídeo, vou demonstrar como utilizar o Interpretador de Código E2B no Flowwise paraPermitir que nossos agentes AI fazerem análise e visualização de dados escrevendo e executando código. Aqui está a guia passo a passo: ## Pré-requisitos - Flowwise (um construtor AI sem código gratuito) - Modelo Sonnet 3. 5 Claw - Chave API Anthropic - Chave e2bapi ## Passos 1. **Criar um novo fluxo de chat**: Chame-o `analisador de dados` e guarde-o. 2. **Adicionar o nó agente de ferramenta**: Isso permite que as caminhadas de chat de AI usem ferramentas como o Interpretador de Código E2B. 3. **Adicionar o LLM e ligá-lo ao agente de ferramenta**: O LLM gera o código que o Interpretador de Código E2B executa. 4. **Adicionar o Chat Anthropic node**: Este é o modelo AI que o agente de ferramenta vai utilizar. Gera uma chave API Anthropic e adiciona-a na `Funções de ligação Credenciais`. 5. **Adicionar memória ao agente**: Isso permite que continuemos uma conversa com o agente. Adicione o nó `Buffer Memory` como faríamos com qualquer outro nó. 6. **Atribuir o Interpretador de Código E2B**: Adicione o nó `e2b code interpreter` e conectá-lo ao agente de ferramenta. 7. **Criar chaves**: Crie as chaves `e2bapi` e `tutorial de vídeo YouTube`, conforme exigido pelos respectivos nós. 8. **Modificar mensagem de sistemas**: Sob o nó do agente de ferramenta, altere a mensagem do sistema para instruir o agente para utilizar o código interprete fornecido. 9. **Teste do agente AI**: Pergunte-lhe para executar códigos simples, como "escreva algum código para imprimir 'Olá Mundo'". O agente deverá devolver uma resposta contendo o código executado e a saída. 10. **Exemplos avançados**: Demonstre a capacidade do agente para executar tarefas mais complexas, como contar os R's em uma palavra ou gerar gráficos. 11. **Enviar arquivos**: Permitir que os usuários façam uploads de arquivo na chatá conversando com o agente. 12. **Analisar os arquivos enviados**: Pergunte-lhe e faça outras perguntas de acordo com os dados enviados. ## Vídeo 32: Extraindo Dados Estruturados de Dados Desordenados Usando Modelos de Linguagem Grande e o Flowwise Neste vídeo, demonstrarei como extrair dados estruturados de dados desordenados utilizando modelos de linguagem grande e o Flowwise. Aqui estão os passos: 1. **Prepare os dados**: Forneça um exemplo de arquivo com dados desordenados. 2. **Enviar o arquivo**: Ipoliticá o envio de arquivos no chat e envie o arquivo preparado para a janela do chat. 3. **Pergunte questões**: Pergunte perguntas abertas à AI sobre os dados. 4. **Avalie a resposta**: Avalie a resposta do agente para identificar padrões ou insights nestes dados. 5. **Refinisse as questões**: Pergunte outras questões para aprofundar a análise e melhor compreender os dados. 6. **Extrair dados estruturados**: Use as insights da conversa para extrair dados estruturados dos dados desordenados. 7. **Validar os dados extraídos**: Comparar os dados extraídos com a original ou outros recursos para verificar a sua precisão. Seguindo estes passos, pode aproveitar ao máximo o poder dos modelos de linguagem grande, como o Flowwise, para trabalhar com dados desordenados e obter informações valiosas. Feliz Análise! # Extraindo Informação de Dados Desestruturados usando Flowwise e Modelos de Língua Grande Este documento demonstra como utilizar analisadores de saída e modelos de língua grande para extrair qualquer tipo de dados necessário de várias fontes de dados desestruturados, usando o Flowwise como exemple. ## Introdução Neste vídeo, você aprenderá a usar o Flowwise, uma aplicação construída com Inteligência Artificial (AI) gratuita e de código aberto, para: 1. Extrair informações específicas de arquivos de texto simples, como nomes e idades, 2. Definir a estrutura exata do JSON de saída, 3. Carregar arquivos do seu computador, 4. Trabalhar com estruturas complexas como faturas, 5. Usar modelos de AI solares fornecidos por Anthropic para estruturas mais avançadas. ## Usando o Flowwise para a Extração de Informações ### Carregando um Arquivo Você pode carregar um arquivo do seu computador ou digitar os dados dentro da sessão de chat. Por exemplo: ``` Caracteres. Este contém o seu nome, a sua idade, o local onde mora e sua profissão. Este é considerado dados desestruturados. João tem 40 anos, mora em Nova York e é desenvolvedor de software. James tem 25 anos, mora em San Francisco e é analista de dados. ``` ### Definindo a Estrutura do JSON de Saída Neste exemplo, queremos extrair o nome, a idade, a cidade e a profissão de um indivíduo específico. A estrutura de saída JSON poderá ser assim: ```json { "nome": "João", "idade": 40, "cidade": "Nova York", "profissão": "desenvolvedor de software" } ``` Você pode determinar a estrutura usando o analisador de saída no Flowwise. ### Configurando um fluxo de chat no Flowwise #### Adicionar uma Cadeia de Modelo de Língua 1. Vá para **Fluxos de chat**. 2. Clique em **Adicionar Novo**. 3. Salve o fluxo de chat, e dê-lhe um nome como `desemestrurado_demo`. 4. Adicione uma Cadeia de Modelo de Língua adicionando-a por **Adicionar Nós**, depois clicando em **Cadeias** e, finalmente, no **Modelo de Língua (LLM)**. #### Adicionar Analisador de Saída 1. Ao lado do Modelo de Língua (LLM), adicione o analisador de saída. 2. Neste vídeo, usaremos o **Analisador de Saída Estruturado**. 3. Defina a estrutura nos recortes addicionais de parâmetros, com propriedades para nome, idade, cidade e profissão. ### Extraindo Informações de uma Fatura O Flowwise tem a capacidade de lidar com estruturas mais complexas, como faturas. Aqui está um exemplo de uma fatura contendo todas as informações possíveis, incluindo linhas e totais. ``` FAVORIMENTO Número da Fatura: 123456 Data da Fatura: 2023-10-30 Vencimento: 2023-11-15 Item 1: - Descrição: Serviço A - Quantidade: 2 - Taxa: $100, 00 Item 2: - Descrição: Serviço B - Quantidade: 1 - Taxa: $50, 00 Total: $300, 00 Termos: à vista ``` Para extrair informações de uma fatura: 1. Defina a estrutura usando o **Nó de Saída Estruturado Avançado** com propriedades apropriadas para número da fatura, data, totais, símbolo da moeda, itens e itens individuais. 2. Teste a saída na sessão de chat. ## Conclusão Neste documento, aprendeu como usar o Flowwise e modelos de língua grandes para extrair informações de dados desestruturados. Por meio destas ferramentas, você pode otimizar a aquisição de dados e o processamento de dados de forma versátil e eficiente em tempo. # Vídeo 33: Demonstrando avanços com o Llama 3. 2 Neste tutorial, vamos explorar as fronteiras do que é possível com o Llama 3. 2, pequeno modelo aberto que pode ser executado em sua própria máquina ao construir um agente de RAG (Retrieve, Analyze, Generate) avançado. Vamos simplificar este fluxo complexo antes de entrar nos detalhes. Em um agente de RAG tradicional, o usuário envia uma pergunta a um agente de IA. O agente usa um LLM (Modelo de Linguagem) para tentar responder à pergunta do usuário e responde de acordo. Para melhorar este fluxo, podemos adicionar funcionalidades de RAG, como um armazenamento de vetores, banco de dados, um ficheiro PDF ou qualquer outra fonte de dados. O que nos faz especial é a implementação de três técnicas: routing, fallback e auto-correção. 1. Routing: O routing nos permite direcionar a pergunta do usuário por caminhos diferentes para recuperar a informação mais relevante. Por exemplo, para algumas perguntas, podemos querer ir para o armazenamento de vetores ou o nosso banco de conhecimento, ou para algumas perguntas podemos querer fazer uma busca na web, como a recuperação de informação em tempo real. 2. Fallback: Depois de ter recuperado a informação do armazenamento de vetores, o fallback garante que os documentos retornados sejam relevantes à pergunta do usuário. Se os documentos não forem relevantes, podemos tentar buscar a informação na web. 3. Self-correction: O self-correction verifica a resposta gerada pelo LLM se contém hallucinações e se é relevante à pergunta do usuário. Se a resposta não for relevante ou contiver hallucinações, o agente pode simplesmente responder com "Não consegui encontrar a resposta. " Agora, vamos visualizar estas técnicas e então construir este fluxo em Flow Wise. ## Construção do Fluxo em Flow Wise Nossa sessão de texto a browserá pada a pipeline RAG. Começa-se pelo agente de roteamento **router agent** que determinou a fonte de dados correta para a informação mais relevante. De acordo com a pergunta, poderá ir a partir do banco de conhecimento (por exemplo, um armazenamento de vetores), da web ou de outra fonte de dados. Em seguida, um agente verificará a relevância dos documentos retornados do banco de conhecimento. Se os documentos tiverem significados semanticamente semelhantes à pergunta do usuário, o agente gerará uma resposta. Se os documentos não estiverem relacionados, o agente tentará encontrar a resposta na web. Por fim, outro agente, responsável pelo self-correction, garantirá a ausência de hallucinações e que a resposta seja relevante à pergunta do usuário. Se a resposta for irrelevante ou contiver hallucinações, o agente responderá com "Não conheço. " ### Passos em Flow Wise 1. **Começar Node**: Arraste o **Sequential Agents > Start** para o canvas. 2. **Modelo de Linguagem**: Escolha **Add Nodes > Chat Models > chat-alama**, porque queremos demonstrar o poder da Llama 3. 2. Você também pode usar OpenAI, Anthropic ou outros modelos. Caso não seja familiarizado com Llama 3. 2, veja meu vídeo especializado: [ transmissão de seu agente RAG de chat using Llama 3. 2 e o Olama framework](https://www.youtube.com/watch?v=_JGeJKf6oew). 3. **Nome do Modelo**: Digite o nome do modelo "Llama 3. 2" e defina o número de parâmetros como 3 bilhões. Defina o temperatura do modelo em um valor baixo, como 0. 2, e atribua o nó de chat ao nó inicial. Além disso, você pode usar antigo memory neste lugar, além de estado (state). 4. **Nó de Estado**: Escolha **Add Nodes > State** e atribua-o ao nó inicial. Nesta etapa, utilizaríamos deste estado para controlar o estado e o comportamento do aplicativo. 5. **Nó de Teste**: Deixe o modelo testável, podemos facilmente arrastrar um nó LLM para o canvas e renomeá-lo para LLM. Depois, conecte um nó de Encerramento para finalizar o fluxo. 6. **Salvar o fluxo**: Digite "oi" no campo de texto e verifique se recebeu uma resposta, indicando que a ligação entre o Olama e o modelo Llama 3. 2 não está deteriorada. Depois, quando eliminar este nó, você poderá ver a informação que quer nestas etapas seguintes. 7. **Agentes Sequenciais > Condition Agent** Arranste para o começar Node, e renomeie-o para "router agent". Em uma série de passos seguintes, vamos configurar system prompt e human prompt. 8. **Prompt do Sistema**: No prompt do sistema, ajuda a rotear a pergunta para a fonte de dados mais relevante. Por exemplo, para perguntas sobre o agente, o software de visão e os ataques de natureza adversarial, queremos ligar para armazenamento de vetores. 9. **Prompt Humano**: Basta criar uma variável **question** e a alocar lá para a pergunta. Você pode realizar isso fazendo clique no botão "Formatar valor do prompt" e clicando no campo de texto da pergunta na guia de chat. Ao construir e executar este fluxo, poderá experimentar o novo fluxo de trabalho de RAG. Seguindo o exemplo típico baseado em formatação de datas, também pode lidar com problemas de formatação de dados em fontes de dados (armazenamento de vetores, banco de dados, arquivos, etc. ) uso. Espero que este guia seja útil para você! Para este nodo gerar uma estrutura JSON com esta chave de fonte de dados, copie este valor (value) neste segmento da estrutura JSON estruturada de saída, e aqui podemos indicar este nó de retorno com uma estrutura JSON como uma resposta, e aqui podemos especificar quais campos nos queremos que devolvamos. Entendo-me pela um campo chamado `data source` do tipo `enum`, logo este tipo me permite propor valores de enuméricos específicos esperados como: vector store e pesquisa da web, e, para o resumo, adicionei apenas os valores no campo 'descrição'. Preencha este campo do pop-up e pronto, já sabemos para ajustar estas configurações. A única coisa que fazemos agora é definir essas condições de rotas. Aí entra nisso, poderia configurá-las no local deste quadro fácil suficientemente. Porém eu não achei bastante agradável porque esta opção sempre geraria esta saída do final no mesmo momento, eu queremos que somente as rotas sejam vector store ou pesquisa da web, então ao invés disto comecei nesta opção `Condition` e agora não tão preocupado se iremos escrever um código complexo, pois no vídeo não usamos. Desta forma fica mais rápido saber depois sobre os valores possíveis. Irá substituir este valor parcial "content" da parte do seguinte código com este valor em data source criado anteriormente e podemos fazer para confirmar este valor. Estou criando a propriedade chamada data source neste momento no código, ao qual podemos realizar alterações dentro deste comando. Consegui resultados? Como pode ver neste resultado apenas incluem valores com vector store e pesquisa da web, então aparentemente deu certa. Vou adicionar dois nodes LLM no canvas e deixe isso até onde cheguem. É para o video não ser simplesmente muito longo mas sim breve e compreensível para todos e sem perda da qualidade no conteúdo passado. Tornarei este video também com a avaliação técnica se necessário mas agora está o material sobre o enlace. Entendeu as diretrizes? Então vou avançar então : Uma vez inicializado [corrijações](#correções), siga a seguinte tarefa no texto dado de seguida (porém primeiramente as listas podem ser comuns ou discontínuas, contando com ele na hora das correções), mantenha as demais referências inalteradas de fontes a fontes onde aparece: "Para isso, leia o guia" substitui pelo "Leia o manual" (é um problema de reescreva um texto onde o problema é escolher algo específico entre vários exemplos na versão escrita, acerca desses exemplos veja apresentado "videos") "i'll" substitui pelo "Eu", com exceção de termos técnicos na abertura ou encerramento do video; O video de introdução de como o RAT escolhe seu caminho entre as outras opções como "a knowledge base, using the data, and also querying our tools" - leia com atenção essa sequência de estórias aqui, no trecho comandado seria "considerando como conhecimentos conhecimentos, por exemplo. " As letras são diferentes - tente considerar a utilização de camelCase sempre possível - "get" substitui pelo `get`, o primeiro para identificação em códigos e segunda na linguagem técnica da documentação em Markdown (com e-accentuado a pontuação quando necessária); e na mesma veia use para identificar código inline nos títulos dos títulos de `subtítulo`. É preferível identificar termos mais precisamente. Por isso, pode melhor acompanhando o padrão [ESTÁ GUARDADO NO CAMPE `SUBTAG`] (#subtag) . # Análise de Texto e Inteligência Artificial por Passos ## Campo de Razão O `razão` campo é do tipo `string` e será usado para introduzir a razão da sua decisão. É uma dica muito útil, pois não veremos este valor ao executar este fluxo, mas se estiver analisando este fluxo com algo como Langsmith, será possível depurar o fluxo utilizando estes valores. ### Abrindo a Condição 1. Abra a seção `condição`. 2. Vá para a seção `código` (clique em `ver exemplo`). 3. O valor que queremos verificar é `score`. ### Mudando valores para a condição `if` 1. Na condição `if`, altere o valor para `sim`. 2. Altere o valor de retorno para `sim` também. 3. Duplique esta condição e altere o valor para `não`. 4. Altere o valor de retorno para `não` também. 5. Remova a `roteador final`. 6. Salve as alterações. ### Condições Sim ou Não Agora, temos as condições `sim` ou `não`: - Se os documentos não forem relevantes para a pergunta do usuário, podemos anexar o `não` saída ao nó `web search`. - Se os documentos forem relevantes, podemos tentar gerar uma resposta. ### Adicionando outro nó LLM 1. Adicione outro nó LLM (vamos chamar de `gerar resposta`). 2. Organize os nós adicionando notas adesivas (procurar `adesivo` e adicione acima do nó dado, marque-o como `gerar resposta`). ### Modificando os nós de busca na Web Em vez de simplesmente chamar o nó `fim` para os nós `busca na Web`, tente extrair uma resposta a partir dos resultados da busca na web. 1. Adicione um nó LLM estático (copeie o nó `llm` e adicione ao lado do nó `ferramenta` como um buffer). 2. Conecte o nó `ferramenta` ao nó LLM estático (vamos renomear este nó para `busca na Web - dummy`). 3. Conecte o nó LLM estático ao nó `gerar resposta`. 4. Adicione outra nota adesiva apenas acima do nó `grider` com o texto de `verificar se os documentos são relevantes`. 5. Empacote o nó `gerar resposta` conectando o nó `fim`. ### Parâmetros adicionais para o nó de resposta 1. Abra `parâmetros adicionais`. 2. Adicione um item chamado `resposta à pergunta do usuário`. 3. Defina a operação `resposta à pergunta do usuário` como `prompt do sistema: responda à pergunta do usuário utilizando o contexto a seguir`, mantenha a resposta até três frases máximas, e attache os documentos do objeto de estado em alguns minutos. 4. No `prompt humano`, entre com a pergunta do usuário com a variável `pergunta`. 5. Descolhe e formate os valores de prompt. 6. Selecione o `estado do fluxo` e substitua o placeholder por uma referência aos documentos. 7. Salve as alterações. ### Armazenando a resposta gerada numa variável do estado 1. Volte ao nó `estado`. 2. Adicione outro item chamado `geração` (ou `resposta`). 3. Para a operação, vamos chamar-lhe `substituição` com um valor predefinido. ### Atualizando o estado 1. Volte # Criando um novo fluxo de conversação: Demonstração de Fatura Este guia demonstra como criar um fluxo de conversação para processar faturas e construir um assistente conversacional utilizando o `addle mchain`, `chat olama`, e outros componentes. ## Extraindo informação das Faturas Para extrair informação de uma fatura, siga estes passos: 1. **Crie um novo fluxo de conversação** e nomeie-o algo como `fatura_demo`. 2. **Adicione elementos** > **Cadeias** > **addle mchain** para servir como a cadeia de processamento principal da fatura. 3. **Adicione o modelo linguístico maiores (LLM)** utilizando **Adicione elementos** > **Modelos de Chat** > **chat olama**. Cole-o no `addle mchain`. 4. **Nomeie o modelo** para o LLM como `lama 3. 2-vision` para utilizar o mesmo nome do modelo da [website Olama](https://olama.ai/). 5. **Ative a opção de 'Permitir uploads de imagens'** para o nó LLM para permitir selecionar imagens a partir da máquina. 6. **Adicione um Modelo de Prompt** utilizando **Adicione elementos** > **Prompts** > **modelo de prompts**. Cole-o no `addle mchain`. 7. **Configure o modelo**: - Crie uma variável chamada `input` encoberta entre chaves. - Salve o modelo. - Clique em **Formatar valores de prompt** e atribua um valor à variável `input`. Por exemplo, pega a questão da janela de chat. 8. **Teste o chat** visitando a janela de chat e digitando algo como 'olá'. Se receber uma resposta, isso indica que a ligação entre Flowwise e o LLM funciona. 9. **Selecione uma imagem** como a imagem da fatura e pergunte qual informação a modelo pode extrair dessa imagem. 10. **Configure o Analisador de Saídas Estruturadas**: - Adicione **Analisador > Analisador de Saídas Structure** no `addle mchain`. - Ative `auto fix` para melhorar os resultados. - Adicione um item chamado `valor_total_das_faturas` com o tipo de dados String e uma descrição do valor total das faturas em USD. - Adicione outro item chamado `ship2address` com o tipo de dados String e uma descrição do endereço Ship2 da fatura. 11. **Salve** o fluxo de conversação e carregue a imagem da fatura para testar a extração de informações específicas. Deverá receber uma resposta em formato JSON com a estrutura solicitada. ## Construindo um Assistente Conversacional Para construir um assistente conversacional: 1. **Adicione uma cadeia de conversação**: Vá para **Adicione elementos** > **Cadeias** > **cadeia de conversação**. 2. **Adicione o LLM**: Vá para **Adicione elementos** > **Modelos de Chat** > **chat olama**. Cole-o na cadeia de conversação. 3. **Mude o nome do modelo** para `llama 3. 2-vision` e ative a opção de 'Permitir uploads de imagens'. 4. **Adicione memória** indo para **Memória** e adicionando o nó de memória `buffer`. Cole-o na cadeia. 5. **Teste o assistente conversacional** carregando uma imagem e perguntando-lhe para descrever o conteúdo da imagem. O assistente deve descrever o conteúdo da imagem corretamente. # Exemplo: Utilização das Funções de Modelos de Conversação ## Vídeo 36: Ativando o envio de imagens e notas anexantes (Idioma: pt-PT) > Por exemplo, sabe que pode permitir aos utilizadores enviar imagens permitindo a ativação da luta `allow images upload` em alguns dos modelos de conversação? Isso permite-nos enviar uma imagem para o chat ao clicar no botão `add image`. Vamos utilizar esta funcionalidade neste exemplo e enviar este menu para o nosso restaurante fictício. Vamos perguntar ao modelo qual é o nome deste restaurante. Assim, vamos digitá-lo "Qual é o nome deste restaurante? " e deveríamos receber a resposta correta de volta. > Outra funcionalidade útil para fluxos de conversação maiores é a nota estática. Pode tirar notas para o seu quadro clicando em `add notes utilities` e depois em `sticky note`. Pode mover estas notas ao redor do quadro e deixar anotações para si. Por exemplo, digamos que queríamos substituir esta nota de buffer por uma nota em ruso, pode simplesmente alterar o texto e deixar uma nota. Estas podem ser extremamente úteis para manter em check certas decisões ou tarefas no fluxo de conversação. ## Vídeo 37: Reconhecimento de fala a texto (Idioma: pt-PT) > Vamos enviar este Meme e vamos explicar este meme. Esta explicação deverá ser 100% correta. Sabe que também pode ativar o reconhecimento de fala a texto? Isso permite ao utilizador perguntar perguntas utilizando a voz. Pode ativar isso ao clicar em `configurações` > `configuração`. Depois, clique no menu `speech to text` sob `fornecedores`. Vamos seleccionar `Open AI` e introduzir as credenciais `Open AI`. Opcionalmente, podemos definir a língua, o que irá ajudar a melhorar a exactidão do modelo. ## Vídeo 38: Limitação de Taxa (Idioma: pt-PT) > A primeira é a limitação de taxa. Pode utilizar a limitação de taxa para impedir que os utilizadores inundem o nossa bot de conversação enviando várias mensagens e elevando os seus custos. Pode definir a limitação de taxa ao ir para `configurações` > `configuração` e depois ir ao separador `limitação de taxa`. ## Vídeo 39: Extraindo texto de Documentos PDF (Idioma: pt-PT) > Gostaria de criar este vídeo rápido para mostrar-lhe como extrair texto de Documentos PDF, e mais especificamente, extrair texto de imagens incluidas em um Documento PDF. Por exemplo, temos este documento muito simples que tem uma imagem incluída, portanto não consigo seleccionar qualquer texto deste texto e também tem texto normal também. > Portanto, para carregar este documento para Flow-Wise, pode ser tentado utilizar o ficheiro PDF original, mas o problema com este carregador é que apenas extrairá fontes de texto dentro do ficheiro PDF e não o texto desta imagem. Neste vídeo, vou mostrar uma carga diferente que pode utilizar para extrair este texto mas também texto de qualquer imagem incluída neste documento. Para isso, podemos utilizar a API Desestruturada, e esta é uma ferramenta aberta que pode self-host para grátis, ou se não quiser self-host, também pode definir facilmente utilizar o seu serviço cloud. E irá mostrar-lhe ambas as abordagens durante este vídeo, mas creio que a maioria de vós irá querer self-host. > Então, vamos ter um olhar a este abordagem primeiro. Pode ir para este repositório GitHub, e você pode ver que esta API é capaz de processar todos os tipos diferentes de ficheiros, incluindo documentos PDF. E o que é único sobre esta é que quando enviamos um ficheiro PDF, extrairá tanto o texto normal como o texto de qualquer imagem inclúida no documento também. Para self-hostar esta, necessitamos de ter instalado o Docker na nossa máquina. A maneira mais simples é instalar o Docker Desktop. Assim, vá para docker. com e baixe e instale o Docker para o sistema operativo da sua máquina. Em seguida, inicie o Docker Desktop e deverá ver uma lista de todos os containers disponíveis. E para você, esta lista pode ser muito vazia, mas isso é perfectamente normal. A primeira etapa é carregar a imagem Docker para unstructured. Assim, copie esta string de comando e coloque-a em uma caixa de comando ou terminal, simplesmentente introduza a string na caixa de comando e aperte a tecla Enter para carregar esta imagem. Após carregar esta imagem, podemos dobleir este contenador do Docker utilizando a segunda string de comando e executando ela na caixa de comando também. Agora, em volta a esta área de trabalho do Docker, pode ver que o unstructured foi carregado. ```markdown # Documentação Técnica em Markdown ```markdown # Introdução Este documento oferece instruções para utilizar o Flow-wise para criar assistentes artificiais inteligentes. ## Requisitos - Gerenciador de Browser ## Passos para começar 1. **Pegue a URL base** Vá hasta OpenRouter, clique em `Docs`. Journe abaixo ligeiramente e copie a URL do código de exemplo. 2. **Adicione a URL base no Flow-wise** Na compartilhada, adicione a URL copiada a URL de Base na revolha do Flow-wise. 3. **Specifique o nome do modelo** É **extremamente importante** especificar o nome do modelo corretamente, especialmente se você está planejando usar modelos gratuitos. 4. **Escolha o modelo** Digite o nome do modelo desejado (por exemplo, `llama 3. 2`) e adicione-o ao Flow-wise. 5. **Salve o fluxo** Salve o fluxo antes de prosseguir com a configuração do seu assistente. 6. **Yes, Open Router também suporta tool calling. ** Encontre as seções abaixo que desejar utilizar para maiores funcionalidades. --- # Mostrando modelos de uso caso Aqui haverá dois exemplos de uso de um modelo. ## Uso de um modelo livre: Upload de Arquivo O `upload de arquivos` permite que o usuário faça upload de um arquivo de sua máquina, após o que ele poderá fazer perguntas sobre esse arquivo, usando a conexão aberta de OpenRouter. Para modelos livres, o `llama 3. 2` é ideal para ser utilizado. 1. **Adicione o modelo ao Its Flowy Assistente** Copie o modelo selecionando o botão de cópia ou adicione o nome do modelo usando a cadeia de caracteres apresentada, depois adicione-o ao seu recurso It’s Flowy Assistente. 2. **Salve o fluxo de trabalho e uploade o documento desejado** Salve o fluxo de trabalho e use um documento do finder para fazer o upload no espaço desativado para upload. Use o fatecmit apresentado para fazer a comprovação da carga ao servidor. 3. **Pergunte ao seu assistente** Pergunte algo ao seu assistente, como `Qual denominação financeira foi a de Apple em 2023? ` E o resultado e retornado. ## Utilização de um modelo padrão: Mudando de modelo Para trocar o modelo `llama 3` por um `Claude 3` ou outro modelo, como GPT 4. 0, não é preciso alterar neste nó completo. 1. **Busque o modelo desejado** Vá até Open Router, digite o nome do modelo desejado (por exemplo, `GPT 4. 0`) e adicione-o à sua conexão. 2. **Troque o modelo atual pelo modelo desejado** Troque `llama 3` pelo novo modelo adicionado em sua compartilhada. Por exemplo `GPT 4. 0`. 3. **Salve as alterações** Salve suas alterações, para continuar utilizando esse novo modelo. 4. **Faça a confirmação da mudança** Verifique se seu título está indicando o novo modelo e confirme se ele está funcionando corretamente. ## Uso do MS-DOS Porque o documento original não fornece informações sobre o uso do MS-DOS, será fornecido aqui uma