Partager via


Démarrage rapide de Microsoft Foundry

Note

Ce document fait référence au portail Microsoft Foundry (classique).

🔄 Accédez à la documentation Microsoft Foundry (nouveau) si vous utilisez le nouveau portail.

Note

Ce document fait référence au portail Microsoft Foundry (nouveau).

Dans ce guide de démarrage rapide, vous utilisez Microsoft Foundry pour :

  • Création d’un projet
  • Déployer un modèle
  • Exécuter une saisie semi-automatique de conversation
  • Créer et exécuter un agent
  • Charger des fichiers dans l’agent

Dans ce guide de démarrage rapide, vous utilisez Microsoft Foundry pour :

  • Création d’un projet
  • Déployer un modèle
  • Préparer le code - installer les packages nécessaires et s’authentifier
  • Discuter avec un modèle
  • Créer un agent
  • Discuter avec un agent

Le Kit de développement logiciel (SDK) Microsoft Foundry est disponible dans plusieurs langages, notamment Python, Java, TypeScript et C#. Ce guide de démarrage rapide fournit des instructions pour chacune de ces langues.

Tip

Le reste de cet article montre comment créer et utiliser un projet Foundry. Consultez démarrage rapide : Prise en main de Microsoft Foundry (projets Hub) si vous souhaitez utiliser un projet hub à la place. Quel type de projet dois-je avoir ?

Prerequisites

Important

Avant de commencer, assurez-vous que votre environnement de développement est prêt.
Ce guide de démarrage rapide se concentre sur des étapes spécifiques au scénario , telles que l’installation, l’authentification et l’exécution d’exemples de code.

Créer des ressources

Dans le portail, vous pouvez explorer un catalogue complet de modèles de pointe de nombreux fournisseurs différents. Pour ce tutoriel, recherchez, puis sélectionnez le modèle gpt-4o .

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).

  2. Si vous êtes dans un projet, sélectionnez Microsoft Foundry dans la barre de navigation en haut à gauche pour quitter le projet. Vous en créerez un en un instant.

  3. Dans la page d’accueil ou le catalogue de modèles, sélectionnez gpt-4o (ou gpt-4o-mini).

    Capture d’écran montrant comment démarrer avec un modèle dans le portail Foundry.

  4. Sélectionnez Utiliser ce modèle. Lorsque vous y êtes invité, entrez un nouveau nom de projet et sélectionnez Créer.

  5. Vérifiez le nom du déploiement et sélectionnez Créer.

  6. Sélectionnez ensuite Connecter et déployer après avoir sélectionné un type de déploiement.

  7. Sélectionnez Ouvrir dans l'aire de jeux à partir de la page de déploiement une fois celui-ci déployé.

  8. Vous atterrissez dans l'aire de jeu Chat avec le modèle pré-déployé et prêt à l'emploi.

Si vous créez un agent, vous pouvez commencer par créer un agent. Les étapes sont similaires, mais dans un ordre différent. Une fois le projet créé, vous arrivez sur l'espace de travail Agent au lieu de l'espace de travail Chat.

Vous allez commencer dans le portail Microsoft Foundry pour créer un projet et déployer un modèle. Ce guide de démarrage rapide utilise le modèle gpt-4-1-mini , mais vous pouvez utiliser n’importe quel modèle pris en charge à partir de plusieurs fournisseurs.

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).
    Connectez-vous à Microsoft Foundry. Vérifiez que le bouton bascule New Foundry est activé. Ces étapes font référence à Foundry (nouveau).
  2. Les projets aident à organiser votre travail. Le projet sur lequel vous travaillez apparaît dans le coin supérieur gauche.
  3. Pour créer un projet, sélectionnez le nom du projet, puis créez un projet.
  4. Donnez un nom à votre projet, puis sélectionnez Créer un projet.
  5. Déployez maintenant un modèle dans le projet :
    1. Sélectionnez Découvrir dans le volet de navigation supérieur droit.
    2. Sélectionnez Modèles.
    3. Recherchez le modèle gpt-4.1-mini .
    4. Sélectionnez Déployer>les paramètres par défaut pour l’ajouter à votre projet.

