微软 Foundry Local - 本地 AI 推理解决方案

news/2025/11/3 21:12:43/文章来源:https://www.cnblogs.com/shanyou/p/19188329

微软在其 2025 Build 大会上发布了 Foundry Local,能够在本地设备上执行 AI 推理,意味着可以利用本地的 AI 算力,如:CPU/GPU/NPU;也让用户在隐私方面得到了充足的保障,还能有改善成本效益!Foundry Local 默认除了支持 CLI外,还支持 SDK、REST API 和 Catalog API,用户可以自行基于 Foundry Local 进行开发。在未来 Foundry Local 还将内置对 Agent/MCP 的支持。

Foundry Local 还支持跨平台,除了能够运行在Windows 11 上,还能够运行在 macOS。由于需要本地存储和运行模型,请确保有足够的算力和存储,Foundry Local 支持硬件加速:NVIDIA GPU(2000系列或更高版本)、AMD GPU(6000系列或更高)、Intel iGPU、Intel NPU(32GB或更多内存)、高通 Snapdragon X Elite(8GB或更多内存)、高通 NPU,以及 Apple 系列。

        要在本地以 Foundry Local 运行 AI 模型,首先需要安装 Foundry Local。

  • Windows:
    • winget install Microsoft.FoundryLocal
  • macOS:
    • brew tap microsoft/foundrylocal
    • brew install foundrylocal

        运行模型只需要执行:

foundry model run <model>

        在 Foundry Local 上可运行的模型有很多,可使用以下命令查看:

foundry model list

        还可以加载 --filter 参数对显示列表进行筛选。

其他有用的参数还有:

foundry model info <model> 显示有关特定模型的详细信息

foundry model download <model> 在不运行模型的情况下只下载模型到本地缓存

foundry model load <model> 将模型加载到服务中

foundry model unload <model> 从服务中卸载模

        要查看本地已经下载缓存的模型,可执行:

foundry cache list

image

要检查 Foundry Local 服务状态,可执行:

foundry service status

image

Foundry Local CLI 详细使用可参考:Foundry Local 文档。

Foundry Local SDK 目前支持 JavaScript、Python、C# 和 Rust,也可以使用 REST API 去调用 Foundry Local Service。这是一个用于演示或本地实验的示例项目,可能展示如何在本地环境中使用或集成“Foundry”相关功能。核心代码在https://github.com/andrewleader/FoundryLocalLabDemo/blob/main/FoundryLocalLabDemo/ExecutionLogic.cs:

封装 FoundryLocalManager,提供基础模型管理:
•    StartServiceAsync:启动本地 Foundry 服务
•    ListCatalogModelsAsync / ListCachedModelsAsync:列出目录/本地缓存模型
•    DownloadModelAsync:按进度流式下载模型(IAsyncEnumerable<ModelDownloadProgress>)
•    LoadModelAsync / UnloadModelAsync:加载/卸载模型


