在本教學課程中,您將瞭解如何透過開放原始碼 Windows 應用程式 (可在 Microsoft Store 取得) 來AI Dev Gallery執行任何以 ONNX 為基礎的大型語言模型 (LLM),以展示 AI 支援的範例。
這些步驟適用於格式ONNX Runtime GenAI中的任何 LLM,包括:
- 從 Hugging Face 下載的模型
- 使用 AI Toolkit for Visual Studio Code 轉換工具從其他架構轉換的模型
步驟1:在 AI Dev Gallery 中選擇一個互動範例
打開 AI Dev Gallery 應用程序。
導覽至 [範例 ] 索引標籤,然後選擇 [文字] 範例 (例如,「產生文字」或「聊天記錄」)。
按一下 「模型選取器」 按鈕,以檢視該範例的可用模型。
選取 [自訂模型] 索引標籤,以引入您自己的 ONNX LLM。
步驟 2:取得或轉換 ONNX LLM 模型
若要在 中使用模型 AI Dev Gallery,它必須採用 格式 ONNX Runtime GenAI 。 您可以:
下載預先轉換的模型:
瀏覽 Hugging Face ONNX 型號上的型號,或
在 AI Dev Gallery中,移至 新增模型 → 搜尋 HuggingFace
轉換您自己的模型:
- 按一下模型選取器中的 [ 開啟 AI 工具組的轉換工具 ],這會在 Visual Studio Code 中啟動 AI 工具組擴充功能 。
- 如果您尚未安裝它,請在 VS Code Extensions Marketplace 中搜尋「AI Toolkit」。
- 使用適用於 Visual Studio Code 的 AI 工具組 將支援的模型轉換成 ONNX Runtime GenAI 格式。
- 按一下模型選取器中的 [ 開啟 AI 工具組的轉換工具 ],這會在 Visual Studio Code 中啟動 AI 工具組擴充功能 。
目前支援轉換的型號:
- DeepSeek R1 蒸餾 Qwen 1.5B
- Phi 3.5 迷你指令
- Qwen 2.5-1.5B 指導
- 駱駝 3.2 1B 指導
備註
AI Toolkit 轉換處於預覽階段,目前僅支援上述模型。
步驟 3:在 AI Dev Gallery
一旦您擁有格式ONNX Runtime GenAI中的模型,請返回AI Dev Gallery模型選擇器視窗。
按一下 [新增模型→ 從磁碟] ,並提供 ONNX 模型的路徑。
備註
如果您使用 AI Toolkit 的轉換工具,轉換後的模型路徑應遵循以下格式:
c:/{workspace}/{model_project}/history/{workflow}/model/model.onnx新增後,您現在可以選取模型,並將其與互動式範例搭配使用。
或者,按一下 [在應用程式中 顯示原始程式碼 ] 以檢視執行模型的程式碼。
AI Dev Gallery 中的支援範例
這些 ONNX LLM 可與下列 AI Dev Gallery範例搭配使用:
文字
- 產生文字
- 摘要文字
- Chat
- 語義內核聊天
- 語法檢查
- 釋義文本
- 分析文字情緒
- 內容審核
- 自定義參數
- 擷取增強生成
智慧控制
- 智慧型文字方塊
Code
- 產生程式碼
- 解釋程式碼
後續步驟
現在您已經在 中 AI Dev Gallery嘗試了 ONNX LLM,您可以將相同的方法帶入您自己的應用程式。
此範例的運作方式
- 範例會 AI Dev Gallery 使用
OnnxRuntimeGenAIChatClient(來自 ONNX Runtime GenAI SDK) 來包裝您的 ONNX 模型。 - 此用戶端會
Microsoft.Extensions.AI插入抽象概念 (IChatClient、ChatMessage等),因此您可以以自然、高階的方式處理提示和回應。 - 在原廠 (
OnnxRuntimeGenAIChatClientFactory) 中,應用程式可確保 Windows ML 已註冊 (WinML) 執行提供者,並以最佳可用的硬體加速 (CPU、GPU 或 NPU) 執行 ONNX 模型。
範例中的範例:
// Register WinML execution providers (under the hood)
var catalog = Microsoft.Windows.AI.MachineLearning.ExecutionProviderCatalog.GetDefault();
await catalog.EnsureAndRegisterCertifiedAsync();
// Create a chat client for your ONNX model
chatClient = await OnnxRuntimeGenAIChatClientFactory.CreateAsync(
@"C:\path\to\your\onnx\model",
new LlmPromptTemplate
{
System = "<|system|>\n{{CONTENT}}<|end|>\n",
User = "<|user|>\n{{CONTENT}}<|end|>\n",
Assistant = "<|assistant|>\n{{CONTENT}}<|end|>\n",
Stop = [ "<|system|>", "<|user|>", "<|assistant|>", "<|end|>"]
});
// Stream responses into your UI
await foreach (var part in chatClient.GetStreamingResponseAsync(messages, null, cts.Token))
{
OutputTextBlock.Text += part;
}
如需將 ONNX 模型整合至 Windows 應用程式的詳細資訊,請參閱:
另請參閱
- 下載 AI Dev Gallery
- Hugging Face 上的 ONNX 模特兒
- 適用於 Visual Studio Code 的 AI 工具組
- AI Dev Gallery GitHub 存放庫