網易首頁 > 網易號 > 正文 申請入駐

傳統機器學習模型界的 "Ollama"

0
分享至

今天來聊個有意思的項目 ——Timber

號稱是"傳統機器學習模型界的 Ollama"

說實話,第一次看到這個名字我還以為是日志框架(Java 程序員懂的都懂),結果一看,這貨居然能把 XGBoost、LightGBM 這些經典 ML 模型編譯成純 C 代碼,然后一鍵啟動 HTTP 服務

簡介

Timber是一個多 pass 優化編譯器,專門用來伺候那些"老派"的機器學習模型 —— XGBoost、LightGBM、scikit-learn、CatBoost、ONNX 等等。

它的核心玩法很簡單:

  1. 讀取你的模型文件

  2. 經過幾輪 IR 優化(死葉消除、量化、分支排序)

  3. 生成零依賴的 C99 推理代碼

  4. 編譯成共享庫

  5. 通過內置的 HTTP 服務器(兼容 Ollama API)對外提供服務

官方示例中,一個 50 棵樹的 XGBoost 模型編譯后只有47.9KB,沒有任何運行時依賴。這體積,比 Python 環境小了幾百上千倍。當然,模型大小會影響最終產物體積,樹越多、特征越多,生成的二進制就越大。

性能有多離譜?

官方給出的 benchmark 數據(Apple M2 Pro,XGBoost 二分類模型,50棵樹):

Runtime

單樣本延遲

吞吐量

加速比

Timber (native C)

~2 μs

~500,000 / sec

336×

ONNX Runtime

~80–150 μs

~10,000 / sec

~5×

Treelite

~10–30 μs

~50,000 / sec

~20×

Python XGBoost

~670 μs

~1,500 / sec

2微秒一次推理,這意味著什么?一秒鐘能跑50萬次預測。做風控、做推薦、做實時決策的系統,這性能直接起飛。

安裝

安裝簡單到令人發指:

pip install timber-compiler

需要系統里有 gcc 或 clang。Python 版本要求官方沒明確說,建議用較新的版本

使用

Timber 的使用方式分兩種:

方式一:直接 serve 遠程模型

timber serve https://yourhost.com/models/fraud_model.json

一行命令,下載、編譯、啟動服務全搞定。連模型文件都不用先下載到本地。

方式二:本地加載后再 serve

# 先加載編譯
timber load fraud_model.json --name fraud-detector


# 再啟動服務
timber serve fraud-detector

服務默認啟動在http://localhost:11434,API 完全兼容 Ollama:

curl -s http://localhost:11434/api/predict \
-H "Content-Type: application/json" \
-d '{
"model": "fraud-detector",
"inputs": [[1.2, 0.4, 3.1, 0.9]]
}'

返回結果:

{"model": "fraud-detector", "outputs": [[0.031]], "latency_us": 1.8}

看到那個latency_us: 1.8了嗎?1.8微秒,就問你快不快吧。

其他常用命令:

timber list                    # 查看已加載的模型
timber inspect fraud-detector # 查看模型詳情
timber bench fraud-detector # 跑 benchmark
timber validate fraud-detector # 數值精度驗證
支持的模型格式

目前支持的框架和格式:

框架

文件格式

XGBoost

.json

全目標函數;多分類、二分類、回歸

LightGBM

.txt, .model, .lgb

包括多分類

scikit-learn

.pkl, .pickle

GradientBoosting、RandomForest、DecisionTree、Pipeline

ONNX

.onnx

TreeEnsemble、Linear、SVM、Normalizer、Scaler

CatBoost

.json

需要 JSON 導出格式


性能表現

官方給出的 benchmark 是在 Apple M2 Pro 上跑的,用的 sklearn 乳腺癌數據集(XGBoost 二分類,50棵樹,30特征)。

從數據看,Timber 的純推理延遲約2 μs,比 Python XGBoost 快了336倍。當然,實際端到端延遲還要加上 HTTP 往返(大概 50-200 μs,取決于網絡棧)。

不過官方也說了,這個 benchmark 是"in-process"測試,不是真實的 HTTP 調用。真實場景下性能會受網絡、并發等因素影響。

