hugs 文件
在 DigitalOcean 上部署 HUGS
並獲得增強的文件體驗
開始使用
在 DigitalOcean 上部署 HUGS
Hugging Face 生成式 AI 服務,也稱為 HUGS,可以透過 GPU Droplets 作為“一鍵式模型”部署在 DigitalOcean (DO) 中。
此次合作將 Hugging Face 龐大的預訓練模型庫及其文字生成推理 (TGI) 解決方案帶給 DigitalOcean 的客戶,使得在 Digital Ocean 的 GPU Droplets 中無縫整合最先進的大型語言模型 (LLMs) 成為可能。
HUGS 為 TGI 最佳化的容器化應用程式提供了對 Hugging Face Hub 上託管的、經過精心挑選和手動基準測試的最新、效能最佳的開放 LLMs 的訪問許可權,允許使用者在 DigitalOcean GPU Droplets 上透過“一鍵式部署”來部署 LLMs。
藉助 HUGS,開發人員可以利用 DigitalOcean 的基礎設施,輕鬆查詢、訂閱和部署 Hugging Face 模型,並在經過最佳化的、零配置的 TGI 容器上利用 NVIDIA GPU 的強大功能。
更多操作指南
在 DO GPU Droplets 中一鍵部署 HUGS
如果您還沒有 DigitalOcean 賬戶,請建立一個並繫結有效的支付方式,並確保您有足夠的配額來啟動 GPU Droplets。
前往 DigitalOcean GPU Droplets 頁面並建立一個新的 Droplet。
選擇一個數據中心區域(在撰寫本文時,可用區域有紐約,即 NYC2,或多倫多,即 TOR1)。
在選擇映象時,選擇“一鍵式模型”,然後選擇任何一個與 Hugging Face Hub 上託管的流行 LLMs 相對應的 Hugging Face 映象。
- 配置其餘選項,完成後點選“建立 GPU Droplet”。
在 DO GPU Droplets 上進行 HUGS 推理
在 DO GPU Droplet 中部署 HUGS LLM 後,您可以透過例項暴露的公網 IP 連線,或者直接透過網頁控制檯連線。
當連線到 HUGS Droplet 時,初始的 SSH 訊息將顯示一個 Bearer Token,這是向已部署 HUGS Droplet 的公網 IP 傳送請求所必需的。
然後,您可以透過 localhost
(如果在 HUGS Droplet 內部連線)或透過其公網 IP 向 Messages API 傳送請求。
在下文指南的推理示例中,假設主機是 localhost
,這是透過 GPU Droplet 部署 HUGS 並透過 SSH 連線到正在執行的例項時的情況。如果您傾向於使用公網 IP,那麼您應該在下面的示例中更新該地址。
請參閱 在 HUGS 上執行推理 以瞭解如何在 HUGS 上執行推理,但請注意,在這種情況下,您需要使用提供的 Bearer Token。因此,下面提供了指南中更新後的示例,使用 Bearer Token 向已部署 HUGS Droplet 的 Messages API 傳送請求(假設 Bearer Token 儲存在環境變數 export BEARER_TOKEN
中)。
cURL
使用 cURL
非常簡單直接,可以 安裝 並使用。
curl https://:8080/v1/chat/completions \
-X POST \
-d '{"messages":[{"role":"user","content":"What is Deep Learning?"}],"temperature":0.7,"top_p":0.95,"max_tokens":128}}' \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $BEARER_TOKEN"
Python
如前所述,您可以使用 huggingface_hub
Python SDK 中的 huggingface_hub.InferenceClient
(推薦),或者 openai
Python SDK,或者任何具有 OpenAI 相容介面且可以消費 Messages API 的 SDK。
huggingface_hub
您可以透過 pip 安裝它,命令為 pip install --upgrade --quiet huggingface_hub
,然後執行以下程式碼片段來模仿上面的 cURL
命令,即向 Messages API 傳送請求
import os
from huggingface_hub import InferenceClient
client = InferenceClient(base_url="https://:8080", api_key=os.getenv("BEARER_TOKEN"))
chat_completion = client.chat.completions.create(
messages=[
{"role":"user","content":"What is Deep Learning?"},
],
temperature=0.7,
top_p=0.95,
max_tokens=128,
)
閱讀更多關於 huggingface_hub.InferenceClient.chat_completion
方法 的資訊。
openai
或者,您也可以透過 openai
使用 Messages API;您可以透過 pip install --upgrade openai
來安裝它,然後執行
import os
from openai import OpenAI
client = OpenAI(base_url="https://:8080/v1/", api_key=os.getenv("BEARER_TOKEN"))
chat_completion = client.chat.completions.create(
model="tgi",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is Deep Learning?"},
],
temperature=0.7,
top_p=0.95,
max_tokens=128,
)
刪除建立的 DO GPU Droplet
最後,當您使用完透過 GPU Droplet 部署的 LLM 後,您可以安全地刪除它,以避免產生不必要的費用。您可以在已部署的 LLM 中找到“Actions”選項,然後刪除它。
< > 在 GitHub 上更新