Delen via


Een agent implementeren in Microsoft Foundry met de AZURE Developer CLI AI-agentextensie

In dit artikel leert u hoe u de AI-agentextensie (azdAzure Developer CLI) gebruikt om een agent in Microsoft Foundry in te stellen en te implementeren. Met de extensie kunt u agents bouwen en implementeren vanuit uw terminal of editor, waarbij Foundry-mogelijkheden worden gecombineerd met azd levenscyclusopdrachten (azd init, azd up) voor een consistente lokale werkstroom in de cloud.

Belangrijkste kenmerken

  • Projectstructuur: Stel complete agentprojecten in (infrastructuur als codesjablonen, agentdefinities, configuratie) en begin onmiddellijk te itereren.
  • Declaratieve configuratie: Definieer services, resources en modelimplementaties in een azure.yaml bestand voor consistente omgevingen.
  • Geïntegreerde inrichting en implementatie: Voer azd up uit om containers te bouwen, installatiekopieën te pushen, resources te maken, modellen te implementeren en de agent in één stap te publiceren.
  • Agentdefinitiebeheer: agentdefinities importeren uit catalogi, GitHub of lokale paden; de CLI wijst vereiste parameters toe aan omgevingsvariabelen.
  • Standaard beveiligen: stel beheerde identiteiten en basislijnbeveiliging automatisch in zonder referenties handmatig te verwerken.
  • Schaalbare modelinrichting: modelnamen, versies en capaciteit opgeven; azd implementeert ze consistent in omgevingen.

Vereiste voorwaarden

  • De Azure Developer CLI (azd) geïnstalleerd (versie 1.21.3 of hoger) en geverifieerd azd auth login.
    • De azd ai agent extensie is geïnstalleerd (azd extension install azure.ai.agents). Als u de extensie niet hebt geïnstalleerd, wordt de extensie automatisch geïnstalleerd wanneer u de starterssjabloon initialiseert of de extensie uitvoert azd ai agent .
  • Een Azure-abonnement met machtigingen voor het maken van resourcegroepen en Microsoft Foundry-resources.
  • De Azure CLI is geïnstalleerd voor vereiste bewerkingen.

Een agent instellen en implementeren

Voltooi de volgende secties om een agent in te richten en te implementeren in Microsoft Foundry met behulp van de azd AI-agentextensie.

Foundry-sjabloon initialiseren

  1. Initialiseer een nieuw project met de azd-ai-starter-basic sjabloon. Voer in een lege map het volgende uit:

    azd init -t Azure-Samples/azd-ai-starter-basic --location northcentralus
    

    Opmerking

    Gehoste agents zijn momenteel beperkt tot de Azure-regio VS - noord-centraal. Meer informatie over de regionale beschikbaarheid van gehoste agents vindt u in de documentatie van Microsoft Foundry.

  2. Voer een omgevingsnaam in voor het agentproject (bijvoorbeeld 'my-analytics-agent').

    Het azd init proces:

    • Kloont de startersjabloonbestanden in uw project
    • Hiermee maakt u de mapstructuur met infra/ (Infrastructuur als codebestanden) en src/ mappen
    • Hiermee wordt een azure.yaml configuratiebestand gegenereerd
    • .azure/<env>/.env Instellen voor omgevingsspecifieke variabelen

De agentdefinitie initialiseren

De starterssjabloon biedt de projectstructuur, maar u moet een specifieke agentdefinitie toevoegen. Agentdefinities beschrijven het gedrag, de hulpprogramma's en mogelijkheden van uw agent. Zoek voorbeelddefinities in de agentframeworkopslagplaats.

Gebruik uw eigen agentdefinitie of een definitie uit de catalogus. Voer de azd ai agent init opdracht uit met uw eigen <agent-definition-url> waarde:

azd ai agent init -m <agent-definition-url>

Gebruik bijvoorbeeld de volgende URL voor een eenvoudige rekenmachineagent:

azd ai agent init -m https://github.com/microsoft-foundry/foundry-samples/blob/main/samples/python/hosted-agents/langgraph/calculator-agent/agent.yaml

