iT邦幫忙

2023 iThome 鐵人賽

DAY 10
0
AI & Data

Rust 加 MLOps,你說有沒有搞頭?系列 第 10

[Day 10] - 鋼鐵草泥馬 🦙 LLM chatbot 🤖 (1/10)|專案簡介

  • 分享至 

  • xImage
  •  

今日份 Ferris

接下來幾天都要做專案啦,這次挑戰要繼續拓展鋼鐵動物系列,上次參加鐵人賽做了 鋼鐵鳥 Iron Bird 鳥兒分類器,這次改做鋼鐵草泥馬 Iron LLaMa:
https://ithelp.ithome.com.tw/upload/images/20231012/20141304yVVIjbkGCK.jpg

Project 簡介

這個專案參考自 Code to the Moon - Build A Full Stack Chatbot in Rust (feat. Leptos & Rustformers)
在接下來的幾天我們會建立一個簡單版的 ChatGPT,並使用 Rust 實作其前、後端,以展現 Rust 在 MLOps 中可行的應用。
這裡我們只著重在 機器學習產品生命週期 中部署的部分,另外在硬體上僅會使用 CPU,完成後的作品如下 (不知道在傲嬌什麼哈哈哈):
demo

工具簡介

這個專案會用到的開源工具如下:
https://ithelp.ithome.com.tw/upload/images/20230925/20141304FBv5POOLV9.jpg

  • RustFormers/llm - 以 GGML 函式庫為基礎的 Rust 語言 LLM 生態系,它提供了一系列工具和 API,可用於 LLM 的各種任務,包括文本生成、翻譯和問答。
    另外還有提供了一些預先訓練的 LLM,可供直接使用或用於自定義模型。
    由於使用 Rust 實作,RustFormers 旨在為 LLM 世界帶來 Rust 的高性能、穩健性、高可擴展性與易用性等優點。
    雖然目前推論只能在 CPU 上進行,但團隊也在著手建立對 GPU 推論的支援。
    以下為其可支援的模型:

    💡GGML 是一個高性能的機器學習函式庫,它支援包括矩陣乘法、卷積和激活函數在內的多種運算。
    而 Rustformers 使用 GGML 來處理 LLM 的數學運算,因此可以快速地運行 LLM。

  • Taiwan LLaMa - 這個不用說了吧,臺灣之光,由臺大資訊系博士生林彥廷專為臺灣人量身打造的 LLM,在 Vicuna Benchmark 訓練中,可以得到近 80 分的高分 (以 ChatGPT 為 100 分作為基準)。
    https://ithelp.ithome.com.tw/upload/images/20230925/201413042pwg0083Wc.png

    💡 Vicuna Benchmark 為開源聊天機器人,透過收集大量的對話來訓練語言模型)。

    注意這裡因為 RustFormers 支援的是 GGML 模型,所以會改為使用唐鳳 audreyt 實作的版本

  • Leptos - 基於 Rust 的全端網頁框架,使用 WebAssembly 作為其渲染引擎,這使得它能夠在任何支持 WASM 的瀏覽器上運行,其特點為:

    • 快速構建完整的全端應用程序,這些應用程序可以直接在伺服器上運行,並提供基本的 HTML 輸出。
      我們可以逐步添加客戶端互動性,以創建更豐富的用戶體驗。
    • 使用簡單的工具和最少的配置快速啟動專案。
    • 使用 reactive signals 來管理狀態,不需要跟借用檢查器打架。
    • 編寫在伺服器和客戶端上都能運行的 "伺服器函式",如此一來就可以在伺服器上生成 HTML、CSS 和 JavaScript,然後將其發送到客戶端。
    • 高枕無憂,因為 Rust 的型別安全會負責保護我們的 App。

    重點是其效能已經逼近 Solid.js,甚至是原生 JavaScript:
    https://ithelp.ithome.com.tw/upload/images/20230925/2014130462WDlmdG8E.png
    https://ithelp.ithome.com.tw/upload/images/20230925/2014130430WdsL0Gqu.png

以上就是這幾天我們會用到的工具。
今天就介紹到這邊,明天就能開始寫程式囉!
/images/emoticon/emoticon58.gif


上一篇
[Day 09] - 從 Python 🐍 到 Rust 🦀|MLOps 最終比較 ⚔️ 與環境永續 🍀
下一篇
[Day 11] - 鋼鐵草泥馬 🦙 LLM chatbot 🤖 (2/10)|行前準備
系列文
Rust 加 MLOps,你說有沒有搞頭?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言