繁中 ▾

無審查的 OpenAI 相容 API

取得 API 金鑰
每 1M 輸入 token
$0.15
輸出 token / 1M
$0.50
token 上下文
100,000
試用額度
$0.50
每分鐘請求數
300

如何運行 Dolphin LLM:本地部署與託管 API 比較

更新

本頁說明如何在本地電腦或透過託管端點執行 dolphin LLM,以及如何做出選擇。簡短來說:本地運行的每個 token 免費,但需要記憶體與耐心;託管方案則只需金鑰。

透過光橋連接的桌面電腦與雲端伺服器,比較本地與託管 LLM 設置
一罐硬幣旁邊,token 流入終端機的插圖

重點摘要

  • 本地運行需要足夠的 RAM 或 VRAM 來容納量化檔案加上上下文快取。
  • Ollama 是最快的入門方式;llama.cpp 提供對量化和旗標的更多控制。
  • 兩者都提供 OpenAI 風格的伺服器,因此相同的客戶端程式碼可以指向本地或託管。
  • 託管端點每 1M 輸入 token 收費 $0.15,每 1M 輸出 token 收費 $0.50,設置只需幾分鐘。

先決定:你擁有哪些硬體?

記憶體決定一切。語言模型是一大組數字,而整組數字必須在生成時位於快速記憶體中。量化會縮小這些數字。4-bit 量化模型每個參數大約佔用半個位元組,因此擁有 80 億參數的模型約佔 5 GB,擁有 700 億參數的模型約佔 40 GB。請將這些視為粗略數字,因為確切大小取決於量化格式。

除了權重之外,你還需要空間用於上下文快取。它隨提示詞長度增長,因此長期的角色扮演歷史或大型文件比短問題消耗更多記憶體。在適度的上下文下,請預留幾 GB 的額外空間;如果你傾向於長提示詞,則需要更多空間。

  • 8 GB 筆記型電腦且無 GPU:僅限小型模型,輸出速度慢。
  • 16 到 32 GB Apple Silicon Mac:中型模型運行良好,因為 CPU 和 GPU 共享記憶體。
  • 單個消費級 GPU,擁有 12 到 24 GB VRAM:中型模型以良好速度運行。
  • 更大規模:多個 GPU 或租用伺服器。

方法 1:透過幾條命令使用 Ollama

Ollama 是最短的路徑。它下載量化模型,啟動後台伺服器並提供聊天提示詞。從官方網站為你的作業系統安裝它,然後檢查 Ollama 模型庫目前列出了哪些 Dolphin 標籤,因為名稱和大小在版本之間會變化。

# replace <tag> with a Dolphin tag from the Ollama library
ollama pull <tag>
ollama run <tag>

第一個命令下載檔案,在慢速連接下可能需要一段時間。第二個命令在終端機中開啟互動式聊天。Ollama 也在你的機器上提供 HTTP API,包括 /v1 下的 OpenAI 風格路由,因此其他程式可以使用它。

如果生成非常慢,模型可能沒有裝入 VRAM,部分在 CPU 上運行。選擇較小的標籤或較低比特的量化。

方法 2:使用 llama.cpp 獲得更多控制

llama.cpp 是許多其他工具構建其上的 C++ 引擎。你下載模型的 GGUF 檔案,然後啟動其伺服器。這比 Ollama 需要更多步驟,但允許你設置上下文長度、放置在 GPU 上的層數以及你想要的量化。

# after building llama.cpp and downloading a GGUF file
llama-server -m ./model.gguf -c 8192 -ngl 99 --port 8080

這裡 -c 設置上下文長度,-ngl 設置多少層進入 GPU,--port 選擇端口。檢查專案的 README 以獲取你版本中的旗標,因為它們會演變。更大的 -c 使用更多記憶體,因此僅在你需要時才提高它。

對於圖形化使用,像 Open WebUI 這樣的前端可以與任一伺服器對話。我們的 Open WebUI API 端點 說明瞭如何添加自定義端點。

從程式碼調用你的本地伺服器

兩種工具都可以使用 OpenAI 聊天格式,因此你只需編寫一次客戶端,並透過兩個設置切換目標。此腳本並排顯示兩個目標。本地目標使用 Ollama 預設使用的端口;如果你在 8080 上啟動了 llama.cpp,請更改它。

from openai import OpenAI