適用場景

根據官方介紹和我的理解,這幾類場景最適合上 Timber:

  1. 風控與反欺詐—— 需要亞毫秒級響應的實時交易決策

  2. 邊緣/IoT 部署—— 把模型丟到網關、微控制器、ARM Cortex-M 上跑

  3. 強監管行業—— 金融、醫療、汽車,需要確定性、可審計的推理產物

  4. 基礎設施團隊—— 想徹底把 Python 從關鍵路徑上踢掉

局限與注意事項

當然,Timber 也不是萬能的:

  • ONNX 支持有限—— 目前只支持樹模型、線性模型、SVM,神經網絡層還不支持

  • CatBoost 需要 JSON 導出—— 原生二進制格式不支持

  • XGBoost 只支持 JSON 格式—— 老版的二進制 booster 不支持

  • LLVM IR 需要本地安裝 LLVM—— 想生成 IR 代碼的話

另外,如果你的模型是深度學習模型(PyTorch、TensorFlow 的神經網絡),Timber 目前幫不上忙。它專注的是"傳統" ML 模型。

總結

Timber 是個很有意思的項目

它解決了一個真實存在的問題:經典 ML 模型的高性能部署

在大模型當道的今天,很多人可能覺得 XGBoost、LightGBM 這些"老古董"已經過時了。但實際上,在風控、推薦、廣告這些場景,樹模型依然是主力 —— 它們訓練快、可解釋性強、對小數據友好。

Timber 的價值在于,讓這些經典模型也能享受到"現代"的部署體驗:一行命令啟動服務、Ollama 兼容的 API、極致的性能、零依賴的產物。

如果你在生產環境跑 XGBoost/LightGBM,又受夠了 Python 的性能瓶頸或者環境依賴問題,Timber 值得一試。

項目地址:https://github.com/kossisoroyce/timber

制作不易,如果這篇文章覺得對你有用,可否點個關注。給我個三連擊:點贊、轉發和在看。若可以再給我加個,謝謝你看我的文章,我們下篇再見!


特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
賺46萬獎金!趙心童13-9丁俊暉 1/4決賽對手出爐 世錦賽8強定4席

賺46萬獎金!趙心童13-9丁俊暉 1/4決賽對手出爐 世錦賽8強定4席

侃球熊弟
2026-04-26 19:36:04
中國第四艘航母官宣:是核動力!舷號19,命名大概率是“江蘇號”

中國第四艘航母官宣:是核動力!舷號19,命名大概率是“江蘇號”

福建睿平
2026-04-26 10:53:36
南方降雨加強!明后天暴雨大暴雨來襲,又將由暖熱轉涼

南方降雨加強!明后天暴雨大暴雨來襲,又將由暖熱轉涼

極目新聞
2026-04-26 18:49:46
追覓俞浩:小紅書是一個非常爛的平臺 上面應該沒有一家好公司

追覓俞浩:小紅書是一個非常爛的平臺 上面應該沒有一家好公司

快科技
2026-04-26 15:15:33
華為余承東:尊界新車價格在200萬左右

華為余承東:尊界新車價格在200萬左右

界面新聞
2026-04-26 13:08:56
吳京老師,有人搶你飯碗!

吳京老師,有人搶你飯碗!

十柱
2026-04-25 16:41:06
李嘉誠又跑了!百佳超市被賣,接盤者每次都得“脫層皮”

李嘉誠又跑了!百佳超市被賣,接盤者每次都得“脫層皮”

子芫伴你成長
2026-04-25 23:17:42
王石真的老了!突然現身大梅沙,他赤裸著上半身,貼著胰島素針頭

王石真的老了!突然現身大梅沙,他赤裸著上半身,貼著胰島素針頭

火山詩話
2026-04-26 06:11:32
25歲女孩確診黑色素瘤僅5個月便離世,原本今年要訂婚……生前曾在腹部發現“巨大的腫瘤”

25歲女孩確診黑色素瘤僅5個月便離世,原本今年要訂婚……生前曾在腹部發現“巨大的腫瘤”

