ONNX

MED ONNX Runtime GenAI kan ett .NET Agent Framework-program köra en kompatibel modell lokalt. Använd den för offlineutveckling, inferens på enheten eller driftsättningar där modellen måste köras på värden.

Anmärkning

Den aktuella ONNX-klienten stöder inte funktionsanrop. Funktionsverktyg som skickas till agenten ignoreras.

Förutsättningar

  • .NET 8 eller senare.
  • En modell som exporterats för ONNX Runtime GenAI.
  • Tillräckligt med lokalt minne och en kompatibel exekveringsprovider för den valda modellen.

Installera programvarupaketen

dotnet add package Microsoft.ML.OnnxRuntimeGenAI
dotnet add package Microsoft.Agents.AI --prerelease

Configuration

ONNX_MODEL_PATH="<path-to-onnx-runtime-genai-model-directory>"

Skapa en ONNX-backad agent

Ladda ned en modell som exporterats för ONNX Runtime GenAI och peka ONNX_MODEL_PATH på modellkatalogen.

// E.g. C:\repos\Phi-4-mini-instruct-onnx\cpu_and_mobile\cpu-int4-rtn-block-32-acc-level-4
var modelPath = Environment.GetEnvironmentVariable("ONNX_MODEL_PATH") ?? throw new InvalidOperationException("ONNX_MODEL_PATH is not set.");

// Get a chat client for ONNX and use it to construct an AIAgent.
using OnnxRuntimeGenAIChatClient chatClient = new(modelPath);
AIAgent agent = chatClient.AsAIAgent(instructions: "You are good at telling jokes.", name: "Joker");

// Invoke the agent and output the text result.
Console.WriteLine(await agent.RunAsync("Tell me a joke about a pirate."));

Modellfiler, körningsprovider, kvantisering och tillgängligt minne avgör maskinvarukompatibilitet och prestanda. Granska modelllicensen innan du distribuerar om den.

Tools

Den aktuella ONNX-klienten stöder inte funktionsanrop eller providervärdbaserade verktyg.

Nästa steg