Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Erstellen Sie einen Agent, und erhalten Sie eine Antwort – in nur wenigen Codezeilen.
dotnet add package Microsoft.Agents.AI.Foundry --prerelease
Erstellen Sie den Agent:
using System;
using Azure.AI.Projects;
using Azure.Identity;
using Microsoft.Agents.AI;
var endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT")
?? throw new InvalidOperationException("Set AZURE_OPENAI_ENDPOINT");
var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-4o-mini";
AIAgent agent = new AIProjectClient(new Uri(endpoint), new DefaultAzureCredential())
.AsAIAgent(
model: deploymentName,
instructions: "You are a friendly assistant. Keep your answers brief.",
name: "HelloAgent");
Warnung
DefaultAzureCredential ist praktisch für die Entwicklung, erfordert aber sorgfältige Überlegungen in der Produktion. Berücksichtigen Sie in der Produktion die Verwendung bestimmter Anmeldeinformationen (z. B. ManagedIdentityCredential), um Latenzprobleme, unbeabsichtigte Abfragen von Anmeldeinformationen und potenzielle Sicherheitsrisiken durch Ausweichmechanismen zu vermeiden.
Ausführen:
Console.WriteLine(await agent.RunAsync("What is the largest city in France?"));
Oder streamen Sie die Antwort:
await foreach (var update in agent.RunStreamingAsync("Tell me a one-sentence fun fact."))
{
Console.Write(update);
}
Tip
Eine voll ausgeführte Beispielanwendung finden Sie hier .
pip install agent-framework-foundry azure-identity
Das agent-framework-foundry Paket installiert agent-framework-core mit der Microsoft Foundry-Integration. Das agent-framework Metapackage installiert agent-framework-coreauch zusammen mit vielen anderen optionalen Integrationen.
Melden Sie sich mit dem Azure CLI an, indem Sie folgendes ausführenaz login. Ersetzen Sie im folgenden Beispiel project_endpoint durch Ihren Microsoft Foundry-Projektendpunkt und model durch Ihren Modellbereitstellungsnamen.
Speichern Sie das vollständige Beispiel unter hello_agent.py:
import asyncio
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
async def main() -> None:
agent = Agent(
client=FoundryChatClient(
project_endpoint="https://your-project.services.ai.azure.com",
model="gpt-6-luna",
credential=AzureCliCredential(),
),
instructions="You are a friendly assistant. Keep your answers brief.",
)
print(await agent.run("What is the largest city of France?"))
if __name__ == "__main__":
asyncio.run(main())
Führen Sie das Beispiel aus:
python hello_agent.py
Note
Das Agent-Framework lädt .env automatisch. Um eine .env Datei für die Konfiguration zu verwenden, rufen Sie load_dotenv() am Anfang Ihres Skripts auf:
from dotenv import load_dotenv
load_dotenv()
Alternativ können Sie Umgebungsvariablen direkt in Ihrer Shell oder IDE festlegen. Weitere Informationen finden Sie in der Einstellungsmigrationsnotiz .
Tip
Sehen Sie sich das vollständige Beispiel für die vollständige ausgeführte Datei an.
go get github.com/microsoft/agent-framework-go
Erstellen Sie den Agent:
package main
import (
"context"
"fmt"
"os"
"github.com/microsoft/agent-framework-go/agent"
"github.com/microsoft/agent-framework-go/provider/foundryprovider"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
)
func main() {
endpoint := os.Getenv("FOUNDRY_PROJECT_ENDPOINT")
model := os.Getenv("FOUNDRY_MODEL")
token, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
panic(err)
}
a := foundryprovider.NewAgent(
endpoint,
token,
foundryprovider.ModelDeployment(model),
foundryprovider.AgentConfig{
Instructions: "You are a friendly assistant. Keep your answers brief.",
Config: agent.Config{
Name: "HelloAgent",
},
},
)
Warnung
azidentity.NewDefaultAzureCredential ist praktisch für die Entwicklung, erfordert aber sorgfältige Überlegungen in der Produktion. Berücksichtigen Sie in Produktionsumgebungen die Verwendung einer bestimmten Anmeldeinformation, wie azidentity.NewManagedIdentityCredential, um Latenzprobleme, unbeabsichtigtes Ausprobieren von Anmeldeinformationen und potenzielle Sicherheitsrisiken durch Fallbackmechanismen zu vermeiden.
Ausführen:
ctx := context.Background()
resp, err := a.RunText(ctx, "What is the largest city in France?").Collect()
fmt.Println(resp, err)
Oder streamen Sie die Antwort:
for update, err := range a.RunText(ctx, "Tell me a one-sentence fun fact.", agent.Stream(true)) {
if err != nil {
panic(err)
}
fmt.Print(update)
}
}
Tip
Sehen Sie sich das vollständige Beispiel für die vollständige ausgeführte Datei an.
Nächste Schritte
Gehen Sie tiefer: