iT邦幫忙

2025 iThome 鐵人賽

DAY 12
0
生成式 AI

一塊一塊拼湊的 AI 樂高世界之旅系列 第 12

[Day 12] LLM Runtime 選擇?目標明確!!

  • 分享至 

  • xImage
  •  

前一天介紹了有關 LLM 的相關背景知識,再來我們還需要選擇一個合適運行 LLM 的平台,並且順利的使用它。

以下來介紹兩個目前最常用的框架:

Pytorch

作為深度學習的主流框架,早已是學術界與產業界訓練與推理 LLM 的基礎工具。它的優勢在於

  • 支援自訂模型架構、梯度控制,以及各式訓練流程。
  • 整合 Hugging Face Transformers、DeepSpeed、Accelerate 等框架,方便調優與部署。

不過,缺點也很明顯。PyTorch 本質上是通用深度學習框架,因此部署 LLM 時往往需要較多的工程整合,例如考慮 VRAM 用量而模型壓縮、量化到實作架設 API 等。對只想「直接跑模型」的開發者來說,門檻相對高。

以下為一個實作問答的範例:

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

# 1. 定義欲使用的模型
model_name = "meta-llama/Llama-3.2-3b"

# 2. 載入 tokenizer(可以理解為把文字轉成模型能理解的 token)
tokenizer = AutoTokenizer.from_pretrained(model_name)

# 3. 載入模型
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float16,   # 用半精度省記憶體
    device_map="auto"            # 自動放到 GPU(如果有的話)
)

# 4. 準備輸入
prompt = "請用簡單的方式解釋什麼是黑洞?"

inputs = tokenizer(prompt, return_tensors="pt").to(model.device)

# 5. 生成輸出
outputs = model.generate(
    **inputs,
    max_new_tokens=200,    # 回答長度
    temperature=0.7,       # 越高=越有創意
    top_p=0.9              # 控制取樣範圍
)

# 6. 解碼輸出
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(response)

https://ithelp.ithome.com.tw/upload/images/20250926/20161224JrWod3OE4U.jpg

以上的範例就單純 LLM 問答。若想要可以更簡單去實作 LLM 平台甚至到可以使用 API 呼叫可以使用一個開源文字生成工具,他提供一個直觀的界面可以更方便的讓使用者去使用 LLM

Llama.cpp

llama.cpp 由 Georgi Gerganov 開發,最初是為了能在一台 MacBook 上執行 Meta 的 LLaMA 模型。隨後,它成了開源社群推動 高效本地推理 的核心專案。它的特點是:

  • C/C++ 編寫,極度輕量:能在 CPU 上高效執行,不需要龐大的深度學習框架。
  • 支援量化(GGML / GGUF 格式):透過量化壓縮模型,使得大型模型能在普通電腦甚至樹莓派上跑起來。
  • 跨平台:支援 Linux、macOS、Windows,甚至手機與 WebAssembly。

缺點是它更專注於 推理(inference) 而非訓練,研究與微調能力比不上 PyTorch。

而 Ollama 是近年興起的 LLM runtime,底層是以 llama.cpp,主打「本地快速啟動模型」。它的特色包括:

  • 即裝即用:安裝後只需一行指令就能載入與執行 Llama2、Mistral 等模型,免去繁瑣環境設定。
  • 針對推理最佳化:比起 PyTorch,Ollama 更專注在本地端高效推理,對於 M1/M2 晶片或 GPU 都有優化。
  • 應用導向:更像是一個「LLM runtime 服務」,而非通用深度學習框架,非常適合需要快速整合到應用的情境。

限制在於 Ollama 的彈性度不高,目前主要支援少數熱門模型。若要自訂架構或做大規模分布式訓練,就不如 PyTorch 靈活。


上一篇
Day11: 什麼是 LLM
下一篇
[Day 13] 對!就是在說你 Ollama!
系列文
一塊一塊拼湊的 AI 樂高世界之旅13
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言