Delen via


Snelstartgids voor Microsoft Foundry (klassiek)

Opmerking

Dit document verwijst naar de Microsoft Foundry-portal (klassiek).

🔍 Bekijk de documentatie van Microsoft Foundry (nieuw) voor meer informatie over de nieuwe portal.

In deze quickstart gebruikt u Microsoft Foundry voor het volgende:

  • Een project maken
  • Een model implementeren
  • Een chatvoltooiing uitvoeren
  • Een agent maken en uitvoeren
  • Bestanden uploaden naar de agent

De Microsoft Foundry SDK is beschikbaar in meerdere talen, waaronder Python, Java, TypeScript en C#. Deze quickstart bevat instructies voor elk van deze talen.

Aanbeveling

De rest van dit artikel laat zien hoe u een Foundry-project maakt en gebruikt. Zie quickstart: Aan de slag met Microsoft Foundry (Hub-projecten) als u in plaats daarvan een hubproject wilt gebruiken. Welk type project heb ik nodig?

Vereiste voorwaarden

Belangrijk

Voordat u begint, moet u ervoor zorgen dat uw ontwikkelomgeving gereed is.
Deze quickstart is gericht op scenariospecifieke stappen, zoals SDK-installatie , verificatie en het uitvoeren van voorbeeldcode.

In de portal kunt u een uitgebreide catalogus met geavanceerde modellen van veel verschillende providers verkennen. Zoek en selecteer vervolgens het gpt-4o-model voor deze zelfstudie.

  1. Meld u aan bij Microsoft Foundry. Zorg ervoor dat de wisselknop New Foundry is uitgeschakeld. Deze stappen verwijzen naar Foundry (klassiek).

  2. Als u een project hebt, selecteert u Microsoft Foundry in de linkerbovenhoek om het project te verlaten. Je maakt er zo een nieuwe.

  3. Kies vanaf de landingspagina of modelcatalogusgpt-4o (of gpt-4o-mini).

    Schermopname van het starten met een model in Foundry Portal.

  4. Selecteer Dit model gebruiken. Wanneer u hierom wordt gevraagd, voert u een nieuwe projectnaam in en selecteert u Maken.

  5. Controleer de implementatienaam en selecteer Maken.

  6. Selecteer vervolgens Verbinding maken en implementeren nadat u een implementatietype hebt geselecteerd.

  7. Selecteer Open in playground van de implementatiepagina nadat het is geïmplementeerd.

  8. U komt terecht in de Chat-speeltuin met het vooraf geïmplementeerde model en klaar voor gebruik.

Als u een agent bouwt, kunt u in plaats daarvan beginnen met Een agent maken. De stappen zijn vergelijkbaar, maar in een andere volgorde. Zodra het project is gemaakt, komt u aan bij de Agent-speelplaats in plaats van de Chat-speeltuin.

Klaar om te coderen

Aanbeveling

Code maakt gebruik van azure AI Projects 1.x SDK en is niet compatibel met Azure AI Projects 2.x. Zie de nieuwe Foundry-documentatie voor versie 2.x van Azure AI Projects.

  1. Installeer deze pakketten:

    pip install openai azure-identity azure-ai-projects==1.0.0
    
  2. Zoek uw projecteindpunt op het welkomstscherm van het project.

    Schermopname van het welkomstscherm van Microsoft Foundry Models met de eindpunt-URL en de knop Kopiëren.

  3. Zorg ervoor dat u zich aanmeldt met behulp van de CLI-opdracht az login (of az login --use-device-code) om te verifiëren voordat u uw Python-scripts uitvoert.

Volg hieronder of haal de code op:

Chatten met een model

Chatvoltooiingen zijn de basisbouwsteen van AI-toepassingen. Met behulp van chatvoltooiingen kunt u een lijst met berichten verzenden en een antwoord krijgen van het model.

Aanbeveling

Code maakt gebruik van azure AI Projects 1.x SDK en is niet compatibel met Azure AI Projects 2.x. Zie de nieuwe Foundry-documentatie voor de versie van Azure AI Projects 2.x.

Vervang uw eindpunt door de endpoint in deze code:

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)

Chatten met een agent

Maak een agent en chat ermee.

Aanbeveling

Code maakt gebruik van azure AI Projects 1.x SDK en is niet compatibel met Azure AI Projects 2.x. Zie de nieuwe Foundry-documentatie voor de versie 2.x van Azure AI Projects.

Vervang uw eindpunt door de endpoint in deze code:

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")

Bestanden toevoegen aan de agent

Agents hebben krachtige mogelijkheden via het gebruik van hulpprogramma's. We gaan een hulpprogramma voor het zoeken naar bestanden toevoegen waarmee we kennis kunnen ophalen.

Aanbeveling

Code maakt gebruik van azure AI Projects 1.x SDK en is niet compatibel met Azure AI Projects 2.x. Zie de nieuwe Foundry-documentatie voor de versie van Azure AI Projects 2.x.

Vervang uw eindpunt door de endpoint in deze code:

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)

De hulpbronnen opschonen

Als u geen resources meer nodig hebt die u hebt gemaakt, verwijdert u de resourcegroep die aan uw project is gekoppeld.

  • Selecteer in Azure Portal de resourcegroep en selecteer vervolgens Verwijderen. Bevestig dat u de resourcegroep wilt verwijderen.