基于选定模型进行流式解析用户文本为结构化对象:
•    ParseStudentProfileStreamingAsync:
•    通过 OpenAIClient + Microsoft.Extensions.AI 创建聊天客户端(使用 FoundryLocalManager 提供的 Endpoint 和 ApiKey)
•    构造一个包含字符串枚举的 JSON Schema,要求模型仅输出 JSON
•    发送提示词并以流式方式接收回复,边接收边通过 IAsyncEnumerable<StudentProfileUpdate> 返回中间文本增量
•    收集完整回复后,去除可能的 <think> 标签和 ```json 代码块围栏,处理嵌套对象,再用 Json.NET(含 StringEnumConverter)反序列化为 StudentProfile
•    最后返回一次包含解析好的 StudentProfile 的更新


image

项目地址:https://github.com/andrewleader/FoundryLocalLabDemo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/954901.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何启用cycloneDDS的iceoryx

共享内存交换 — Eclipse Cyclone DDS,0.11.0 首先我们需要先下载安装iceoryx,因为cycloneDDS如果要使用共享内存传输是依赖于这个插件的。顺带一提,只有同一节点的不同进程间会使用到共享内存,cycloneDDS是根据如…

老化车

老化车非常好 👍,这个问题在电子制造和测试领域里很关键。 “老化车”(又叫 Burn-in Cart 或 Aging Rack)是用于电子产品在出厂前做 老化测试(Burn-in Test) 的一种设备或平台。 下面我给你系统讲清楚 👇🧭…

Android Studio 2025.2.1 汉化中文包临时解决方案

打开 JetBrains 官网 Chinese ​(Simplified)​ Language Pack / 中文语言包 下载最新版 242.152 版本插件将 zh.242.152.jar 文件解压出来用压缩包工具打开 zh.242.152.jar 找到目录 META-INF 并打开用文本编辑工具打…

Markdown 学习训练

Markdown 学习训练 引用(使用>)这是我的第一篇博客,本篇博客是参照狂神说课程进行学习,目的是为了练习markdown使用语法。主要包含各级标题、字体、图片、代码块、超链接、表格使用语法练习。具体可前往typora官网…

jmeter设置中文页面的两种方法

JMeter设置中文界面有两种方法:临时设置(仅当前会话有效)和永久设置(修改配 置文件后永久生效)。 设置方法 1.临时设置(关闭后恢复英文): 打开JMeter,点击菜单栏“Options”→“Choose Language”→选择“Chi…

win10 下运行aoe2,报错,应用程序无法正常启动 0xc000022

控制面板 →搜索“启用或关闭 Windows 功能”找到并勾选 “旧版组件” → “DirectPlay” → 确定 → 重启电脑。

Python生成器表达式详解(含与列表推导式核心对比、别名探讨)

从“囤货”到“现做”:Python生成器表达式详解(含与列表推导式核心对比) 在Python中,处理数据时经常会遇到一个矛盾:既要简洁的语法,又要避免大量数据占用内存。列表推导式虽能简化代码,却会“一次性生成所有元…

在Fiddler中模拟网络中断,返回500错误的过程

开启断点在 Fiddler 菜单栏点击 Rules → Automatic Breakpoints,选择以下任一断点模式: Before Requests(请求发送前断点):可修改请求后再发送,适合模拟服务器因异常请求返回 500。 After Responses(响应返回后…

P4198 楼房重建 分析

题目概述 题目链接:https://www.luogu.com.cn/problem/P4198。 给出一个 \(x\) 轴长度为 \(n\),\(y\) 轴长度为 \(10^9\) 的二维平面。 一共有 \(n\) 天,第 \(i\) 天令坐标为 \(x_i\) 的线段变长为 \(y_i\)(屋顶就…

构建企业级AI提示词攻击防御体系的实战指南-2025年

构建企业级AI提示词攻击防御体系的实战指南-2025年在人工智能技术深度赋能的2025年,大型语言模型已全面渗透金融、政务、医疗等企业核心业务场景。与此同时,提示词攻击正以惊人的速度演进为企业AI安全的头号威胁。研…

矩阵的秩

设运输问题的约束矩阵为: \[A = \begin{bmatrix} 1 & 1 & 1 & 0 & 0 & 0 \\[6pt] 0 & 0 & 0 & 1 & 1 & 1 \\[6pt] 1 & 0 & 0 & 1 & 0 & 0 \\[6pt] 0 &a…

Python列表推导式完全指南

从循环到一行代码:Python列表推导式完全指南 在Python中,列表推导式(List Comprehension)是一种简洁、高效的创建列表的语法。它能将原本需要多行循环+条件判断的代码,浓缩成一行可读性强的表达式。但对新手来说,…

Rockchip RK3588 - Mali-G610 GPU驱动(mesa+Panthor)

参考文章: [1] Rockchip RK3399 - Mali-T860 GPU驱动(mesa+Panfrost) [2] RK3588关于panthor驱动的移植 [3] ARM Mali GPU Upstream software, aka Lima/Panfrost

如何启用cycloneDDS的iceoryx共享内存?(转载)

我们如果使用的cycloneDDS版本是0.10以上的,用这个官方文档 共享内存交换 — Eclipse Cyclone DDS,0.11.0 如果是以下的,用这个 Shared Memory — Eclipse Cyclone DDS 0.8.2 documentation 首先我们需要先下载…

AI浪潮下的学习与就业:机遇还是陷阱?

最近刷到一堆AI相关的新闻,感觉整个科技圈都炸了。从OpenAI在大学里搞实验,到DeepCode在论文复现代码上碾压人类博士,再到微软悄悄去掉Copilot的警告提示,AI这玩意儿真是越来越猛了。作为一个学软件工程的,我一边…

如何从csdn中快速转载文章(转载)

原文链接:https://www.cnblogs.com/SymPny/p/17570360.html#:~:text=按住Ctrl%2BF快捷键,寻找"article_content" 在编辑界面直接粘贴。 界面如下:,转载成功! 参考文档: https%3A%2F%2Fblog.csdn.net%2F…

win10安装MongoDB 3.0.15 Community

win10安装MongoDB 3.0.15 Community 1、下载MongoDB 下载地址:https://www.mongodb.com/try/download/community-edition/releases/archive安装步骤运行安装程序‌:双击下载好的.msi文件,启动安装向导。接受许可协议…

auto

auto关键字的使用 auto auto关键字是在编译期推到出类型然后替换,auto关键字不允许定义数组,不允许作为普通函数的参数,C++14之前不允许作为函数的返回值但是支持返回值后置,auto修饰的变量必须直接初始化,类内非…

一行“优雅”代码踩爆3x3矩阵:Python列表乘法的“共享引用”陷阱

一行“优雅”代码踩爆3x3矩阵:Python列表乘法的“共享引用”陷阱 很多Python新手初次创建多维列表时,都会被[[0] * 3] * 3这种写法吸引——一行代码搞定3x3矩阵,看起来简洁又聪明。可当你像这样修改一个元素时,却会…

写给创业者新手:什么是MAU指标,什么是ARR、PMF

写给创业者新手:什么是MAU指标,什么是ARR、PMF大家好,我是jobleap.cn的小九。今天谈谈创业者必知必会的基础概念。# MAU MAU(Monthly Active Users)的定义是:**在一个自然月内至少登录或使用过一次产品的独立用户数…