微软发布.NET AI集成库预览版

微软发布 Microsoft.Extensions.AI 预览版

上周,微软宣布推出两个库的预览版本:Microsoft.Extensions.AI.Abstractions 和 Microsoft.Extensions.AI。这些被称为“统一 AI 构建块”的包为 .NET 生态系统提供了将人工智能(AI)服务集成到 .NET 应用程序和库中的基本抽象,并提供了增强关键功能的中间件。

主要功能和目标

这些库旨在为 .NET 开发者提供统一的 AI 服务抽象层,支持与小型和大型语言模型(SLMs 和 LLMs)、嵌入模型以及中间件的交互。微软强调,这些库的目标是作为 .NET 生态系统中的统一层,使开发者能够选择他们喜欢的框架和库,同时确保跨生态系统的无缝集成和协作。

架构与设计

微软表示,当前的重点是创建可以被各种服务实现的抽象层,所有服务都遵循相同的核心概念。微软不打算发布针对任何特定供应商服务的 API,而是希望通过这些库提供一个统一的抽象层,使开发者能够灵活选择服务提供商。

主要优势

  1. 统一的 API 抽象:类似于微软的日志记录和依赖注入抽象,这些库为 AI 服务提供了统一的 API 抽象。
  2. 灵活性:开发者可以使用 AI 服务而不被绑定到特定供应商。
  3. 易用性:开发者可以使用相同的抽象层实验不同的包,保持应用程序中的单一 API。
  4. 组件化:简化了添加功能和测试的流程。

参考实现与未来计划

预览版中包含了 OpenAI、Azure AI Inference 和 Ollama 的参考实现。微软计划与 .NET 生态系统中的包作者合作,将这些抽象集成到客户端库中,从而减少额外包的需求。微软还鼓励维护 .NET AI 服务客户端库的开发者实现这些抽象。

未来,微软计划继续以预览版形式发布这些库,并预计在 .NET 9 发布(11 月)之前保持预览状态。短期计划包括与 Semantic Kernel 合作进行集成、更新示例项目(如 eShop)以使用这些库,并与开发者合作推动采用。

社区反馈

社区对预览版的反馈总体上是积极的,开发者对这些新库表示兴奋和好奇。一些开发者对命名空间 Microsoft.Extensions.AI 的选择提出了疑问,并建议使用 Microsoft.Extensions.LLM,因为这些库主要关注大型语言模型。此外,开发者对 F# 版本的库表示期待,并询问这些库是否适用于 Azure OpenAI 库。微软确认开发者可以使用 AzureOpenAIClient 而不是 OpenAIClient

总结

微软的 Microsoft.Extensions.AI 库为 .NET 开发者提供了一个统一的抽象层,使他们能够更灵活地集成和使用 AI 服务。通过提供标准化的 API 和中间件,这些库简化了 AI 服务的集成过程,并增强了 .NET 生态系统的协作能力。未来,微软将继续与社区合作,推动这些库的采用和发展。

阅读 32
0 条评论