您的位置:首頁(yè) > 軟件教程 > 教程 > .NET 9:AI 助力下的全新升級(jí)

.NET 9:AI 助力下的全新升級(jí)

來(lái)源:好特整理 | 時(shí)間:2024-09-10 09:55:12 | 閱讀:89 |  標(biāo)簽: a T Net AI   | 分享到:

.NET 9 即將發(fā)布 RC1, 今年初.NET 團(tuán)隊(duì)在發(fā)布.NET 9 Preview 1版本時(shí)寫了一篇文章《我們對(duì) .NET 9 的愿景》,其中特別提到了對(duì)AI的展望 .NET 9,我們致力于讓 .NET 開(kāi)發(fā)人員更輕松地將人工智能集成到他們現(xiàn)有的和新的應(yīng)用程序中。 開(kāi)發(fā)人員將找到用于使用 Op

.NET 9 即將發(fā)布 RC1,今年初.NET 團(tuán)隊(duì)在發(fā)布.NET 9 Preview 1版本時(shí)寫了一篇文章《我們對(duì) .NET 9 的愿景》,其中特別提到了對(duì)AI的展望。.NET 9致力于讓 .NET 開(kāi)發(fā)人員更輕松地將人工智能集成到他們現(xiàn)有的和新的應(yīng)用程序中。 開(kāi)發(fā)人員將找到用于使用 OpenAI 和 OSS 模型(托管和本地)的優(yōu)秀庫(kù)和文檔,我們將繼續(xù)在Semantic Kernel、OpenAI 和 Azure SDK 方面進(jìn)行合作,以確保 .NET 開(kāi)發(fā)人員擁有構(gòu)建智能應(yīng)用程序的一流體驗(yàn)。

在 .NET 9 中,.NET 社區(qū)正在大力推動(dòng) AI -- 這非常令人震驚......就像 AI 現(xiàn)在很重要。 在過(guò)去大數(shù)據(jù)、移動(dòng)互聯(lián)網(wǎng)時(shí)代。由于微軟的封閉和不夠開(kāi)放,錯(cuò)過(guò)了兩個(gè)時(shí)代,不過(guò)在云原生和人工智能時(shí)代,.NET已經(jīng)完成脫胎換骨,變得開(kāi)放又強(qiáng)大,特別是即將到來(lái)的.NET 9,幫助開(kāi)發(fā)人員構(gòu)建更智能的應(yīng)用程序方面有非常大的改進(jìn)。下面是我匯總的.NET 社區(qū)里這一年在AI 方面的新進(jìn)展。

1、TensorFlow.NET升級(jí)

TensorFlow.NET 正在通過(guò)高性能 C# 綁定和自動(dòng)微分支持進(jìn)行升級(jí)。完整的 Keras API 現(xiàn)在也采用 C# 語(yǔ)言:

  • 使用 cppSharp 生成的新的高性能 C# 綁定
  • 自定義 C# 運(yùn)算的自動(dòng)微分支持
  • Keras API 完全用 C# 實(shí)現(xiàn),允許無(wú)縫的模型定義和訓(xùn)練

2、OpenAI SDK 集成

OpenAI SDK 使開(kāi)發(fā)人員能夠直接訪問(wèn) OpenAI 最新的公共 AI 模型,包括 GPT-4 及其結(jié)構(gòu)化輸出功能。這意味著您將擁有完整的 API 支持,包括同步和異步 API 以滿足您的需求 - 甚至是用于實(shí)時(shí)處理的流式完成。SDK 是可擴(kuò)展的,因此您可以進(jìn)一步自定義它。此外,它還與 Azure OpenAI 進(jìn)行了集成,用于企業(yè)級(jí)部署,也方便對(duì)接各種兼容OpenAI API的各大模型。這為使用對(duì)話式 AI、動(dòng)態(tài)內(nèi)容生成和 AI 驅(qū)動(dòng)功能(如音頻轉(zhuǎn)錄和文本轉(zhuǎn)語(yǔ)音生成)構(gòu)建更智能的 .NET 應(yīng)用程序提供了大量可能性。

3、ONNX 運(yùn)行時(shí)原生支持

無(wú)需再費(fèi)力地進(jìn)行單獨(dú)的軟件包安裝。 我們獲得了一個(gè)專用命名空間 (Microsoft.ML.OnnxRuntime),其中包含一個(gè) API 來(lái)直接加載和運(yùn)行 ONNX 模型:

  • 直接模型加載: var session = new InferenceSession(“model.onnx”);
  • 使用 Span 和 Memory 對(duì)輸入/輸出張量進(jìn)行高效的內(nèi)存管理
  • 通過(guò)統(tǒng)一 API 支持硬件加速(CPU、GPU、DirectML)

