azure-ai-projects-java

I'm ready to translate text to French while preserving Markdown formatting. However, I notice your message appears to be incomplete - it only contains "---" and "|" characters. Please provide the complete text you'd like me to translate, and I'll: - Preserve all Markdown formatting (headings, lists, code blocks, tables, links) - Keep proper nouns, brands, technical identifiers, and commands in English - Return only the translation without preamble Please share the text you want translated.

npx skills add https://github.com/microsoft/skills --skill azure-ai-projects-java

Azure AI Projects SDK for Java

SDK de haut niveau pour la gestion de projets Azure AI Foundry avec accès aux connexions, ensembles de données, index et évaluations.

Installation

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-ai-projects</artifactId>
    <version>1.0.0-beta.1</version>
</dependency>

Variables d'environnement

PROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project>

Authentification

import com.azure.ai.projects.AIProjectClientBuilder;
import com.azure.identity.DefaultAzureCredentialBuilder;

AIProjectClientBuilder builder = new AIProjectClientBuilder()
    .endpoint(System.getenv("PROJECT_ENDPOINT"))
    .credential(new DefaultAzureCredentialBuilder().build());

Hiérarchie des clients

Le SDK fournit plusieurs sous-clients pour différentes opérations :

Client Objectif
ConnectionsClient Énumérer les ressources Azure connectées
DatasetsClient Télécharger des documents et gérer les ensembles de données
DeploymentsClient Énumérer les déploiements de modèles IA
IndexesClient Créer et gérer les index de recherche
EvaluationsClient Exécuter les évaluations de modèles IA
EvaluatorsClient Gérer les configurations d'évaluateurs
SchedulesClient Gérer les opérations planifiées
// Construire les sous-clients à partir du builder
ConnectionsClient connectionsClient = builder.buildConnectionsClient();
DatasetsClient datasetsClient = builder.buildDatasetsClient();
DeploymentsClient deploymentsClient = builder.buildDeploymentsClient();
IndexesClient indexesClient = builder.buildIndexesClient();
EvaluationsClient evaluationsClient = builder.buildEvaluationsClient();

Opérations principales

Lister les connexions

import com.azure.ai.projects.models.Connection;
import com.azure.core.http.rest.PagedIterable;

PagedIterable<Connection> connections = connectionsClient.listConnections();
for (Connection connection : connections) {
    System.out.println("Name: " + connection.getName());
    System.out.println("Type: " + connection.getType());
    System.out.println("Credential Type: " + connection.getCredentials().getType());
}

Lister les index

indexesClient.listLatest().forEach(index -> {
    System.out.println("Index name: " + index.getName());
    System.out.println("Version: " + index.getVersion());
    System.out.println("Description: " + index.getDescription());
});

Créer ou mettre à jour un index

import com.azure.ai.projects.models.AzureAISearchIndex;
import com.azure.ai.projects.models.Index;

String indexName = "my-index";
String indexVersion = "1.0";
String searchConnectionName = System.getenv("AI_SEARCH_CONNECTION_NAME");
String searchIndexName = System.getenv("AI_SEARCH_INDEX_NAME");

Index index = indexesClient.createOrUpdate(
    indexName,
    indexVersion,
    new AzureAISearchIndex()
        .setConnectionName(searchConnectionName)
        .setIndexName(searchIndexName)
);

System.out.println("Created index: " + index.getName());

Accéder aux évaluations OpenAI

Le SDK expose le SDK officiel d'OpenAI pour les évaluations :

import com.openai.services.EvalService;

EvalService evalService = evaluationsClient.getOpenAIClient();
// Utiliser directement les API d'évaluation d'OpenAI

Bonnes pratiques

  1. Utiliser DefaultAzureCredential pour l'authentification en production
  2. Réutiliser le client builder pour créer efficacement plusieurs sous-clients
  3. Gérer la pagination lors de la liste des ressources avec PagedIterable
  4. Utiliser des variables d'environnement pour les noms de connexion et la configuration
  5. Vérifier les types de connexion avant d'accéder aux identifiants

Gestion des erreurs

import com.azure.core.exception.HttpResponseException;
import com.azure.core.exception.ResourceNotFoundException;

try {
    Index index = indexesClient.get(indexName, version);
} catch (ResourceNotFoundException e) {
    System.err.println("Index not found: " + indexName);
} catch (HttpResponseException e) {
    System.err.println("Error: " + e.getResponse().getStatusCode());
}

Liens de référence

Ressource URL
Documentation du produit https://learn.microsoft.com/azure/ai-studio/
Référence API https://learn.microsoft.com/rest/api/aifoundry/aiprojects/
Source GitHub https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects
Exemples https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects/src/samples