91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python失寵!Hugging Face用Rust新寫(xiě)了一個(gè)ML框架

jf_WZTOguxH ? 來(lái)源:AI前線 ? 2023-08-11 16:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近期,Hugging Face 低調(diào)開(kāi)源了一個(gè)重磅 ML 框架:Candle。Candle 一改機(jī)器學(xué)習(xí)慣用 Python 的做法,而是 Rust 編寫(xiě),重點(diǎn)關(guān)注性能(包括 GPU 支持)和易用性。

根據(jù) Hugging Face 的介紹,Candle 的核心目標(biāo)是讓 Serverless 推理成為可能。像 PyTorch 這樣的完整機(jī)器學(xué)習(xí)框架非常大,這使得在集群上創(chuàng)建實(shí)例的速度很慢。Candle 允許部署輕量級(jí)二進(jìn)制文件。另外,Candle 可以讓用戶(hù)從生產(chǎn)工作負(fù)載中刪除 Python。Python 開(kāi)銷(xiāo)會(huì)嚴(yán)重影響性能,而 GIL 是眾所周知的令人頭疼的問(wèn)題。

Rust 真的可以嗎?

Pytorch 框架是用 Python 編寫(xiě)的,API 也是基于 Python 的,這讓用戶(hù)上手開(kāi)發(fā)會(huì)非???。另外,Python 本身就是一種簡(jiǎn)潔而易于學(xué)習(xí)的編程語(yǔ)言,很適合初學(xué)者和專(zhuān)業(yè)開(kāi)發(fā)者使用。

但基于 Python 的 Pytorch 框架問(wèn)題也很明顯。相對(duì)于一些靜態(tài)圖框架(如 TensorFlow),Python 在某些情況下可能會(huì)導(dǎo)致性能問(wèn)題。Python 的全局解釋器鎖(GIL)可能會(huì)在多線程的情況下影響性能,尤其是在涉及 CPU 密集型任務(wù)時(shí)。Python 的解釋性質(zhì)還可能會(huì)引入一些運(yùn)行時(shí)開(kāi)銷(xiāo)。另外,將基于 Python 的 PyTorch 模型部署到生產(chǎn)環(huán)境中可能需要一些額外的步驟,不如其他編譯型語(yǔ)言那么方便。

顯然,Hugging Face 一直在尋找解決辦法,它給出的答案是用時(shí)下最快的語(yǔ)言 Rust 重寫(xiě)一個(gè) ML 框架?!白羁岬氖?,這是來(lái)自 Hugging Face 的,不僅僅是某人的愛(ài)好項(xiàng)目?!庇芯W(wǎng)友贊嘆道。實(shí)際上,許多 HF 生態(tài)系統(tǒng)已經(jīng)使用 Rust,例如 safetensors、tokenizer。

不過(guò),Rust 的難度也讓一些開(kāi)發(fā)者望而卻步,“編寫(xiě) Rust 是一件艱難的事情,你必須跳來(lái)跳去,花更多的時(shí)間思考編程語(yǔ)言的抽象,而不是思考要解決的問(wèn)題。所以,我現(xiàn)在還不著急重寫(xiě)任何 Python 的東西?!?/p>

開(kāi)發(fā)者“fooblaster”指出,Pytorch 部署模型有多個(gè)生產(chǎn)路徑無(wú)需 Python 解釋器,如 torchscript 和 libtorch,或是更煩人的路徑如 onnx export 和 onnx runtime,所以不需要 Rust 來(lái)解決這個(gè)問(wèn)題。另外很人知道,現(xiàn)在可以使用 C++ 編寫(xiě) Torch 訓(xùn)練代碼,并與推理和訓(xùn)練共享一種通用語(yǔ)言。

對(duì)此,開(kāi)發(fā)者“malcolmgreaves”表示,這些是使模型推理獨(dú)立于 Python 的偉大技術(shù)。然而,總是有大量的預(yù)處理、后處理或其他業(yè)務(wù)邏輯需要圍繞模型推理。這種事情需要在通用編程語(yǔ)言中完成,因此 Python 經(jīng)常被使用(因?yàn)橹С帜P偷拇a通常是由同一個(gè)人編寫(xiě)的,并且這些代碼很可能是 Python,因?yàn)槟哪P陀?xùn)練和 eval 代碼很可能也是 Python)。這就是非 Python PL(如 Rust)可以在簡(jiǎn)化生產(chǎn)部署 / 維護(hù)以及具有真正高效的生產(chǎn)推理方面發(fā)揮巨大作用的地方。

當(dāng)然,也有開(kāi)發(fā)者為 Python 打抱不平。

“任何編程語(yǔ)言在生產(chǎn)環(huán)境中都可能是一種痛苦。Python 的缺點(diǎn)之一也是它的優(yōu)點(diǎn)之一。使用 Python 或 JavaScript 等‘混亂’語(yǔ)言很容易陷入糟糕的生產(chǎn)環(huán)境,因此避免這些痛點(diǎn)的工具已經(jīng)非常成熟。有了這些,Python 在生產(chǎn)中就會(huì)變得很棒?!遍_(kāi)發(fā)者“devjab”進(jìn)一步表示,“是的,這將要求您的組織做出一些嚴(yán)肅的 CI 文化決策并強(qiáng)制執(zhí)行。但問(wèn)題是,雖然使用某些編程語(yǔ)言可以不必如此,但當(dāng)企業(yè)達(dá)到一定規(guī)模時(shí),總是會(huì)需要它們。因此,更早建立這個(gè)流程就會(huì)容易得多,而且如果您認(rèn)真使用 Python,早就會(huì)這樣做了。我認(rèn)為,如果在生產(chǎn)環(huán)境中工作很痛苦,那么問(wèn)題不在于技術(shù),而在于流程?!?/p>

實(shí)際上,業(yè)內(nèi)一直在努力解決 Python 帶來(lái)的問(wèn)題。

5 月份,LLVM 和 Swift 編程語(yǔ)言聯(lián)合創(chuàng)始人 Chris Lattner 創(chuàng)辦的新公司 Modular AI 發(fā)布了一個(gè)名為 Mojo 的新編程語(yǔ)言。Mojo 將 Python 特性與 C、C++ 和 CUDA 的系統(tǒng)編程功能結(jié)合了起來(lái),并通過(guò)其所謂“極限加速”與其他 Python 速度增強(qiáng)方案區(qū)分了開(kāi)來(lái)。據(jù)悉,憑借著硬件加速,Mojo 在運(yùn)行 Mandelbrot 等數(shù)字算法時(shí)比原始 Python 快上 3.5 萬(wàn)倍。

另一方面,Python 自身也在做改進(jìn)。最近,Python 終于宣布要?jiǎng)h GIL,Python 默認(rèn)版本將逐漸過(guò)渡到無(wú) GIL 版本。這一決定能否鞏固其在機(jī)器學(xué)習(xí)領(lǐng)域的地位,也需要時(shí)間驗(yàn)證。

與 PyTorch 對(duì)比

據(jù)悉,當(dāng)前 Candle 已經(jīng)支持如今的前沿模型,像 Llama2。經(jīng)過(guò)改寫(xiě)的模型,比如 Llama2 能夠方便、快速的運(yùn)行在容器環(huán)境,甚至可以運(yùn)行在瀏覽器中。Candle 結(jié)構(gòu)包括:

Candle-core:核心操作、設(shè)備和 Tensor 結(jié)構(gòu)定義。

Candle-nn:構(gòu)建真實(shí)模型的工具。

Candle-examples:在實(shí)際設(shè)置中使用庫(kù)的示例。

Candle-kernels:CUDA 自定義內(nèi)核;

Candle-datasets:數(shù)據(jù)集和數(shù)據(jù)加載器。

Candle-Transformers:與 Transformers 相關(guān)的實(shí)用程序。

Candle-flash-attn:Flash attention v2 層。

cd4f865e-3808-11ee-9e74-dac502259ad0.png

Pytorch 和 Candle 對(duì)比

該項(xiàng)目正在處于快速迭代過(guò)程中,更新非常頻繁,很多功能在不斷開(kāi)發(fā)中,目前包含如下功能和特點(diǎn):

語(yǔ)法簡(jiǎn)單, 風(fēng)格與 PyTorch 相似。

CPU 和 Cuda Backend:m1、f16、bf16。

支持 Serverless(CPU)、小型和快速部署

支持 WASM,可在瀏覽器中運(yùn)行模型。

模型訓(xùn)練

使用 NCCL 進(jìn)行分布式計(jì)算。

開(kāi)箱即用的模型:Llama、Whisper、Falcon、StarCoder...

嵌入用戶(hù)定義的操作 / 內(nèi)核,如 flash-attention v2。

