azure-ai-agents-persistent-java
Permite criar e gerenciar agentes de IA com conversas e ferramentas. Ajuda a construir sistemas de IA mais complexos e interativos.
O que ela faz
Este é um kit de ferramentas para programadores Java criarem e gerenciarem agentes de inteligência artificial que lembram conversas passadas. Ele permite que os agentes tenham 'memória' e continuem diálogos.
Quando usar
- ✓Quando você quer que um robô de chat lembre o que foi dito antes.
- ✓Ao criar um assistente virtual que precisa manter o contexto de uma conversa.
- ✓Para desenvolver aplicações onde a IA precisa interagir de forma contínua.
Exemplo do que pedir para a IA
“Como faço para criar um agente de IA que se lembre de nossas conversas anteriores em Java?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você usa um código especial (SDK) em Java para dizer ao sistema como criar um agente, iniciar uma conversa (thread), enviar mensagens e obter as respostas. O sistema gerencia a 'memória' do agente para você.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-ai-agents-persistent-javaOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-ai-agents-persistent-java/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
SDK Persistente de Agentes de IA do Azure para Java
SDK de baixo nível para criar e gerenciar agentes de IA persistentes com threads, mensagens, execuções e ferramentas.
Instalação
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-agents-persistent</artifactId>
<version>1.0.0-beta.2</version>
</dependency>
Variáveis de Ambiente
export PROJECT_ENDPOINT="https://<resource>.services.ai.azure.com/api/projects/<project>"
export MODEL_DEPLOYMENT_NAME="gpt-4o-mini"
Autenticação
import com.azure.ai.agents.persistent.PersistentAgentsClient;
import com.azure.ai.agents.persistent.PersistentAgentsClientBuilder;
import com.azure.ai.agents.persistent.*;
import com.azure.ai.agents.persistent.models.*;
import com.azure.core.http.rest.PagedIterable;
import com.azure.identity.DefaultAzureCredentialBuilder;
String endpoint = System.getenv("PROJECT_ENDPOINT");
PersistentAgentsClient client = new PersistentAgentsClientBuilder()
.endpoint(endpoint)
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
String modelDeploymentName = System.getenv("MODEL_DEPLOYMENT_NAME");
PersistentAgentsAdministrationClient administration = client.getPersistentAgentsAdministrationClient();
ThreadsClient threads = client.getThreadsClient();
MessagesClient messageClient = client.getMessagesClient();
RunsClient runs = client.getRunsClient();
Conceitos Principais
O SDK Persistente de Agentes de IA do Azure fornece uma API de baixo nível para gerenciar agentes persistentes que podem ser reutilizados entre sessões.
Hierarquia de Clientes
| Cliente | Propósito |
|---|---|
PersistentAgentsClient |
Cliente síncrono para operações de agente |
PersistentAgentsAsyncClient |
Cliente assíncrono para operações de agente |
Fluxo de Trabalho Principal
1. Criar Agente
// Create agent with tools
PersistentAgent agent = administration.createAgent(
new CreateAgentOptions(modelDeploymentName)
.setName("Math Tutor")
.setInstructions("You are a personal math tutor.")
);
2. Criar Thread
PersistentAgentThread thread = threads.createThread();
3. Adicionar Mensagem
messageClient.createMessage(
thread.getId(),
MessageRole.USER,
"I need help with equations."
);
4. Executar Agente
ThreadRun run = runs.createRun(new CreateRunOptions(thread.getId(), agent.getId()));
// Bound polling; a terminal non-success state is not a completed answer.
long deadline = System.nanoTime() + java.util.concurrent.TimeUnit.SECONDS.toNanos(60);
while (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) {
if (System.nanoTime() > deadline) {
throw new IllegalStateException("Run polling timed out; inspect/cancel the owned run separately");
}
Thread.sleep(500);
run = runs.getRun(thread.getId(), run.getId());
}
Verifique o status resultante antes de ler uma resposta final: requires_action precisa de um manipulador de saída de ferramenta autorizado; failed, cancelled, expired ou outros estados não bem-sucedidos devem ser relatados explicitamente. Um tempo limite de sondagem não cancela a execução na nuvem.
5. Obter Resposta
PagedIterable<ThreadMessage> messages = messageClient.listMessages(thread.getId());
for (ThreadMessage message : messages) {
System.out.println(message.getRole() + ": " + message.getContent());
}
6. Limpeza
threads.deleteThread(thread.getId());
administration.deleteAgent(agent.getId());
Melhores Práticas
- Use DefaultAzureCredential para autenticação em produção
- Sonde com atrasos apropriados — 500ms recomendado entre verificações de status
- Limpe os recursos — Exclua threads e agentes quando terminar
- Manipule todos os status de execução — Verifique se há RequiresAction, Failed, Cancelled
- Use o cliente assíncrono para melhor taxa de transferência em cenários de alta concorrência
Tratamento de Erros
import com.azure.core.exception.HttpResponseException;
try {
PersistentAgent exampleAgent = administration.createAgent(
new CreateAgentOptions(modelDeploymentName).setName("Example").setInstructions("Answer briefly"));
} catch (HttpResponseException e) {
System.err.println("Error: " + e.getResponse().getStatusCode() + " - " + e.getMessage());
}
Links de Referência
| Recurso | URL |
|---|---|
| Pacote Maven | https://central.sonatype.com/artifact/com.azure/azure-ai-agents-persistent |
| Código Fonte no GitHub | https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-agents-persistent |
…
Perguntas frequentes
O que são 'threads', 'mensagens' e 'runs'?
'Threads' são as conversas. 'Mensagens' são o que você e o agente dizem. 'Runs' são os momentos em que o agente processa as mensagens para gerar uma resposta.
Preciso saber muito sobre IA para usar isso?
Este kit é para programadores. Ele simplifica o uso de IA, mas você ainda precisa saber programar em Java.
O que acontece se o programa der erro?
O sistema pode mostrar mensagens de erro. É importante verificar o status de cada ação e limpar os recursos criados para evitar custos desnecessários.
Detalhes
Descrição original do autor
Azure AI Agents Persistent SDK for Java. Low-level SDK for creating and managing AI agents with threads, messages, runs, and tools.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2264
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC