Qwen Abliterated API:呼叫託管模型,無需 GPU

您可以透過現有的 OpenAI SDK 透過 HTTP 呼叫無審查聊天模型,並跳過下載權重或租用 GPU 的步驟。本指南將展示設定方法、可運作的程式碼以及精確費用。
重點摘要
- 將任何 OpenAI SDK 指向 base URL,並將模型設為 uncensored。
- 串流輸出、工具呼叫和 JSON 模式透過標準參數運作。
- 限制:完整金鑰為 8 個並行請求和每分鐘 300 個請求。
- 依 token 計費:輸入每 1M token $0.15,輸出每 1M token $0.50。
簡短回答:更改 base URL
若您正在尋找 qwen abliterated api,實用的做法是使用支援 OpenAI 協定的託管端點。您保留客戶端程式碼,僅修改兩個值,即可向為您執行模型的伺服器發送請求。無需下載 GGUF、無需選擇量化方式、無需考慮 VRAM 預算。
命名備註:此為獨立服務,非官方 Qwen API,託管模型以 uncensored 為名,而非 Qwen 檢查點名稱。這是開放權重模型,由獨立供應商運行,調整為回答時不拒絕內容,供合法成人使用。若需特定 abliterated 檔案,請在本機運行該檔案。若需應用程式的可靠聊天端點,請繼續閱讀。
| 設定 | 說明 |
|---|---|
| Base URL | https://api.qwenabliterated.top/v1 |
| 模型 | uncensored |
| Auth 標頭 | Authorization: Bearer YOUR_API_KEY |
| 端點 | POST /v1/chat/completions、GET /v1/models |
| 上下文視窗 | 100,000 token,含提示詞與補全 |
取得金鑰
使用 Google 或電子郵件與密碼註冊,然後開啟 API 金鑰頁面。新用戶可一鍵領取 $0.50 試用額度,每人限領一次,有效期 7 天且無需卡片。這足以讓您幾次執行以下每個範例。
試用金鑰的限制比完整金鑰更低:僅支援 2 個並行請求和每分鐘 60 個請求,而完整金鑰支援 8 個和 300 個。如果您使用並行工作程式進行測試,請留意此點。
將金鑰儲存在環境變數中,而非原始碼控制中:
export QWENABL_KEY="paste-your-key-here"Python 第一個請求
使用 pip install openai 安裝官方 SDK,然後:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.qwenabliterated.top/v1",
api_key=os.environ["QWENABL_KEY"],
)
resp = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": "You are a blunt technical assistant."},
{"role": "user", "content": "Explain what a KV cache is in three sentences."},
],
temperature=0.7,
)
print(resp.choices[0].message.content)
print(resp.usage)
回應包含正常的 usage 區塊,因此你可以記錄提示詞與完成 token 並自行計算花費。標頭包含 X-Request-Id 用於支援問題,以及 X-Balance-USD 讓你能在不開啟儀表板的情況下觀察剩餘額度。
為何使用 API 而非 GGUF 檔案
通常取得無審查模型的方法是尋找量化檔案、在本機運行環境中載入它,並與本機伺服器通訊。這可行,對於實驗來說也是學習的好方法。但當您從實驗轉向讓他人使用的東西時,摩擦就會出現。
首先是硬體。適合您桌上型電腦顯示卡的檔案,在短上下文時可能沒問題,但在長上下文時可能無法裝載,因為注意力快取會隨每個 token 增長。其次是並行請求。單一本機程式處理一兩個聊天很輕鬆,但同時十個使用者就會導致排隊。第三是可用性。家用電腦會休眠、斷電,或在錯誤時間進行驅動程式更新。託管 API 將這些問題轉嫁給他人處理,您只需為使用的 token 付費。
您讓渡的是選擇特定檢查點的自由,以及位元組永不離開您網路的保證。在選擇之前,請決定哪一點對您的專案更重要。
Node.js 和 curl
Node SDK 採用相同的兩個選項:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.qwenabliterated.top/v1",
apiKey: process.env.QWENABL_KEY,
});
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Give me five names for a fantasy tavern." }],
});
console.log(resp.choices[0].message.content);
使用 curl 也是如此,這在連接任何內容之前檢查金鑰很有用:
curl -s https://api.qwenabliterated.top/v1/models \
-H "Authorization: Bearer $QWENABL_KEY"
成功的呼叫會回傳包含 uncensored 的 JSON 清單。401 表示金鑰錯誤或遺失。文件詳細說明了錯誤格式。
串流輸出、JSON 模式和工具
串流輸出
設定 stream: true 並讀取伺服器發送事件。用量會在串流結束時回報。
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Write a short scene on a night train."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
串流請求會佔用其並行請求槽位直到串流結束,因此開啟串流後就離開的客戶端會阻塞容量。請務必消耗或關閉串流。
JSON 模式
傳入 response_format={"type": "json_object"} 並在提示詞中提及 JSON。仍應進行防禦性解析;沒有模型能每次都完美遵循結構描述。
函式呼叫
傳送 tools 以及可選的 tool_choice。當模型要求使用工具時,執行該工具並將輸出作為帶有 role: "tool" 的訊息回傳。工具呼叫也會串流輸出。採樣參數 temperature、top_p、stop、seed 以及頻率與存在懲罰都會原樣傳遞。
將其應用於實際應用程式
單一腳本很簡單。應用程式需要更多習慣,且這些習慣與使用任何 OpenAI 風格 API 時相同。
將金鑰保留在伺服器上
不要將金鑰放在瀏覽器程式碼或行動應用程式中。從後端呼叫 API,並向前端暴露你自己的路由,你可以在那裡加入驗證與每用戶限制。任何在套件中找到金鑰的人都可以花費你的額度。
設定超時並限制輸出
完成部分可使用剩餘的 100,000-token 視窗空間,max_tokens 為可選。對於聊天功能,請設定與介面匹配的上限,以防異常長的回答導致費用飆升。搭配客戶端超時設定,即可為每次呼叫的時間與費用設定上限。
記錄請求 ID
每個回應都帶有 X-Request-Id。將其與您自己的呼叫記錄一起儲存。當結果看起來有誤或請求失敗時,該識別碼是讓支援團隊找到確切請求的關鍵。X-Balance-USD 標頭對於簡單警報很有用:如果數值低於閾值,請在工作耗盡前發送訊息給自己。
在啟動時檢查模型清單
呼叫 GET /v1/models 的健康檢查不消耗 token,並能一步確認金鑰、URL 和網路路徑。服務啟動時執行,若返回錯誤則立即失敗。
限制與錯誤處理
超出限制的請求會返回 HTTP 429。錯誤代碼告知觸及的限制:rate_limited 表示每分鐘請求過多,concurrency 表示同時請求過多。臨時超載時,API 也會返回 429 並帶有 Retry-After: 5 標頭。最大主體為 8 MB。
尊重標頭並退避:
import time
from openai import OpenAI, RateLimitError
def ask(client, messages, tries=5):
for attempt in range(tries):
try:
return client.chat.completions.create(model="uncensored", messages=messages)
except RateLimitError as e:
wait = int(e.response.headers.get("Retry-After", 5))
time.sleep(wait * (attempt + 1))
raise RuntimeError("still rate limited")
如果您運行工作程式池,請將完整金鑰的執行緒數限制在 8。超過此數只會將工作轉換為 429 錯誤。失敗或拒絕的請求不會收費,因此當它們失敗時,重試不會額外花費。
請求的成本
輸入 token 每 1M 為 $0.15,輸出 token 每 1M 為 $0.50。以下是精確計算的範例:
- 一次聊天輪次包含 2,000 個提示詞 token 和 500 個補全 token:2,000 x $0.15 / 1M = $0.0003,加上 500 x $0.50 / 1M = $0.00025,總計 $0.00055。一千次輪次花費 $0.55。
- 批次作業傳送 10M 輸入 token 並接收 2M 輸出 token:$1.50 加上 $1.00,總計 $2.50。
- 長上下文呼叫包含 90,000 個提示詞 token 和 1,000 個輸出 token:$0.0135 加上 $0.0005,總計 $0.014。
額度為預付制,不會過期,也無訂閱制。儲值任意整數金額,從 $20 到 $500;儲值 $50 可獲 5% 加成,即儲值 $50 可獲得 $52.50 額度。支援加密貨幣(TRC20 上的 USDT、Base 上的 USDC)付款。請參見定價頁面查看完整贈金表。
託管或本機檔案:何者適合
本地的 GGUF 提供透過隔離實現隱私以及對精確權重的完全控制。託管 API 則無需硬體工作、支援長上下文,且提供其他服務可呼叫的 URL。大多數建立機器人、寫作工具或遊戲後端的團隊發現託管更簡單,因為一台閒置的 GPU 機箱又是另一項需要維持運作的東西。
欲更廣泛地比較按 token 付費與其他達到 Qwen 風格模型的方式,請參閱 比較指南。發送至 API 的提示詞不會用於訓練。該模型僅支援文字,且在任何情況下均不允許涉及未成年人的性內容。
更多指南
問答
我需要 GPU 才能使用嗎?
否。模型運行於供應商伺服器上。您的程式碼僅發送 HTTP 請求,因此筆記型電腦或小型 VPS 即可應付。
我應該傳送哪個模型名稱?
將 uncensored 設為模型值。你可以透過 GET 請求 /v1/models 來確認。
是否支援 OpenAI Python 與 Node SDK?
是的。將 Base URL 設為網站的 /v1 位址,並使用你的 API 金鑰。聊天完成、串流輸出、函式呼叫與 JSON 模式均可透過一般參數運作。
如果我發送太多請求會發生什麼事?
你會收到 HTTP 429 回應,其 code 為 rate_limited 或 concurrency。請等待後重試,並在 Retry-After 標頭存在時遵守該標頭指示。
有免費方式可以測試嗎?
新用戶可在 API 金鑰頁面一鍵領取 $0.50 的免費試用額度。有效期 7 天,無需綁定信用卡。