TARGETS = {
    "local": {"base_url": "http://localhost:11434/v1", "key": "not-needed", "model": "your-local-tag"},
    "hosted": {"base_url": "https://api.dolphinllm.com/v1", "key": "YOUR_KEY", "model": "uncensored"},
}

t = TARGETS["hosted"]
client = OpenAI(base_url=t["base_url"], api_key=t["key"])

resp = client.chat.completions.create(
    model=t["model"],
    messages=[{"role": "user", "content": "Summarize what a GGUF file is."}],
)
print(resp.choices[0].message.content)

本地伺服器通常忽略金鑰,但 SDK 需要一個非空字串。本地伺服器的模型名稱是你載入的任何標籤或別名,而託管模型 ID 始終是 uncensored。

方法 3:跳過設置並使用託管端點

如果硬體運算看起來不佳,或者你想要在所有機器上獲得相同的行為,託管端點更簡單。此服務提供一個開放權重模型,由獨立供應商運行,並針對合法成人用途調整為回答時不拒絕內容。它不是任何模型廠商的官方 API,也不允許你選擇其他模型。你得到的是穩定的 URL、金鑰和按 token 計費。

步驟很簡單。使用 Google 或電子郵件和密碼註冊,打開 API 金鑰頁面,並一鍵領取 $0.50 的免費試用額度。不需要信用卡,有效期為 7 天,每人限領一次。然後使用託管目標運行上面的 Python 腳本。如果你偏好 curl:

curl https://api.dolphinllm.com/v1/chat/completions   -H "Authorization: Bearer YOUR_KEY"   -H "Content-Type: application/json"   -d '{"model":"uncensored","messages":[{"role":"user","content":"Hello"}],"stream":false}'

上下文視窗為 100,000 token,這比大多數筆記型電腦能舒適地快取的要多。提示詞不用於訓練。

成本與努力的比較

本地感覺免費,但並非如此。你為硬體、電力和自己的時間付費。託管按請求收費,但數字很小。每 1M 輸入 token 收費 $0.15,每 1M 輸出 token 收費 $0.50,一次包含 3,000 輸入 token 和 700 輸出 token 的聊天輪次成本為:

  • 輸入:3,000 x $0.15 / 1,000,000 = $0.00045
  • 輸出:700 x $0.50 / 1,000,000 = $0.00035
  • 總計:每次輪次 $0.0008,即每 1,000 次輪次 $0.80

即使是重度用戶,每月發送 5,000 次此類輪次,花費也約為 $4。一張價值數百美元的 GPU 需要數年使用才能在該用量下收回成本。當你擁有持續的高流量、需要特定的微調模型,或無法將數據發送到機器外部時,比較會反轉。

完整價格詳情,包括 +5%、+10% 和 +15% 的儲值獎金,位於 定價頁面,文件涵蓋了限制和參數。

選擇的簡單規則

如果你想嘗試許多微調模型、離線工作,或將每個提示詞保留在自己的磁碟上,請本地運行。如果你正在構建其他人將使用的東西,你的硬體有限,或者你想要長達 100,000 token 的上下文而無需管理記憶體,請使用託管端點。許多開發者兩者都用:本地模型用於私人實驗,託管端點用於需要保持上線的任何內容。因為客戶端程式碼相同,切換成本只是一行。

問答

運行 Dolphin 模型需要多少 RAM?

作為粗略指南,4-bit 量化模型每個參數需要約半個位元組,加上上下文快取的記憶體。80 億參數的模型大約需要 5 到 8 GB,700 億參數的模型則需要約 40 GB 或更多。

我可以不使用 GPU 運行嗎?

可以,在 CPU 上並擁有足夠 RAM 的情況下可以運行,但對於超過小型模型的模型,輸出速度較慢。Apple Silicon Mac 因為記憶體共享而表現更好。

本地和託管使用相同的客戶端程式碼嗎?

大部分相同。兩者都接受 OpenAI 風格的聊天請求,因此你只需更改 base URL、金鑰和模型名稱。

有免費方式試用託管選項嗎?

新用戶在註冊後可以一鍵領取 $0.50 的試用額度。不需要信用卡,有效期為 7 天。

只差一張表單,即可取得金鑰

建立帳號、複製金鑰、更改基礎 URL。這就是整個設定過程。

取得 API 金鑰