De opdracht azd ai agent init doet het volgende:

  • Downloadt het YAML-bestand van de agentdefinitie naar de map van src/ uw project
  • Analyseert de definitie van de agent om inzicht te hebben in de vereisten
  • Bijwerken azure.yaml met de bijbehorende services en configuraties
  • Het koppelen van agentparameters aan omgevingsvariabelen

De projectstructuur controleren

De geïnitialiseerde sjabloon bevat de volgende belangrijke bestanden:

├── .azure/                 # Environment-specific settings (.env)
├── infra/                  # Bicep files for Azure infrastructure
├── src/                    # Agent definition and code
└── azure.yaml              # Project configuration

Open azure.yaml om te zien hoe het agentproject is ingesteld:

requiredVersions:
    extensions:
        azure.ai.agents: latest
services:
    CalculatorAgent:
        project: src/CalculatorAgent
        host: azure.ai.agent
        language: docker
        docker:
            remoteBuild: true
        config:
            container:
                resources:
                    cpu: "1"
                    memory: 2Gi
                scale:
                    maxReplicas: 3
                    minReplicas: 1
            deployments:
                - model:
                    format: OpenAI
                    name: gpt-4o-mini
                    version: "2024-07-18"
                  name: gpt-4o-mini
                  sku:
                    capacity: 10
                    name: GlobalStandard
infra:
    provider: bicep
    path: ./infra
    module: main

Deze declaratieve configuratie definieert uw agentservice en de Azure AI-resources die nodig zijn, inclusief modelimplementaties.

De agent inrichten en implementeren

Voer azd up uit om de resources en de agent te implementeren.

azd up

Met azd up de opdracht wordt de implementatiewerkstroom ingedeeld, van infrastructuur naar een live-agenteindpunt:

  • Infrastructuur inrichten: Maak het Microsoft Foundry-account, project en Azure-resources die zijn gedefinieerd in de Bicep-bestanden. - Pre-provision hooks inspecteren de agents en hun afhankelijkheden, modellen en andere resources, en vullen vervolgens de omgevingsvariabelen in zodat Bicep weet wat er moet worden ingericht, waaronder: - AI_PROJECT_DEPLOYMENTS (JSON): Specificatie van de modellen die moeten worden geïmplementeerd. - AI_PROJECT_CONNECTIONS (JSON): Specificatie van de verbindingen die moeten worden gemaakt. - AI_PROJECT_DEPENDENT_RESOURCES (JSON): Specificatie van de afhankelijke resources. - ENABLE_HOSTED_AGENTS (boolean): Of gehoste agents moeten worden ingesteld (met een ACR en CapHost).
  • Implementeert modellen: voorziet in de modelimplementaties die zijn opgegeven in azure.yaml (bijvoorbeeld GPT-4o-mini met de geconfigureerde capaciteit).
  • De container bouwen en pushen: Als de agent aangepaste code heeft, verpak deze in een containerafbeelding en push naar de Azure Container Registry.
  • Publiceer de agent: maak een agenttoepassing in Microsoft Foundry en implementeer de agent als een live, aanroepbare service.

Wanneer azd up dit is voltooid, worden in de uitvoer het eindpunt van het Microsoft Foundry-project, de resourcegroep en projectnamen en de details van de agenttoepassing weergegeven. De uitvoer biedt ook een directe koppeling naar de agent-omgeving in de Microsoft Foundry-portal.

Opmerking

Voor een nieuw project duurt het meestal enkele minuten voordat het inrichtings- en implementatieproces is voltooid.

Identiteit en beveiliging

azd configureert automatisch beveiligde toegangspatronen, zodat u referenties niet handmatig hoeft te beheren:

  • Beheerde identiteit: uw agent gebruikt de door het systeem toegewezen beheerde identiteit van het Foundry-project om te verifiëren met andere Azure-resources.
  • Roltoewijzingen: azd verleent automatisch vereiste machtigingen (bijvoorbeeld door uw agent toegang te geven tot Azure AI-services, -opslag of -databases).
  • Eindpuntbeveiliging: agenteindpunten maken standaard gebruik van Microsoft Entra ID-verificatie (Azure AD), zodat alleen geautoriseerde gebruikers of toepassingen uw agent kunnen aanroepen.

