Initiera ett värdbaserat agentprojekt med CLI för Azure Developer

Viktigt

Objekt markerade (förhandsversion) i den här artikeln är för närvarande i offentlig förhandsversion. Den här förhandsversionen tillhandahålls utan ett serviceavtal och vi rekommenderar det inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

Använd azd ai agent init för att skapa ett värdbaserat agentprojekt med de filer som du behöver för att skapa, testa och distribuera en AI-agent för att Microsoft Foundry. I den här artikeln väljer du en startpunkt och initierar projektet från en mall, från din egen kod eller mot ett befintligt Foundry-projekt.

Om du använder en kodningsagent som GitHub Copilot kan Microsoft Foundry Skill hjälpa dig att välja en startmall, skapa ett projekt och tolka den genererade azd konfigurationen.

Förutsättningar

Välj en startpunkt

Det finns tre sätt att starta ett projekt på. Välj den sökväg som matchar din situation.

Övervägande Börja från en mall Ta med din egen kod Ansluta ett befintligt projekt
Passar bäst för Nya agenter som lär sig verktygen. Befintlig agentkod som du vill köra på Foundry. Agenter som redan kör i ett Foundry-projekt.
Kommando azd ai agent init i en tom katalog. azd ai agent init i en katalog med befintlig kod. azd ai agent initväljer du sedan ett befintligt projekt.
Vad du får Ett komplett uppsatt projekt: en enda azure.yaml, agentkällkod under src/<agent-name>/ och en Dockerfile för containerdriftsättning. Infrastruktur är som standard utan Bicep och kan tas bort senare. En genererad azure.yaml tjänstpost och, för containerdriftsättning, en Dockerfile som kapslar in din kod. Infrastruktur är som standard utan Bicep och kan tas bort senare. Ett azure.yaml som är anslutet till ditt befintliga Foundry-projekt. Infrastruktur är som standard utan Bicep och kan tas bort senare.
Kodändringar None. Klar att köra. Kan behöva en protokolladapter. None.

Initiera från en mall

Kör den interaktiva guiden i en tom katalog och välj Starta nytt från en mall:

azd ai agent init

Guiden leder dig genom följande val.

Prompt Description
Agentmall Välj mellan mallar ordnade efter ramverk och språk (Python eller .NET).
Azure prenumeration Den prenumeration som används för att hitta eller skapa ett Foundry-projekt.
Gjuteri projekt Välj ett befintligt projekt eller skapa ett nytt. Om du skapar en väljer du även en region.
Modellimplementering Välj en befintlig modelldistribution, eller så skapas en från standardmallen.

Agentnamnet kommer från mallen. CLI skapar en azd miljö med namnet <directory>-dev och konfigurerar den med information från ditt valda Foundry-projekt. Varje mall innehåller agentens källkod, en Dockerfileoch en azure.yaml fil som fungerar som det enhetliga projektmanifestet azd för projektet och värdbaserad agentkonfiguration.

Initialisera från en azure.yaml-URL

Om du har ett specifikt agentexempel, peka -m på exemplets azure.yaml. CLI använder filen som projektmanifest och laddar ned den refererade agentkällan.

azd ai agent init -m https://github.com/microsoft-foundry/foundry-samples/blob/main/samples/python/hosted-agents/agent-framework/responses/01-basic/azure.yaml

Note

Agentmanifest (agent.manifest.yaml) och fristående agentdefinitioner (agent.yaml) är inaktuella. Från och med Foundry-tilläggen azd (azure.ai.agents 1.0.0-beta.1) finns alla värdbaserade agentkonfigurationer i en enda azure.yaml. Se Skapa azure.yaml för värdbaserade agenter.

Alternativet -m accepterar fortfarande en äldre agentmanifest-URL, men aktuella exempel publicerar en enhetlig azure.yaml.

Ange en modell

Välj en modell vid tidpunkten för init:

azd ai agent init --model gpt-4.1

Eller använd en befintlig modelldistribution i ditt Foundry-projekt:

azd ai agent init --model-deployment my-deployment

Välj ett distributionsläge

