diff --git a/src/Aspire.Hosting.Azure.AIFoundry/AIFoundryModel.Local.Generated.cs b/src/Aspire.Hosting.Azure.AIFoundry/AIFoundryModel.Local.Generated.cs index 8a17ae977c8..098d7e44f65 100644 --- a/src/Aspire.Hosting.Azure.AIFoundry/AIFoundryModel.Local.Generated.cs +++ b/src/Aspire.Hosting.Azure.AIFoundry/AIFoundryModel.Local.Generated.cs @@ -18,9 +18,9 @@ public static class Local public static readonly AIFoundryModel DeepseekR114b = new() { Name = "deepseek-r1-14b", Version = "3", Format = "Microsoft" }; /// - /// This model is an optimized version of DeepSeek-R1-Distill-Qwen-7B to enable local inference. This model uses RTN quantization. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** MIT - **Model Description:** This is a conversion of the DeepSeek-R1-Distill-Qwen-7B for local inference. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [DeepSeek-R1-Distill-Qwen-7B](https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B) for details. + /// This model is an optimized version of DeepSeek-R1-Distill-Qwen-7B to enable local inference on Intel NPUs. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** MIT - **Model Description:** This is a conversion of the DeepSeek-R1-Distill-Qwen-7B for local inference on Intel NPUs. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [DeepSeek-R1-Distill-Qwen-7B](https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B) for details. /// - public static readonly AIFoundryModel DeepseekR17b = new() { Name = "deepseek-r1-7b", Version = "3", Format = "Microsoft" }; + public static readonly AIFoundryModel DeepseekR17b = new() { Name = "deepseek-r1-7b", Version = "1", Format = "Microsoft" }; /// /// This model is an optimized version of gpt-oss-20b to enable local inference. This model uses RTN quantization. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** Apache-2.0 - **License Description:** Use of this model is subject to the terms of the Apache License, Version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0. - **Model Description:** This is a conversion of the gpt-oss-20b model for local inference. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Azure AI Foundry model [gpt-oss-20b](https://ai.azure.com/catalog/models/gpt-oss-20b) for details. @@ -28,7 +28,7 @@ public static class Local public static readonly AIFoundryModel GptOss20b = new() { Name = "gpt-oss-20b", Version = "1", Format = "Microsoft" }; /// - /// This model is an optimized version of Mistral-7B-Instruct-v0.2 to enable local inference. This model uses RTN quantization. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** apache-2.0 - **Model Description:** This is a conversion of the Mistral-7B-Instruct-v0.2 for local inference. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [Mistral-7B-Instruct-v0.2](https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2) for details. + /// This model is an optimized version of Mistral-7B-Instruct-v0.2 to enable local inference on Intel NPUs. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** apache-2.0 - **Model Description:** This is a conversion of the Mistral-7B-Instruct-v0.2 for local inference on Intel NPUs. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [Mistral-7B-Instruct-v0.2](https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2) for details. /// public static readonly AIFoundryModel Mistral7bV02 = new() { Name = "mistral-7b-v0.2", Version = "1", Format = "Microsoft" }; @@ -72,6 +72,11 @@ public static class Local /// public static readonly AIFoundryModel Qwen2515b = new() { Name = "qwen2.5-1.5b", Version = "3", Format = "Microsoft" }; + /// + /// This model is an optimized version of Qwen2.5-1.5B-Instruct to enable local inference on AMD NPUs. This model uses post-training quantization. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** apache-2.0 - **Model Description:** This is a conversion of the Qwen2.5-1.5B-Instruct for local inference on AMD NPUs. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [Qwen2.5-1.5B-Instruct](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct) for details. + /// + public static readonly AIFoundryModel Qwen2515bInstructTestVitisNpu = new() { Name = "qwen2.5-1.5b-instruct-test-vitis-npu", Version = "1", Format = "Microsoft" }; + /// /// This model is an optimized version of Qwen2.5-14B-Instruct to enable local inference. This model uses RTN quantization. # Model Description - **Developed by:** Microsoft - **Model type:** ONNX - **License:** apache-2.0 - **Model Description:** This is a conversion of the Qwen2.5-14B-Instruct for local inference. - **Disclaimer:** Model is only an optimization of the base model, any risk associated with the model is the responsibility of the user of the model. Please verify and test for your scenarios. There may be a slight difference in output from the base model with the optimizations applied. Note that optimizations applied are distinct from fine tuning and thus do not alter the intended uses or capabilities of the model. # Base Model Information See Hugging Face model [Qwen2.5-14B-Instruct](https://huggingface.co/Qwen/Qwen2.5-14B-Instruct) for details. /// diff --git a/src/Aspire.Hosting.Azure.AIFoundry/tools/GenModel.cs b/src/Aspire.Hosting.Azure.AIFoundry/tools/GenModel.cs index 1b11a89c99d..0ce9238ed22 100644 --- a/src/Aspire.Hosting.Azure.AIFoundry/tools/GenModel.cs +++ b/src/Aspire.Hosting.Azure.AIFoundry/tools/GenModel.cs @@ -460,8 +460,7 @@ public async Task GetModelsAsync(string? continuationToken = null) {"field": "type", "operator": "eq", "values": ["models"]}, {"field": "kind", "operator": "eq", "values": ["Versioned"]}, {"field": "labels", "operator": "eq", "values": ["latest"]}, - {"field": "annotations/archived", "operator": "ne", "values": ["false"]}, - {"field": "annotations/tags/foundryLocal", "operator": "eq", "values": [""]}, + {"field": "annotations/tags/foundryLocal", "operator": "eq", "values": ["", "test"]}, {"field": "properties/variantInfo/variantMetadata/device", "operator": "eq", "values": ["cpu", "gpu", "npu"]} ], @@ -510,9 +509,13 @@ private void RunFixups(List allModels) { if (_isFoundryLocal) { - // Exclude phi-4-reasoning as it is not listed by foundry local (TBD) + // Exclude models that are not listed by foundry local (TBD) // c.f. https://github.com/microsoft/Foundry-Local/issues/245#issuecomment-3404022929 - allModels.RemoveAll(m => m.Annotations?.Tags?.TryGetValue("alias", out var alias) is not null && alias == "phi-4-reasoning"); + allModels.RemoveAll(m => m.Annotations?.Tags?.TryGetValue("alias", out var alias) is true && alias is not null && + (alias.Contains("whisper") || + alias == "phi-4-reasoning" || + alias == "qwen2.5-1.5b-instruct-test-qnn-npu" || + alias == "qwen2.5-1.5b-instruct-test-openvino-npu")); } else {