對(duì)于 Hugging Face 的這一新 ML 框架,大家有什么感想或使用感受?歡迎在評(píng)論區(qū)分享!

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 框架
    +關(guān)注

    關(guān)注

    0

    文章

    404

    瀏覽量

    18422
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    813

    瀏覽量

    14850
  • Rust
    +關(guān)注

    關(guān)注

    1

    文章

    240

    瀏覽量

    7585

原文標(biāo)題:Python 失寵!Hugging Face 用 Rust 新寫(xiě)了一個(gè) ML框架,現(xiàn)已低調(diào)開(kāi)源

文章出處:【微信號(hào):AI前線,微信公眾號(hào):AI前線】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    NVIDIA Alpamayo 1模型在Hugging Face平臺(tái)下載量已突破10萬(wàn)次

    NVIDIA Alpamayo 1 在 Hugging Face 的下載量已突破 10 萬(wàn)次,且仍在持續(xù)增長(zhǎng),已成為 Hugging Face 平臺(tái)下載量最高的機(jī)器人模型(截止至 2
    的頭像 發(fā)表于 03-04 16:27 ?617次閱讀

    2025開(kāi)放原子開(kāi)發(fā)者大會(huì)旋武開(kāi)源社區(qū)Rust分論壇成功舉辦

    11月22日,2025開(kāi)放原子開(kāi)發(fā)者大會(huì)——旋武開(kāi)源社區(qū)Rust分論壇在北京順利召開(kāi)。論壇以“共建中國(guó)Rust生態(tài)”為核心主題,匯聚京東、華為、vivo、阿里、毛豆教育、DORA社區(qū)及南京大學(xué)等企業(yè)與學(xué)術(shù)機(jī)構(gòu)技術(shù)專(zhuān)家,及眾多Rust
    的頭像 發(fā)表于 11-27 14:55 ?661次閱讀

    2025開(kāi)放原子開(kāi)發(fā)者大會(huì)旋武社區(qū)Rust分論壇即將啟幕

    在數(shù)字化轉(zhuǎn)型持續(xù)深化、系統(tǒng)安全與性能需求愈發(fā)迫切的當(dāng)下,Rust憑借強(qiáng)大的內(nèi)存安全、高并發(fā)性能和卓越的開(kāi)發(fā)者體驗(yàn),正成為重塑軟件開(kāi)發(fā)疆界的關(guān)鍵力量,更是構(gòu)建下代可靠高效基礎(chǔ)設(shè)施的核心選擇。11月
    的頭像 發(fā)表于 11-13 10:00 ?587次閱讀

    CIE全國(guó)RISC-V創(chuàng)新應(yīng)用大賽 人臉識(shí)別系統(tǒng)介紹與移植

    人臉識(shí)別系統(tǒng)移植到MUSE Pi Pro RISC-V介紹 系統(tǒng)是原本為某學(xué)校開(kāi)發(fā)的人臉智能識(shí)別簽到系統(tǒng)。最初基于x86 Windows系統(tǒng)進(jìn)行開(kāi)發(fā)使用的,具體包括個(gè)N6000服務(wù)器和22臺(tái)
    發(fā)表于 11-08 11:19

    NVIDIA推出面向語(yǔ)言、機(jī)器人和生物學(xué)的全新開(kāi)源AI技術(shù)

    NVIDIA 秉持對(duì)開(kāi)源的長(zhǎng)期承諾,推出了面向語(yǔ)言、機(jī)器人和生物學(xué)的全新開(kāi)源 AI 技術(shù),為構(gòu)建開(kāi)源生態(tài)系統(tǒng)做出貢獻(xiàn),擴(kuò)展 AI 的普及并推動(dòng)創(chuàng)新。NVIDIA 正將這些模型、數(shù)據(jù)和訓(xùn)練框架貢獻(xiàn)給 Hugging Face,讓
    的頭像 發(fā)表于 11-06 11:49 ?1065次閱讀

    Python調(diào)用API教程

    個(gè)不同系統(tǒng)之間的信息交互。在這篇文章中,我們將詳細(xì)介紹Python調(diào)用API的方法和技巧。 、Requests庫(kù)發(fā)送HTTP請(qǐng)求 使用Pyth
    的頭像 發(fā)表于 11-03 09:15 ?870次閱讀

    PYQT 應(yīng)用程序框架及開(kāi)發(fā)工具

    大家好,本團(tuán)隊(duì)此次分享的內(nèi)容為開(kāi)發(fā)過(guò)程中使用到的PYQT 應(yīng)用程序框架及開(kāi)發(fā)工具。 pYqt 是個(gè)多平臺(tái)的 python 圖形用戶(hù)界面應(yīng)用程序
    發(fā)表于 10-29 07:15

    Python 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴(kuò)展的商品詳情爬蟲(chóng)實(shí)戰(zhàn)

    、技術(shù)選型:為什么選 Python 而不是 Java? 結(jié)論: “調(diào)研階段 Python,上線后如果 QPS 爆表再考慮 Java 重構(gòu)?!?二、整體架構(gòu)速覽(3 分鐘看懂) 三、
    的頭像 發(fā)表于 10-21 16:59 ?515次閱讀
    <b class='flag-5'>用</b> <b class='flag-5'>Python</b> 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴(kuò)展的商品詳情爬蟲(chóng)實(shí)戰(zhàn)

    NVIDIA開(kāi)源Audio2Face模型及SDK

    NVIDIA 現(xiàn)已開(kāi)源 Audio2Face 模型與 SDK,讓所有游戲和 3D 應(yīng)用開(kāi)發(fā)者都可以構(gòu)建并部署帶有先進(jìn)動(dòng)畫(huà)的高精度角色。NVIDIA 開(kāi)源 Audio2Face 的訓(xùn)練框架,任何人都可以針對(duì)特定
    的頭像 發(fā)表于 10-21 11:11 ?817次閱讀
    NVIDIA開(kāi)源Audio2<b class='flag-5'>Face</b>模型及SDK

    什么是AI模型的推理能力

    NVIDIA 的數(shù)據(jù)工廠團(tuán)隊(duì)為 NVIDIA Cosmos Reason 等 AI 模型奠定了基礎(chǔ),該模型近日在 Hugging Face 的物理推理模型排行榜中位列榜首。
    的頭像 發(fā)表于 09-23 15:19 ?1269次閱讀

    利用超微型 Neuton ML 模型解鎖 SoC 邊緣人工智能

    才能做好。 現(xiàn)在,這些阻礙即將被解決。 Neuton 是個(gè)自動(dòng)生成 ML 模型的框架,其大小僅為 TensorFlow Lite 等傳統(tǒng)框架
    發(fā)表于 08-31 20:54

    RT-Thread 遇上 Rust:安全內(nèi)核 RusT-Thread 的誕生

    大家好,我們是中國(guó)科學(xué)技術(shù)大學(xué)操作系統(tǒng)原理與設(shè)計(jì)(H)課oooooS小組。這個(gè)項(xiàng)目是我們的課程大作業(yè):參考RT-Thread架構(gòu),使用Rust搭建個(gè)原生的嵌入式操作系統(tǒng)內(nèi)核。初識(shí)Rust
    的頭像 發(fā)表于 08-02 11:03 ?3538次閱讀
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全內(nèi)核 <b class='flag-5'>RusT</b>-Thread 的誕生

    請(qǐng)問(wèn)OpenVINO? 是否支持 Rust 綁定?

    無(wú)法確定OpenVINO?是否支持 Rust 綁定。
    發(fā)表于 06-25 07:45

    商湯科技日日新V6大模型斬獲“雙料第項(xiàng)國(guó)內(nèi)榜首,個(gè)全球第

    體Agent測(cè)試任務(wù)中獲得國(guó)內(nèi)最高分。 同時(shí),根據(jù)Hugging Face——全球最大的AI開(kāi)源社區(qū)上的數(shù)據(jù),在Open Compass本月的多
    的頭像 發(fā)表于 05-30 11:13 ?1589次閱讀
    商湯科技日日新V6大模型斬獲“雙料第<b class='flag-5'>一</b>” <b class='flag-5'>一</b>項(xiàng)國(guó)內(nèi)榜首,<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>全球第<b class='flag-5'>一</b>

    利用英特爾OpenVINO在本地運(yùn)行Qwen2.5-VL系列模型

    近期阿里通義實(shí)驗(yàn)室在 Hugging Face 和 ModelScope 上開(kāi)源了 Qwen2.5-VL 的 Base 和 Instruct 模型,包含 3B、7B 和 72B 在內(nèi)的 3 個(gè)模型尺寸。
    的頭像 發(fā)表于 03-12 13:42 ?2605次閱讀
    利用英特爾OpenVINO在本地運(yùn)行Qwen2.5-VL系列模型