Som standardinställning använder azd ai agent init koddistribution för Python- och .NET-projekt. Koddistribution laddar upp källan som ett ZIP-paket. Om du i stället vill skapa ett containerbaserat projekt skickar du --deploy-mode container:

azd ai agent init --deploy-mode container

Om du vill distribuera en fördefinierad containeravbildning skickar du --image och --agent-name. Det här alternativet hoppar över val av mall och språk, kodställningar, Dockerfile-generering och Azure Container Registry konfiguration.

azd ai agent init --agent-name my-agent --image myregistry.azurecr.io/my-agent:v1

Bläddra bland mallar som inte är inaktiva

Om du vill granska katalogen innan du genererar, eller köra azd ai agent init från ett skript, listar du katalogen:

# Everything in the catalog
azd ai agent sample list

# Just the featured Python agent samples
azd ai agent sample list --featured-only --language python --type agent

# Full azd templates only, as JSON for scripting
azd ai agent sample list --type azd --output json

Varje post innehåller ett körklart initCommand som du kopierar och kör i den katalog där du vill skapa projektstrukturen.

Tip

När du återanvänder ett exempel under en annan Foundry-agentidentitet skickar --agent-name <new-name> du vidare azd ai agent init så att namnet som skrivs till azure.yaml inte kolliderar med standardnamnet för exemplet.

Initiera från befintlig kod

Om du har befintlig Python- eller .NET-agentkod, kör du azd ai agent init i den katalog som redan innehåller din kod:

cd my-agent/
azd ai agent init

CLI:n identifierar de befintliga filerna och genererar en azure.yaml tjänstdefinition kring dem utan att skriva över din kod. För containerdistribution lägger den också till en Dockerfile. Infrastrukturen förblir bicep-less som standard om du inte matar ut infrastrukturen som kod senare.

Agentkoden måste uppfylla körningskontraktet för den värdhanterade agenten:

  • Lyssna på port 8088.
  • Hantera en hälsoavsökning på GET /readiness.
  • Hantera ett av de protokoll som stöds (responses eller invocations).

Om koden inte redan talar om något av dessa protokoll lägger du till ett protokollkort, en enkel SDK-omslutning som översätts mellan Foundry-protokollet och agentens logik.

Om du vill lägga till en agent i ett befintligt azd projekt init identifierar du projektet och lägger till en ny tjänstpost i din befintliga azure.yaml. Använd --src för att ange en underkatalog:

azd ai agent init --src src/my-agent

Ansluta till ett befintligt Foundry-projekt

Om du vill hantera ett befintligt Foundry-projekt via azdkör du guiden och väljer alternativet för att ansluta till ett befintligt projekt. Du kan också hoppa över det interaktiva valet genom att ange projektets Azure resurs-ID direkt:

azd ai agent init --project-id /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.CognitiveServices/accounts/{account}/projects/{project}

Om du vill hitta project-ID:t öppnar du Foundry-portalen, går till Hantera>Project information och kopierar resurs-ID-värdet.

Varning

När du initierar mot ett befintligt projekt med --project-idhoppar verktyget över de automatiska rolltilldelningar som den utför när det skapar ett nytt projekt. Kontrollera att de nödvändiga rollerna redan har tilldelats. Den fullständiga matrisen finns i Referens för värdbaserade agentbehörigheter.

Granska vad som skapas

När init har slutförts innehåller din projektkatalog följande struktur:

.
|-- azure.yaml                  # Unified azd project and hosted agent configuration
|-- src/
|   \-- <agent-name>/
|       |-- Dockerfile          # Container build definition
|       \-- ...                 # Agent source code
|-- .azure/                     # Environment configuration
\-- infra/                      # Optional IaC, created only after you eject infrastructure

Mallar och exempel publicerar en enhetlig azure.yaml i projektroten. Under initieringen övertar eller genererar azd denna fil. Du arbetar med azure.yaml framöver. Infrastrukturen använder inte Bicep som standard. Mata bara ut infrastruktur när du behöver hantera de genererade IaC-filerna direkt.