Livre-se das operações com o Elastic Cloud Serverless. Redimensione automaticamente, lide com picos de carga e concentre-se na construção — comece uma avaliação gratuita de 14 dias para testá-lo você mesmo!
Você pode seguir estes guias para criar uma experiência de busca com IA ou buscar em sistemas e softwares empresariais.
Como usar um agente de IA para gerenciar projetos Elasticsearch sem servidor
- Clone o repositório: Baixe o código da ferramenta do GitHub usando
git clone https://github.com/elastic/elasticsearch-labs/supporting-blog-content/serverless-ai-agentae navegue até o diretório comcd serverless-ai-agent. - Configurar ambiente: Crie um ambiente virtual (opcional) com
python -m venv venve ative-o (source venv/bin/activateouvenv\Scripts\activateno Windows). Em seguida, instale os pacotes Python necessários usandopip install -r requirements.txt. - Configure as credenciais: Crie um arquivo
.envna raiz do projeto e preencha-o com o URL da API do Elasticsearch (ES_URL), a chave da API (API_KEY), a região (REGION) e a chave da API do OpenAI (OPENAI_API_KEY). - Execute a ferramenta: Execute a ferramenta executando
python main.pyem seu terminal. Isso iniciará o agente de IA e exibirá uma tela para que você insira seus comandos. - Gerencie projetos com linguagem natural: interaja com a ferramenta usando comandos em inglês simples, como "Criar um projeto serverless chamado my_project", "Obter o status do projeto serverless chamado my_project" ou "Excluir o projeto serverless chamado my_project". A IA interpretará seus comandos e executará as funções correspondentes.
Histórico
Esta pequena ferramenta de linha de comando permite gerenciar seus projetos Serverless Elasticsearch em linguagem simples. Ele se comunica com uma IA (neste caso, a OpenAI) para entender o que você quer dizer e chamar as funções corretas usando o LlamaIndex!
O que o agente de IA Serverless do Elasticsearch pode fazer?
- Criar um projeto: Inicie um novo projeto Elasticsearch sem servidor.
- Excluir um projeto: Remove um projeto existente (sim, ele limpa tudo depois).
- Obtenha o status do projeto: verifique como está o andamento do seu projeto.
- Obtenha detalhes do projeto: Descubra todas as informações relevantes sobre o seu projeto.
Confira o código no GitHub.
Como funciona o agente de IA sem servidor do Elasticsearch
Quando você digita algo como:
"Crie um projeto sem servidor chamado my_project"
…eis o que acontece nos bastidores:
- Entrada e contexto do usuário: Seu comando em linguagem natural é enviado ao agente de IA.
- Descrição das funções: O agente de IA já conhece algumas funções — como create_ess_project, delete_ess_project, get_ess_project_status e get_ess_project_details — porque fornecemos descrições detalhadas. Essas descrições informam à IA o que cada função faz e quais parâmetros elas precisam.
- Processamento LLM: Sua consulta, juntamente com as informações da função, é enviada para o LLM. Isso significa que a IA vê:
- Consulta do usuário: Sua instrução em linguagem simples.
- Funções e descrições disponíveis: Detalhes sobre o que cada ferramenta faz para que você possa escolher a mais adequada.
- Informações de contexto/histórico do chat: Como se trata de uma conversa, o sistema se lembra do que foi dito anteriormente.
- Chamada e resposta de função: A IA determina qual função chamar, passa os parâmetros corretos (como o nome do seu projeto) e, em seguida, a função é executada. A resposta será enviada a você em um formato amigável.
Resumindo, estamos enviando ao LLM tanto sua consulta em linguagem natural quanto uma lista de descrições detalhadas das ferramentas para que ele possa "entender" e escolher a ação correta para sua solicitação.
Configure o agente de IA
Pré-requisitos:
Antes de executar o agente de IA, certifique-se de que a seguinte configuração esteja correta:
- Python (versão 3.7 ou posterior) instalado.
- Configuração de uma conta serverless do Elasticsearch no Elastic Cloud.
- Conta OpenAI para interagir com o modelo de linguagem.
Passos:
1. Clone o repositório:
2. Criar um ambiente virtual (opcional, mas recomendado): Se você estiver enfrentando problemas relacionados ao ambiente, pode configurar um ambiente virtual para isolamento:
3. Instale as dependências: Certifique-se de que todas as dependências necessárias estejam instaladas executando o seguinte comando:
4. Configure seu ambiente: Crie um arquivo .env Arquivo na raiz do projeto com as seguintes variáveis. Aqui está um exemplo de arquivo .env.example para te ajudar:
Certifique-se de que você tem os valores corretos para ES_URL, API_KEY e OPENAI_API_KEY. Você pode encontrar suas chaves de API nos respectivos painéis de serviço.
5. Arquivo de Projetos: A ferramenta usa um arquivo projects.json para armazenar seus mapeamentos de projetos (nomes de projetos para seus detalhes). Este arquivo será criado automaticamente caso ainda não exista.
Executando o agente de IA
Você verá uma mensagem como esta:
Digite o comando e o agente de IA fará a sua mágica! Quando terminar, digite exit ou quit para sair.
Mais alguns detalhes
- Integração com o LLM: O LLM recebe tanto a sua consulta quanto descrições detalhadas de cada função disponível. Isso ajuda a entender o contexto e a decidir, por exemplo, se deve chamar
create_ess_projectoudelete_ess_project. - Descrição das ferramentas: Cada ferramenta de função (criada usando FunctionTool.from_defaults) Possui uma descrição amigável. Essa descrição está incluída no prompt enviado ao LLM para que ele "saiba" quais ações estão disponíveis e o que cada ação espera.
- Persistência: Seus projetos e seus detalhes são salvos em projects.json. Assim você não precisa inserir as informações novamente toda vez.
- Registro detalhado: O agente está configurado para o modo detalhado, o que é ótimo para depuração e para ver como suas instruções são traduzidas em chamadas de função.




