# Configure AI Agents para LLMs de terceiros

import DocButton from '~/components/webkit/DocButton.vue';
import Tag from '~/components/webkit/Tag.vue';

Esta arquitetura descreve um agente de IA no edge que consome Third Party LLM por API, armazena o estado no SQL Database e prioriza latência mínima.


## Diagrama de arquitetura de AI Agent da Azion com integração Third party

![AI Agent with Third-Party LLM Architecture Diagram](/assets/docs/images/uploads/diagram-3rd-party-agent.png)

<p class="text-center text-sm"><b>Figura 1.</b> Diagrama de arquitetura do agente de IA com um Third Party LLM. </p>

### Fluxo de dados

1. Uma requisição chega à Plataforma Web da Azion.
2. A Aplicação Frontend serve a interface do usuário (com arquivos estáticos do Object Storage, ex.: CSS, HTML, etc.).
3. A aplicação frontend envia uma requisição de API para a function backend.
4. A function backend lê/escreve o estado do chat no SQL para persistência e contexto, então executa o agente LangGraph e transmite a resposta para o cliente.
5. O agente chama Third Party LLMs, processa a entrada do usuário usando dados do banco de dados para formular uma resposta, e a envia de volta ao usuário pelo mesmo caminho.
6. A aplicação Frontend exibe a resposta para o usuário.

### Componentes

- **[Applications](https://www.azion.com/pt-br/documentacao/produtos/build/applications/)**: uma aplicação na Azion que hospeda o agente de IA.
- **[Functions](https://www.azion.com/pt-br/documentacao/produtos/build/applications/functions/)**: uma função serverless que contém a lógica do agente de IA.
- **[Object Storage](https://www.azion.com/pt-br/documentacao/produtos/store/object-storage/)**: serviço de armazenamento de objetos da Azion para armazenar os dados que o agente usa para responder às perguntas.
- **[SQL Database](https://www.azion.com/pt-br/documentacao/produtos/store/sql-database/)**: banco de dados da Azion para armazenar o estado do chat e documentos.
- **Third Party LLM**: serviço de LLM (ex.: OpenAI ou Anthropic).

---

## Implementação

Utilize o [LangGraph AI Agent Boilerplate](/pt-br/documentacao/produtos/guias/langgraph-ai-agent-boilerplate/) para montar rapidamente um backend em LangGraph e uma base SQL que garante persistência confiável de estado e documentos.

Você pode obter e configurar seu template pelo Azion Console. Para implantá-lo facilmente no edge, clique no botão abaixo.

<DocButton
    label="Implantar"
    href="https://console.azion.com/create/azion/langgraph-agent-boilerplate"
    icon="ai ai-azion"
    size="medium"
/>

1. Acesse o Azion Console.
2. Clique em `+ Create` para abrir a página de templates.
3. Selecione `LangGraph AI Agent Boilerplate`.
4. Conecte seu GitHub, defina o nome do agente e informe as chaves necessárias (ex.: OpenAI API Key).
5. Escolha o método de autenticação (No Auth, Basic, Clerk) e finalize com `Deploy`.
6. Aguarde a propagação e acesse o domínio `your-url.map.azionedge.net` (ou seu domínio personalizado).

### Upload de arquivos na plataforma

Uma vez o processo acima foi implementado, seu banco de dados já está configurado e pronto para uso. 
Vamos carregar os documentos que o agente utilizará como contexto. 

- Clone localmente o backend do template implementado na sua conta do Github.
- Crie um arquivo .env com as configurações necessárias para o backend do template.

```bash
ZION_TOKEN='your_azion_personal_token'
OPENAI_API_KEY='API_KEY'
OPENAI_MODEL= 'model'
EMBEDDING_MODEL= 'embedding-model'

# SQL Database and table names. Usually, table names are not changed,
# and the database name is the name of your agent + database: agent_name_database
MESSAGE_STORE_DB_NAME='youragent-database'
MESSAGE_STORE_TABLE_NAME='messages'
VECTOR_STORE_DB_NAME='youragent-database'
VECTOR_STORE_TABLE_NAME='vectors'

# Optional: Langsmith to trace the requests and responses
LANGSMITH_API_KEY=
LANGCHAIN_PROJECT=
LANGCHAIN_TRACING_V2=false

# Optional: Clerk authentication with your frontend
CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
```
- Insira os arquivos desejados na subpasta `files` do diretório `migrations`. Se a pasta não existir, crie-a. Atualmente, são suportados arquivos PDF, MD, JSON e TXT.
- No terminal, vá para a pasta `migrations` e execute o comando `yarn setup` para criar as tabelas no banco de dados.
- Em seguida, execute o comando `yarn upload-docs` para fazer upload dos arquivos para o Object Storage.

:::note
Este template usa [Application Accelerator](/pt-br/documentacao/produtos/build/applications/application-accelerator/), [Functions](/pt-br/documentacao/produtos/build/applications/functions/) e [SQL Database](/pt-br/documentacao/produtos/store/sql-database/), e pode gerar custos relacionados ao uso. Verifique a [página de preços](https://www.azion.com/pt-br/precos/) para obter mais informações.
:::
---

## Guia de Referência

- [Guia de Referência - Como integrar um agente de IA a Third Party LLM](/pt-br/documentacao/produtos/guias/langgraph-ai-agent-boilerplate/)

## Documentação Relacionada

- [Object Storage](/pt-br/documentacao/produtos/store/object-storage/)
- [SQL Database](/pt-br/documentacao/produtos/store/sql-database/)
- [Como configurar um domínio personalizado](/pt-br/documentacao/produtos/guias/configurar-dominio/)
- [Azion GitHub App](/pt-br/documentacao/produtos/guias/azion-github-app/)
- [Vector Search com SQL Database](/pt-br/documentacao/produtos/guias/edge-sql-vector-search/)