온엑스

ONNX 런타임 GenAI를 사용하면 .NET Agent Framework 애플리케이션이 호환되는 모델을 로컬로 실행할 수 있습니다. 모델 실행이 호스트에 유지되어야 하는 오프라인 개발, 디바이스 내 유추 또는 배포에 사용합니다.

비고

현재 ONNX 클라이언트는 함수 호출을 지원하지 않습니다. 에이전트에 전달된 함수 도구는 무시됩니다.

사전 요구 사항

  • .NET 8 이상.
  • ONNX 런타임 GenAI용으로 내보낸 모델입니다.
  • 선택한 모델에 대한 충분한 로컬 메모리 및 호환 가능한 실행 공급자입니다.

패키지 설치

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

Configuration

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

ONNX 백업 에이전트 만들기

ONNX 런타임 GenAI용으로 내보낸 모델을 다운로드하고 모델 디렉터리를 가리킵니 ONNX_MODEL_PATH 다.

// 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."));

모델 파일, 실행 공급자, 양자화 및 사용 가능한 메모리는 하드웨어 호환성 및 성능을 결정합니다. 재배포하기 전에 모델 라이선스를 검토합니다.

Tools

현재 ONNX 클라이언트는 함수 호출 또는 공급자 호스팅 도구를 지원하지 않습니다.

다음 단계