4、開(kāi)發(fā)人員友好的ML.NET 4.0

AutoML 通過(guò)多指標(biāo)優(yōu)化和時(shí)間序列預(yù)測(cè)支持變得更加智能:

  • AutoML 增強(qiáng)功能:
    • 用于平衡模型選擇的多指標(biāo)優(yōu)化
    • 支持 AutoML 中的時(shí)間序列預(yù)測(cè)
  • 用于簡(jiǎn)化模型部署的新 Infer API
  • 將 TensorFlow 和 ONNX 模型轉(zhuǎn)換為 ML.NET 格式以提高性能
  • 新的Microsoft.ML.GenAI :GenAI包提供一系列流行GenAI模型的torchsharp實(shí)現(xiàn),目標(biāo)是從相應(yīng)的Python常規(guī)模型加載相同的權(quán)重。首先將添加的模型包括 Microsoft.ML.GenAI.Core 、 Microsoft.ML.GenAI.Phi 、 Microsoft.ML.GenAI.LLaMA Microsoft.ML.GenAI.Mistral 以及 Microsoft.ML.GenAI.StableDiffusion。

5、.NET 9 中的 AI 輔助代碼生成

AI 輔助代碼生成(代碼片段、重構(gòu)、單元測(cè)試)通過(guò) dotnet ai 命令集成到 .NET 9 SDK 中,非常棒:

  • 生成代碼片段: dotnet ai snippet “mplement a binary search algorithm”
  • 重構(gòu)現(xiàn)有代碼: dotnet ai refactor --file Program.cs --description “Convert to LINQ query”
  • 生成單元測(cè)試:dotnet ai test --file MyClass.cs

6、NLP 工具

.NET 9 提供了一組豐富的 NLP 工具,用于標(biāo)記化、NER*、情感分析和文本分類:

  • 分詞和句子分句:

var tokenizer = new Tokenizer(); var tokens = tokenizer.Tokenize("Hello, world!");

  • 命名實(shí)體識(shí)別 (NER):

var ner = new NamedEntityRecognizer(); var entities = ner.RecognizeEntities("Microsoft was founded by Bill Gates.");

  • 使用預(yù)訓(xùn)練模型進(jìn)行感知分析和文本分類

7、.NET 9 中的 GPU 加速

.NET 9 中的 GPU 加速比以往任何時(shí)候都更容易獲得:

  • 用于高效多維數(shù)組運(yùn)算的新 Tensor 類型 :張量是許多數(shù)學(xué)模型的基本組成部分,包括深度學(xué)習(xí)算法。它們是用于保存神經(jīng)網(wǎng)絡(luò)中的權(quán)重、偏差和中間計(jì)算的多維數(shù)組。這樣可以有效的處理數(shù)據(jù)和信息流,以用于學(xué)習(xí)和預(yù)測(cè)目的。 無(wú)論是圖像識(shí)別、語(yǔ)言理解還是趨勢(shì)預(yù)測(cè),張量在AI的各個(gè)方面都發(fā)揮著至關(guān)重要的作用。 此外,它們還可以更輕松地在 ONNX Runtime、TorchSharp 或 ML.NET 等庫(kù)之間共享數(shù)據(jù)、創(chuàng)建自己的數(shù)學(xué)庫(kù)或使用 AI 模型開(kāi)發(fā)應(yīng)用程序。
  • CUDA 互操作改進(jìn):
  • 與 Nvidia 的 cuDNN 庫(kù)集成,用于深度學(xué)習(xí)基元

8、簡(jiǎn)化的 AI 模型部署

.NET 9 通過(guò)新的 ASP.NET Core 集成簡(jiǎn)化了 AI 模型部署:

  • 新項(xiàng)目模板:dotnet new webapi --ai -model
  • 模型終端節(jié)點(diǎn)的自動(dòng) OpenAPI/Swagger 文檔
  • 內(nèi)置模型版本控制和 A/B 測(cè)試支持
  • 使用 gRPC 集成提供可擴(kuò)展的模型服務(wù)

9、新的數(shù)值 API

.NET 9 引入了新的數(shù)值 API,以實(shí)現(xiàn)高效的張量和矩陣運(yùn)算:

  • System.Numerics.Tensor 用于高效的張量運(yùn)算
  • System.Numerics.Matrix 用于矩陣代數(shù)
  • SIMD 加速線性代數(shù)例程

10、監(jiān)控和觀察您的 LLM 應(yīng)用程序