Les modèles Foundry permettent aux clients de consommer les modèles les plus puissants des fournisseurs de modèles phares à l’aide d’un point de terminaison unique et d’informations d’identification. Cela signifie que vous pouvez basculer entre les modèles et les consommer à partir de votre application sans modifier une seule ligne de code.

Vous êtes maintenant prêt à passer à l’interaction avec votre modèle et à la création d’un agent.

Préparez-vous à coder

Tip

Le code utilise l’API Projets Foundry (classique) et est incompatible avec les projets Foundry (nouveau) API (préversion). Basculez vers la documentation Foundry (nouvelle) pour la version de l’API des projets Foundry (nouvelle) (version préliminaire).

  1. Installez ces packages :

    pip install openai azure-identity azure-ai-projects==1.0.0
    
  2. Les modèles Microsoft Foundry permettent aux clients de consommer les modèles les plus puissants des fournisseurs de modèles phares à l’aide d’un point de terminaison unique et d’informations d’identification. Cela signifie que vous pouvez basculer entre les modèles et les consommer à partir de votre application sans modifier une seule ligne de code.

    Copiez le point de terminaison du projet Foundry dans la section Vue d’ensemble de votre projet. Vous l’utiliserez en un instant.

    Capture d’écran montrant la vue d’ensemble du projet Foundry.

    Tip

    Si vous ne voyez pas le point de terminaison du projet Foundry, vous utilisez un projet hub. (Voir Types de projets). Basculez vers un projet Foundry ou utilisez les étapes précédentes pour en créer un.

    1. Sélectionnez Accueil dans le volet de navigation supérieur droit.
    2. Sélectionnez Keys et copiez l'Endpoint. Vous l’utiliserez en un instant.
  3. Veillez à vous connecter à l’aide de la commande CLI az login (ou az login --use-device-code) pour vous authentifier avant d’exécuter vos scripts Python.

Suivez le code ci-dessous ou obtenez le code :

Important

Le code de cet article utilise des packages actuellement en préversion. Cette version préliminaire est fournie sans contrat de niveau de service, et nous la déconseillons pour les charges de travail en production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’utilisation supplémentaires pour les préversions de Microsoft Azure.

Définir des variables d’environnement

Stockez le point de terminaison en tant que variable d’environnement. Définissez également ces valeurs à utiliser dans vos scripts.

  1. Copiez votre point de terminaison à partir de l’écran d’accueil. Vous l’utiliserez à l’étape suivante.

    Capture d’écran de l’écran d’accueil des modèles Microsoft Foundry montrant l’URL du point de terminaison et le bouton Copier.

  2. Définissez ces variables d’environnement à utiliser dans vos scripts :

    PROJECT_ENDPOINT=<endpoint copied from welcome screen>
    AGENT_NAME="MyAgent"
    MODEL_DEPLOYMENT_NAME="gpt-4.1-mini"
    

Installer et authentifier

Tip

Le code utilise les projets Foundry (nouveau) API (version préliminaire) et est incompatible avec la version de l’API des projets Foundry (classique). Basculez vers la documentation Foundry (classique) pour la version API des projets Foundry (classique).

  1. Installez ces packages, y compris la préversion de azure-ai-projects. Cette version utilise l’API Projets Foundry (nouveau) (préversion).

    pip install azure-ai-projects --pre
    pip install openai azure-identity python-dotenv
    
  2. Veillez à vous connecter à l’aide de la commande CLI az login (ou az login --use-device-code) pour vous authentifier avant d’exécuter vos scripts Python.

Suivez le code ci-dessous ou obtenez le code :

Discuter avec un modèle

Les achèvements de conversation sont le bloc de construction de base des applications IA. À l’aide des complétions de chat, vous pouvez envoyer une liste de messages et obtenir une réponse du modèle.

Tip

Le code utilise l’API Projets Foundry (classique) et est incompatible avec les projets Foundry (nouveau) API (préversion). Basculez vers la documentation Foundry (nouvelle) pour la version de l’API des projets Foundry (nouvelle) (version préliminaire).

Remplacez votre point de terminaison pour le endpoint dans le code suivant :

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

models = project.get_openai_client(api_version="2024-10-21")
response = models.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "system", "content": "You are a helpful writing assistant"},
        {"role": "user", "content": "Write me a poem about flowers"},
    ],
)

print(response.choices[0].message.content)

L’interaction avec un modèle est le bloc de construction de base des applications IA. Envoyez une entrée et recevez une réponse du modèle :

Tip

Le code utilise les projets Foundry (nouveau) API (version préliminaire) et est incompatible avec la version de l’API des projets Foundry (classique). Basculez vers la documentation Foundry (classique) pour la version API des projets Foundry (classique).

import os
from dotenv import load_dotenv
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient

load_dotenv()

print(f"Using PROJECT_ENDPOINT: {os.environ['PROJECT_ENDPOINT']}")
print(f"Using MODEL_DEPLOYMENT_NAME: {os.environ['MODEL_DEPLOYMENT_NAME']}")

project_client = AIProjectClient(
    endpoint=os.environ["PROJECT_ENDPOINT"],
    credential=DefaultAzureCredential(),
)

openai_client = project_client.get_openai_client()

response = openai_client.responses.create(
    model=os.environ["MODEL_DEPLOYMENT_NAME"],
    input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")

Créer un agent

Créez un agent à l’aide de votre modèle déployé.

Un agent définit le comportement principal. Une fois créé, il garantit des réponses cohérentes dans les interactions utilisateur sans répéter les instructions à chaque fois. Vous pouvez mettre à jour ou supprimer des agents à tout moment.

Tip

Le code utilise les projets Foundry (nouveau) API (version préliminaire) et est incompatible avec la version de l’API des projets Foundry (classique). Basculez vers la documentation Foundry (classique) pour la version API des projets Foundry (classique).

import os
from dotenv import load_dotenv
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import PromptAgentDefinition

load_dotenv()

project_client = AIProjectClient(
    endpoint=os.environ["PROJECT_ENDPOINT"],
    credential=DefaultAzureCredential(),
)

agent = project_client.agents.create_version(
    agent_name=os.environ["AGENT_NAME"],
    definition=PromptAgentDefinition(
        model=os.environ["MODEL_DEPLOYMENT_NAME"],
        instructions="You are a helpful assistant that answers general questions",
    ),
)
print(f"Agent created (id: {agent.id}, name: {agent.name}, version: {agent.version})")

Discuter avec un agent

Créez un agent et discutez avec lui.

Tip

Le code utilise l’API Projets Foundry (classique) et est incompatible avec les projets Foundry (nouveau) API (préversion). Basculez vers la documentation Foundry (nouvelle) pour la version de l’API des projets Foundry (nouvelle) (version préliminaire).

Remplacez votre point de terminaison pour le endpoint dans le code suivant :

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from azure.ai.agents.models import ListSortOrder, FilePurpose

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

agent = project.agents.create_agent(
    model="gpt-4o",
    name="my-agent",
    instructions="You are a helpful writing assistant")

thread = project.agents.threads.create()
message = project.agents.messages.create(
    thread_id=thread.id, 
    role="user", 
    content="Write me a poem about flowers")

run = project.agents.runs.create_and_process(thread_id=thread.id, agent_id=agent.id)
if run.status == "failed":
    # Check if you got "Rate limit is exceeded.", then you want to get more quota
    print(f"Run failed: {run.last_error}")

# Get messages from the thread
messages = project.agents.messages.list(thread_id=thread.id)

# Get the last message from the sender
messages = project.agents.messages.list(thread_id=thread.id, order=ListSortOrder.ASCENDING)
for message in messages:
    if message.run_id == run.id and message.text_messages:
        print(f"{message.role}: {message.text_messages[-1].text.value}")

# Delete the agent once done
project.agents.delete_agent(agent.id)
print("Deleted agent")

Utilisez l’agent créé précédemment nommé « MyAgent » pour interagir en posant une question et un suivi associé. La conversation maintient l’historique de ces interactions.

Tip

Le code utilise les projets Foundry (nouveau) API (version préliminaire) et est incompatible avec la version de l’API des projets Foundry (classique). Basculez vers la documentation Foundry (classique) pour la version API des projets Foundry (classique).

import os
from dotenv import load_dotenv
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient

load_dotenv()

project_client = AIProjectClient(
    endpoint=os.environ["PROJECT_ENDPOINT"],
    credential=DefaultAzureCredential(),
)

agent_name = os.environ["AGENT_NAME"]
openai_client = project_client.get_openai_client()

# Optional Step: Create a conversation to use with the agent
conversation = openai_client.conversations.create()
print(f"Created conversation (id: {conversation.id})")

# Chat with the agent to answer questions
response = openai_client.responses.create(
    conversation=conversation.id, #Optional conversation context for multi-turn
    extra_body={"agent": {"name": agent_name, "type": "agent_reference"}},
    input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")

# Optional Step: Ask a follow-up question in the same conversation
response = openai_client.responses.create(
    conversation=conversation.id,
    extra_body={"agent": {"name": agent_name, "type": "agent_reference"}},
    input="And what is the capital city?",
)
print(f"Response output: {response.output_text}")

Ajouter des fichiers à l’agent

Les agents disposent de fonctionnalités puissantes grâce à l’utilisation d’outils. Ajoutons un outil de recherche de fichiers qui nous permet d’effectuer une récupération des connaissances.

Tip

Le code utilise l’API Projets Foundry (classique) et est incompatible avec les projets Foundry (nouveau) API (préversion). Basculez vers la documentation Foundry (nouvelle) pour la version de l’API des projets Foundry (nouvelle) (version préliminaire).

Remplacez votre point de terminaison pour le endpoint dans le code suivant :

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from azure.ai.agents.models import ListSortOrder, FileSearchTool

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

# Upload file and create vector store
file = project.agents.files.upload(file_path="./product_info_1.md", purpose=FilePurpose.AGENTS)
vector_store = project.agents.vector_stores.create_and_poll(file_ids=[file.id], name="my_vectorstore")

# Create file search tool and agent
file_search = FileSearchTool(vector_store_ids=[vector_store.id])
agent = project.agents.create_agent(
    model="gpt-4o",
    name="my-assistant",
    instructions="You are a helpful assistant and can search information from uploaded files",
    tools=file_search.definitions,
    tool_resources=file_search.resources,
)

# Create thread and process user message
thread = project.agents.threads.create()
project.agents.messages.create(thread_id=thread.id, role="user", content="Hello, what Contoso products do you know?")
run = project.agents.runs.create_and_process(thread_id=thread.id, agent_id=agent.id)

# Handle run status
if run.status == "failed":
    print(f"Run failed: {run.last_error}")

# Print thread messages
messages = project.agents.messages.list(thread_id=thread.id, order=ListSortOrder.ASCENDING)
for message in messages:
    if message.run_id == run.id and message.text_messages:
        print(f"{message.role}: {message.text_messages[-1].text.value}")

# Cleanup resources
project.agents.vector_stores.delete(vector_store.id)
project.agents.files.delete(file_id=file.id)
project.agents.delete_agent(agent.id)

Nettoyer les ressources

Si vous n’avez plus besoin des ressources que vous avez créées, supprimez le groupe de ressources associé à votre projet.

Dans le portail Microsoft Foundry, sélectionnez le nom de votre projet dans le coin supérieur droit. Sélectionnez ensuite le lien du groupe de ressources pour l’ouvrir dans le portail Azure. Sélectionnez le groupe de ressources, puis sélectionnez Supprimer. Vérifiez que vous souhaitez supprimer le groupe de ressources.

Dans le portail Azure, recherchez et sélectionnez votre groupe de ressources. Sélectionnez Supprimer et confirmer pour supprimer le groupe de ressources et toutes ses ressources associées.

Étape suivante