Ollama API 替代方案:無審查 LLM API
本頁面提供標準 Ollama 設定之外,另一種無審查的 LLM API 替代方案。我們提供 OpenAI-compatible 介面,接受文字輸入並回傳文字輸出,針對合法成人用途不會進行內容審查。
最後更新
為什麼要切換到無審查 LLM API?
開發者通常尋求無審查的 LLM API,因為標準模型會拒絕合法的成人、虛構或具爭議性的主題。我們的服務提供完全的自由。我們運行單一開源權重模型,經過調校以無拒絕地回答問題。您無需管理本地硬體或在機器上安裝程式庫。介面符合您已熟悉的標準 OpenAI 格式。這意味著您現有的客戶端程式碼無需任何修改即可使用。我們不會使用您的提示進行訓練。我們僅需電子郵件地址即可建立您的帳戶。由於我們不使用您的數據進行訓練,因此隱私得到保障。該模型處理敏感主題時不會進行屏蔽。這種方法適合希望為其應用程式獲得可靠、無過濾輸出的開發者。
curl https://api.ollamaapidocumentation.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list files in the current directory"}]
}'
Ollama API 與我們的功能比較
我們的服務提供託管的 OpenAI 相容聊天完成 API。與本地的 Ollama 實例不同,我們為您處理伺服器基礎設施。我們支援透過伺服器發送事件(SSE)串流。您也可以使用函式呼叫與 JSON 模式。我們的模型擁有 100,000 令牌的上下文視窗,這使得長對話或大型文件處理成為可能。我們不提供嵌入向量、圖像生成或音訊功能。您僅能輸入文本並獲取文本輸出。這種專注使我們的定價簡單且可預測。您不會為不需要的功能付費。端點嚴格為 /v1/chat/completions。這種簡化降低了整合複雜度。您將獲得專屬於您帳戶的金鑰。該金鑰支援每分鐘 300 次請求,這已足以滿足大多數應用程式的需求。
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapidocumentation.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
定價明細:輸入 vs. 輸出 Tokens
我們根據實際使用的 token 數量計費。輸入 token 的費率為每 100 萬個 $0.15。輸出 token 的費率為每 100 萬個 $0.50。錯誤和拒絕請求免費。這意味著您只需為成功的完成內容付費。沒有月費訂閱。我們採用預付信用額度系統。信用額度永不過期。這讓您可以隨時按需充值。費用結構透明。您可以在儀表板中追蹤使用情況。串流傳輸沒有隱藏費用。每個 token 的價格保持固定。這讓您的專案預算變得輕鬆。您可以從少量信用額度開始。隨著應用程式成長再增加額度。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaapidocumentation.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
速率限制與併發限制
每個 API 金鑰支援每分鐘 300 次請求。您可以同時運行 8 個請求。最大請求主體大小為 8 MB。這確保了所有用戶的效能穩定。若超過限制,您將收到標準錯誤。您可以生成新金鑰以替換舊金鑰。這允許您將負載分佈到多個金鑰上。這些限制對於大多數用例來說相當寬鬆。串流回應計入速率限制。併發請求使用不同的槽位。這防止了一個長時間運行的查詢阻塞其他請求。您可以即時監控您的使用情況。調整您的應用程式邏輯以保持在限制範圍內。這確保了用戶獲得一致的延遲。
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
隱私與數據使用政策
我們不使用您的提示進行訓練。您的數據保持私密。我們僅儲存處理請求所需的資料。電子郵件地址就足以建立您的帳戶。不需要電話號碼。這減少了我們持有的個人資訊數量。我們不與第三方共享您的數據。您的 API 金鑰是唯一的識別碼。您可以隨時刪除帳戶。這會從我們的系統中移除所有數據。該模型不會保留對先前會話的記憶。每個請求都獨立處理。這非常適合敏感應用程式。您完全掌控您的數據。隱私是核心功能,而非事後補丁。
curl https://api.ollamaapidocumentation.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list files in the current directory"}]
}'
加密貨幣支付與獎勵金
我們僅接受加密貨幣進行充值。您可以使用 TRC20 網路上的 USDT。也支援 Base 網路上的 USDC。最低充值金額為 $20。每筆交易最高為 $500。我們為較大的存款提供贈送信用額度。$50 獲得 5% 贈送。$100 適用 10% 贈送。最高贈送為 $200 時的 15%。這使交易費用保持較低。您的信用額度永不過期。您可以隨時充值。流程快速且安全。付款後您將立即收到信用額度。這使您可以專注於構建您的應用程式。
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapidocumentation.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
開始使用:SDK 整合指南
首先在我們的網站上建立帳戶。您可以使用 Google 或電子郵件註冊。您的 API 金鑰會立即顯示。將此金鑰複製到剪貼簿。在您的 SDK 配置中更新基礎 URL。使用 HTTPS://api.ollamaapidocumentation.com/v1。將 model 參數設為 "uncensored"。向 /v1/chat/completions 發送 POST 請求。包含您的系統提示和用戶訊息。回應將包含生成的文本。您也可以啟用串流以獲得即時輸出。這適用於任何標準的 OpenAI 相容客戶端。整合過程不到五分鐘。您可以使用試用額度開始測試。
關於無限制模型的常見問題
模型是否封鎖所有成人內容?否。它允許合法的成人內容。它僅封鎖涉及未成年人的性內容。這是一個始終適用的硬性限制。最大輸出長度是多少?每次請求最多可生成 16,000 個 token。如果您未設定 max_tokens,限制為 2,048 個 token。它支援 JSON 模式嗎?是的。您可以將 response_format 設定為 json_object。這能確保為您的程式碼產生有效的 JSON 輸出。該模型是開源的嗎?它是開放權重模型。我們在自有伺服器上運行它。您無需下載它。這能為您節省儲存空間和運算時間。
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)