azure-ai-agents-persistent-java
microsoft/skills
Créez et gérez des agents IA persistants à l'aide de threads, de messages, d'exécutions et d'outils grâce au SDK Azure pour Java.
...Développer toutSDK persistant Azure AI Agents pour Java
SDK de bas niveau permettant de créer et de gérer des agents IA persistants à l'aide de threads, de messages, d'exécutions et d'outils.
Installation
com.azure
azure-ai-agents-persistent
1.0.0-beta.1
Variables d'environnement
PROJECT_ENDPOINT=https://.services.ai.azure.com/api/projects/ # Requis pour la configuration du projet
MODEL_DEPLOYMENT_NAME=gpt-4o-mini # Requis pour la sélection du modèle d'agent
AZURE_TOKEN_CREDENTIALS=prod # Requis uniquement si DefaultAzureCredential est utilisé en production
Authentification
import com.azure.ai.agents.persistent.PersistentAgentsClient;
import com.azure.ai.agents.persistent.PersistentAgentsClientBuilder;
import com.azure.core.credential.TokenCredential;
import com.azure.identity.AzureIdentityEnvVars;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.identity.ManagedIdentityCredentialBuilder;
String endpoint = System.getenv("PROJECT_ENDPOINT");
TokenCredential credential = new DefaultAzureCredentialBuilder()
.requireEnvVars(AzureIdentityEnvVars.AZURE_TOKEN_CREDENTIALS)
.build();
// Ou utilisez directement des informations d'identification spécifiques en production :
// Voir https://learn.microsoft.com/java/api/overview/azure/identity-readme?view=azure-java-stable#credential-classes
// TokenCredential credential = new ManagedIdentityCredentialBuilder().build();
PersistentAgentsClient client = new PersistentAgentsClientBuilder()
.endpoint(endpoint)
.credential(credential)
.buildClient();
Concepts clés
Le SDK Azure AI Agents Persistent fournit une API de bas niveau permettant de gérer des agents persistants pouvant être réutilisés d’une session à l’autre.
Hiérarchie du client
| Client | Objectif |
|---|---|
PersistentAgentsClient |
Client de synchronisation pour les opérations des agents |
PersistentAgentsAsyncClient |
Client asynchrone pour les opérations des agents |
Flux de travail principal
1. Créer un agent
// Créer un agent avec des outils
PersistentAgent agent = client.createAgent(
modelDeploymentName,
"Math Tutor",
"Vous êtes un tuteur particulier en mathématiques."
);
2. Créer un thread
PersistentAgentThread thread = client.createThread();
3. Ajouter un message
client.createMessage(
thread.getId(),
MessageRole.USER,
"J'ai besoin d'aide pour des équations."
);
4. Exécuter l'agent
ThreadRun run = client.createRun(thread.getId(), agent.getId());
// Vérifier si l'exécution est terminée
while (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) {
Thread.sleep(500);
run = client.getRun(thread.getId(), run.getId());
}
5. Récupérer la réponse
PagedIterable messages = client.listMessages(thread.getId());
for (PersistentThreadMessage message : messages) {
System.out.println(message.getRole() + ": " + message.getContent());
}
6. Nettoyage
client.deleteThread(thread.getId());
client.deleteAgent(agent.getId());
Bonnes pratiques
- Utilisez DefaultAzureCredential pour l’authentification en production
- Effectuez des interrogations avec des délais appropriés — 500 ms recommandés entre chaque vérification d’état
- Nettoyez les ressources — Supprimez les threads et les agents une fois l'opération terminée
- Gérer tous les états d'exécution — Vérifier les états « RequiresAction », « Failed » et « Cancelled »
- Utilisez un client asynchrone pour un meilleur débit dans les scénarios à forte concurrence
Gestion des erreurs
import com.azure.core.exception.HttpResponseException;
try {
PersistentAgent agent = client.createAgent(modelName, name, instructions);
} catch (HttpResponseException e) {
System.err.println("Erreur : " + e.getResponse().getStatusCode() + " - " + e.getMessage());
}
Liens de référence
| Ressource | URL |
|---|---|
| Package Maven | https://central.sonatype.com/artifact/com.azure/azure-ai-agents-persistent |
| Source GitHub | https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-agents-persistent |
---
name: azure-ai-agents-persistent-java
description: Create and manage persistent AI agents with threads, messages, runs, and tools using the Azure SDK for Java.
license: MIT
---
# Azure AI Agents Persistent SDK for Java
Low-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.
## Installation
```xml
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-agents-persistent</artifactId>
<version>1.0.0-beta.1</version>
</dependency>
```
## Environment Variables
```bash
PROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project> # Required for project configuration
MODEL_DEPLOYMENT_NAME=gpt-4o-mini # Required for agent model selection
AZURE_TOKEN_CREDENTIALS=prod # Required only if DefaultAzureCredential is used in production
```
## Authentication
```java
import com.azure.ai.agents.persistent.PersistentAgentsClient;
import com.azure.ai.agents.persistent.PersistentAgentsClientBuilder;
import com.azure.core.credential.TokenCredential;
import com.azure.identity.AzureIdentityEnvVars;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.identity.ManagedIdentityCredentialBuilder;
String endpoint = System.getenv("PROJECT_ENDPOINT");
TokenCredential credential = new DefaultAzureCredentialBuilder()
.requireEnvVars(AzureIdentityEnvVars.AZURE_TOKEN_CREDENTIALS)
.build();
// Or use a specific credential directly in production:
// See https://learn.microsoft.com/java/api/overview/azure/identity-readme?view=azure-java-stable#credential-classes
// TokenCredential credential = new ManagedIdentityCredentialBuilder().build();
PersistentAgentsClient client = new PersistentAgentsClientBuilder()
.endpoint(endpoint)
.credential(credential)
.buildClient();
```
## Key Concepts
The Azure AI Agents Persistent SDK provides a low-level API for managing persistent agents that can be reused across sessions.
### Client Hierarchy
| Client | Purpose |
|--------|---------|
| `PersistentAgentsClient` | Sync client for agent operations |
| `PersistentAgentsAsyncClient` | Async client for agent operations |
## Core Workflow
### 1. Create Agent
```java
// Create agent with tools
PersistentAgent agent = client.createAgent(
modelDeploymentName,
"Math Tutor",
"You are a personal math tutor."
);
```
### 2. Create Thread
```java
PersistentAgentThread thread = client.createThread();
```
### 3. Add Message
```java
client.createMessage(
thread.getId(),
MessageRole.USER,
"I need help with equations."
);
```
### 4. Run Agent
```java
ThreadRun run = client.createRun(thread.getId(), agent.getId());
// Poll for completion
while (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) {
Thread.sleep(500);
run = client.getRun(thread.getId(), run.getId());
}
```
### 5. Get Response
```java
PagedIterable<PersistentThreadMessage> messages = client.listMessages(thread.getId());
for (PersistentThreadMessage message : messages) {
System.out.println(message.getRole() + ": " + message.getContent());
}
```
### 6. Cleanup
```java
client.deleteThread(thread.getId());
client.deleteAgent(agent.getId());
```
## Best Practices
1. **Use DefaultAzureCredential** for production authentication
2. **Poll with appropriate delays** — 500ms recommended between status checks
3. **Clean up resources** — Delete threads and agents when done
4. **Handle all run statuses** — Check for RequiresAction, Failed, Cancelled
5. **Use async client** for better throughput in high-concurrency scenarios
## Error Handling
```java
import com.azure.core.exception.HttpResponseException;
try {
PersistentAgent agent = client.createAgent(modelName, name, instructions);
} catch (HttpResponseException e) {
System.err.println("Error: " + e.getResponse().getStatusCode() + " - " + e.getMessage());
}
```
## Reference Links
| Resource | URL |
|----------|-----|
| Maven Package | https://central.sonatype.com/artifact/com.azure/azure-ai-agents-persistent |
| GitHub Source | https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-agents-persistent |
Tous les fichiers
0 fichiersInstaller azure-ai-agents-persistent-java
Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.
Télécharger le ZIPClonez le dépôt et copiez les fichiers de compétence dans votre projet.
git clone https://github.com/microsoft/skills/tree/main/.github/plugins/azure-sdk-java/skills/azure-ai-agents-persistent-java # Copy SKILL.md to your .claude/skills/ directory
Copier





Maison