都市快報橙柿互動
2026-04-26 19:45:19
偉大的13-9!趙心童淘汰丁俊暉晉級:創造2大紀錄,PK墨菲沖4強!

偉大的13-9!趙心童淘汰丁俊暉晉級:創造2大紀錄,PK墨菲沖4強!

劉姚堯的文字城堡
2026-04-26 19:49:57
社保掛靠迎來全面嚴查,過往繳費全部清算,3類人下場早已注定

社保掛靠迎來全面嚴查,過往繳費全部清算,3類人下場早已注定

復轉這些年
2026-04-26 18:03:47
全變味了?蘇超開幕不到半月,不對勁的一幕上演,輿論風向又變了

全變味了?蘇超開幕不到半月,不對勁的一幕上演,輿論風向又變了

墨印齋
2026-04-25 18:07:43
特朗普緊急撤離始末披露:男子持槍沖過安檢關卡,“跑得非常快”;現場響起5至8聲槍響;副總統萬斯比特朗普先撤;特朗普撤離時一度踉蹌

特朗普緊急撤離始末披露:男子持槍沖過安檢關卡,“跑得非常快”;現場響起5至8聲槍響;副總統萬斯比特朗普先撤;特朗普撤離時一度踉蹌

極目新聞
2026-04-26 20:58:29
笑瘋了!西安給失業人員免費培訓,評論區太扎心,一點面子都不留

笑瘋了!西安給失業人員免費培訓,評論區太扎心,一點面子都不留

譚談社會
2026-04-25 22:19:12
一56歲男子腦梗去世,很少吃油炸零食,醫者嘆氣:無知毀了他

一56歲男子腦梗去世,很少吃油炸零食,醫者嘆氣:無知毀了他

芹姐說生活
2026-04-26 16:07:29
泡泡瑪特推出Labubu冰箱,售價5999元,上千人預約

泡泡瑪特推出Labubu冰箱,售價5999元,上千人預約

大象新聞
2026-04-26 13:01:02
特朗普內閣又一個女部長落馬,各種丑聞之丑令人作嘔……

特朗普內閣又一個女部長落馬,各種丑聞之丑令人作嘔……

新民周刊
2026-04-26 15:07:25
森林狼3比1掘金:逆境中殺出了多孫穆?!

森林狼3比1掘金:逆境中殺出了多孫穆?!

張佳瑋寫字的地方
2026-04-26 12:02:17
孩子脫臼復位只收100元,家長舉報亂收費!衛健委:應收110元,你還少給了!家長拒繳費后離開!

孩子脫臼復位只收100元,家長舉報亂收費!衛健委:應收110元,你還少給了!家長拒繳費后離開!

醫脈圈
2026-04-25 20:04:06
老外震驚!中國饅頭橫掃歐美!不是文化輸出,是中國供應鏈贏麻了

老外震驚!中國饅頭橫掃歐美!不是文化輸出,是中國供應鏈贏麻了

魔都姐姐雜談
2026-04-24 11:56:08
2026-04-26 21:32:49
Ai學習的老章 incentive-icons
Ai學習的老章
Ai學習的老章
3353文章數 11139關注度
往期回顧 全部

科技要聞

漲價浪潮下,DeepSeek推動AI“價格戰”

頭條要聞

特朗普內閣又一女部長落馬:強迫男下屬為其提供性服務

頭條要聞

特朗普內閣又一女部長落馬:強迫男下屬為其提供性服務

體育要聞

森林狼3比1掘金:逆境中殺出了多孫穆?!

娛樂要聞

僅次《指環王》的美劇,有第二季

財經要聞

事關新就業群體,中辦、國辦發文

汽車要聞

預售19.38萬元起 哈弗猛龍PLUS七座版亮相

態度原創

藝術
親子
健康
時尚
軍事航空

藝術要聞

18幅 列賓美院教師Artem Tikhonov風景寫生

親子要聞

今天我們來吃整蠱海盜桶糖果食玩

干細胞如何讓燒燙傷皮膚"再生"?

比闊腿褲還時髦?今年夏天一定要有“這條褲子”,減齡又松弛

軍事要聞

伊朗總統:不會在壓力、威脅下進行談判

無障礙瀏覽 進入關懷版