大型語(yǔ)言模型 (LLM) 應(yīng)用程序需要可靠、高性能和高質(zhì)量的結(jié)果。 開(kāi)發(fā)人員需要在開(kāi)發(fā)和生產(chǎn)環(huán)境中測(cè)量和跟蹤LLM 應(yīng)用程序的結(jié)果和行為,并識(shí)別和解決任何問(wèn)題。

  • 性能監(jiān)控 :我們想知道我們的模型運(yùn)行速度有多快,它們使用了多少內(nèi)存,以及它們處理負(fù)載的情況。這有助于我們發(fā)現(xiàn)瓶頸并優(yōu)化事情。
  • 模型偏差檢測(cè) :隨著世界的變化,模型會(huì)隨著時(shí)間的推移而過(guò)時(shí)。我們需要工具來(lái)捕捉模型的性能何時(shí)開(kāi)始下滑,這樣我們就知道是時(shí)候進(jìn)行重新訓(xùn)練了。
  • 可解釋性和透明度 :AI 不應(yīng)該是一個(gè)黑匣子。我們必須有辦法窺探內(nèi)部并了解模型如何做出決策。這建立了信任并幫助我們捕捉任何無(wú)意的偏見(jiàn)。
  • 道德和偏見(jiàn)監(jiān)控 :AI應(yīng)該是公平和公正的。我們需要工具來(lái)積極檢查和解決模型中的任何潛在偏差。

11、.NET 的Semantic kernel

Semantic kernel 是一種開(kāi)源 SDK,可在 .NET 應(yīng)用中啟用 AI 集成和業(yè)務(wù)流程功能。 對(duì)于將一個(gè)或多個(gè) AI 服務(wù)與其他 API 或 Web 服務(wù)、數(shù)據(jù)存儲(chǔ)和自定義代碼結(jié)合使用的 .NET 應(yīng)用程序,此 SDK 通常是推薦的 AI 編排工具。 語(yǔ)義內(nèi)核以以下方式使企業(yè)開(kāi)發(fā)人員受益:

  • 簡(jiǎn)化將 AI 功能集成到現(xiàn)有應(yīng)用程序中的過(guò)程,從而為企業(yè)產(chǎn)品提供統(tǒng)一的解決方案。
  • 通過(guò)可降低復(fù)雜性的抽象,最大限度地縮短使用不同 AI 模型或服務(wù)的學(xué)習(xí)曲線。
  • 通過(guò)減少 AI 模型提示和響應(yīng)的不可預(yù)測(cè)行為來(lái)提高可靠性。 可以微調(diào)提示并計(jì)劃任務(wù),以創(chuàng)建可控且可預(yù)測(cè)的用戶體驗(yàn)。

12、比以往任何時(shí)候都更強(qiáng)大.NET 社區(qū)

.NET 是開(kāi)源的,包括 GitHub 上提供的所有庫(kù)、工具和框架,因此一直在進(jìn)行大量協(xié)作。C# 已經(jīng)在人工智能領(lǐng)域發(fā)展并站穩(wěn)腳跟,.NET社區(qū)也在努力建設(shè)中。下面我們列出社區(qū)中一些資源供大家參考:

13、.NET 9 + 人工智能

Microsoft 正在 AI 方面進(jìn)行重大投資,并且他們正在推動(dòng) .NET 和開(kāi)發(fā)社區(qū)的發(fā)展。.NET 生態(tài)系統(tǒng)提供了許多強(qiáng)大的工具、庫(kù)和服務(wù)來(lái)開(kāi)發(fā) AI 應(yīng)用程序。 .NET 支持云和本地 AI 模型連接、適用于各種 AI 和矢量數(shù)據(jù)庫(kù)服務(wù)的許多不同的 SDK 以及其他工具,有助于構(gòu)建范圍和復(fù)雜性不同的智能應(yīng)用。

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

a 1.0
a 1.0
類型:休閑益智  運(yùn)營(yíng)狀態(tài):正式運(yùn)營(yíng)  語(yǔ)言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動(dòng)

《alittletotheleft》官網(wǎng)正版是一款備受歡迎的休閑益智整理游戲。玩家的任務(wù)是對(duì)日常生活中的各種雜亂物
她
類型:休閑益智  運(yùn)營(yíng)狀態(tài):未知  語(yǔ)言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動(dòng)

《她》是獨(dú)立開(kāi)發(fā)者橘喵喵開(kāi)發(fā)的一款模擬養(yǎng)成類的休閑游戲。玩家能在游戲中,自由的養(yǎng)成貓娘凱蒂,大量隨

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號(hào)!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]

湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)