Deze beveiligingsconfiguraties volgen de best practices die door Azure zijn aanbevolen en werken direct zonder aanpassing, zodat u met een veilige basis start.

De agent testen in Microsoft Foundry

  1. Open de Microsoft Foundry-portal.
  2. Navigeer naar het project dat is ingesteld door azd (de projectnaam wordt weergegeven in de azd up uitvoer).
  3. Open de Agents-sectie om je uitgerolde agent weer te geven.
  4. Start de agent in de speeltuin en verzend een testquery, zoals 'Uw mogelijkheden samenvatten'.

U ziet het antwoord van de agent in het chatvenster.

Geavanceerde configuratie

U kunt uw projecten aanpassen aan geavanceerde vereisten buiten de standaardwerkstroom.

Modelimplementaties aanpassen

Het azure.yaml bestand geeft u controle over welke modellen u implementeert. Als u een model wilt toevoegen of wijzigen, bewerkt u het bestand:

services:
    CalculatorAgent:
        project: src/CalculatorAgent
        host: azure.ai.agent
        language: docker
        docker:
            remoteBuild: true
        config:
            container:
                resources:
                    cpu: "1"
                    memory: 2Gi
                scale:
                    maxReplicas: 3
                    minReplicas: 1
            deployments:
                - model:
                    format: OpenAI
                    name: gpt-4o-mini
                    version: "2024-07-18"
                  name: gpt-4o-mini
                  sku:
                    capacity: 10
                    name: GlobalStandard

Voer azd up uit om het nieuwe model te implementeren en uw project bij te werken.

Met deze voorbeeldconfiguratie worden meerdere modellen geïmplementeerd, zodat uw agent een groter model kan gebruiken voor complexe redeneringen en een kleinere voor eenvoudige query's.

Omgevingsvariabelen beheren

Omgevingsvariabelen die azd het volgende instellen of gebruiken:

Variable Purpose
AZURE_SUBSCRIPTION_ID Gedoeld abonnement voor bronnen.
AZURE_RESOURCE_GROUP Resourcegroep die als host fungeert voor het AI-project.
AZURE_LOCATION Azure-regio (moet gekozen modellen ondersteunen).
AZURE_AI_ACCOUNT_NAME Microsoft Foundry-account (hub).
AZURE_AI_PROJECT_NAME Project dat als host fungeert voor de agent.
AZURE_AI_FOUNDRY_PROJECT_ENDPOINT Eindpunt voor agentbeheer en runtime-aanroepen.

Deze variabelen worden opgeslagen in .azure/<environment-name>/.env. Pas ze aan voor elke omgeving (dev, test en prod).

Voorbeelden van gebruikssituaties en scenario's

Gebruik azd en de AI-agentextensie om verschillende agentscenario's met Microsoft Foundry te versnellen.

Gespreksassistenten bouwen

Maak agents die vragen beantwoorden met context en verbinding maken met interne gegevens.

  • Varianten implementeren voor A/B-tests
  • Azure AI Search toevoegen voor het ophalen van uitgebreide antwoorden
  • Zakelijke API's integreren via aangepaste hulpprogramma's

Agents voor gegevens en inzichten bouwen

Samenvattingen, berekeningen en visualisaties leveren.

  • Maak verbinding met Azure SQL Database of Cosmos DB.
  • Hulpprogramma's voor code-interpreters gebruiken voor berekeningen
  • Grotere redeneringsmodellen combineren met kleinere kostenefficiënte modellen

Meerdere agents organiseren

Coördineer specialisten voor complexe werkstromen.

  • Voeg een coördinatoragent toe om aanvragen te routeren.
  • Definieer relaties declaratief in azure.yaml.
  • Schaal agenten onafhankelijk op basis van belasting.

Bedrijfsimplementatie standaardiseren

Consistentie tussen teams stimuleren.

  • Herbruikbare blauwdrukken en sjablonen publiceren
  • Consistente beveiliging, naleving en bewaking toepassen
  • Het inrichten en implementeren in CI/CD automatiseren met azd provision en azd deploy.

Het ecosysteem verkennen

Aanvullende bronnen