繁中 ▾

Qwen Abliterated 角色扮演:設定與 API 設定

帶有對話氣泡和面具的舞台,說明使用文字模型進行角色扮演

更新

角色扮演中,拒絕行為造成的傷害最大,因為一個突兀的警告就會破壞場景。這裡提供了一套用於小說和伴侶聊天的有效設定,搭配無審查端點,包含採樣值和成本。

重點摘要

  • 在 SillyTavern 中,使用網站的 /v1 URL 和模型 uncensored 新增自訂 OpenAI 相容來源。
  • 從 temperature 0.8 和 top_p 0.9 開始,然後一次只更改一個值。
  • 長場景會在每個回合重新發送歷史記錄,因此請縮短上下文以控制成本。
  • 該模型僅限文字;僅限合法成人用途,且不得涉及未成年人。

為什麼角色扮演使用者尋找無審查模型

搜尋 qwen abliterated roleplay的人希望有一個能保持角色設定的模型。標準聊天模型經過調整,會跳出場景、添加免責聲明,或拒絕小說中常見的題材:戰爭、悲傷、反派、恐怖、道德灰色地帶的敘事者。Abliterated 和其他無審查版本的存在,就是為了消除這些破壞沉浸感的干擾。

本文介紹如何透過 API 而非本機檔案來運行此類會話。此處的託管模型來自獨立供應商的單一開放權重模型,針對合法成人用途進行調整,使其在回答時不會拒絕內容。這不是官方的 Qwen API,我們也不聲稱它是特定的 abliterated Qwen 檢查點。請將其視為獨立模型,並根據你自己的角色進行評估。

有一個絕對的界限:禁止涉及未成年人的性內容。角色必須是成年人。本頁其餘部分專注於技術側面,這與你撰寫的類型無關。

連接 SillyTavern

SillyTavern 可以連接到任何 OpenAI 相容的端點。選單名稱在不同版本中可能會有所變化,但路徑始終是相同的概念:開啟 API 連線面板,選擇 Chat Completion 來源,然後選擇自訂或 OpenAI 相容選項。

  1. 在 API 金鑰頁面建立金鑰。新帳戶可以一鍵領取 $0.50 的試用額度,有效期為 7 天且無需信用卡。
  2. 在 SillyTavern 中,選擇 Chat Completion 然後選擇自訂來源。
  3. 將端點 URL 設為 https://api.qwenabliterated.top/v1。
  4. 將金鑰貼到 API 金鑰欄位中。
  5. 將 uncensored 設為模型 ID,或從連線按鈕取得的列表中選擇。
  6. 按下連線並發送短測試訊息。

如果測試因 401 失敗,請重新檢查金鑰。如果測試因 404 失敗,請確保 URL 以 /v1 結尾,且其後沒有額外路徑。文件頁面列出了端點。

使用你自己的腳本

如果你撰寫自己的前端或機器人,相同的設定會寫入 SDK。保留歷史記錄的最小迴圈:

from openai import OpenAI

client = OpenAI(base_url="https://api.qwenabliterated.top/v1", api_key="YOUR_API_KEY")

history = [{"role": "system", "content": open("character.txt").read()}]

while True:
    user = input("> ")
    history.append({"role": "user", "content": user})
    out = client.chat.completions.create(
        model="uncensored",
        messages=history,
        temperature=0.85,
        top_p=0.9,
        frequency_penalty=0.3,
        max_tokens=500,
    )
    text = out.choices[0].message.content
    history.append({"role": "assistant", "content": text})
    print(text)

維持角色的系統提示詞

系統訊息承擔了大部分工作。保持簡短、具體,並以行為指示的方式撰寫,而非傳記。一種表現良好的模式:

You are Mara Voss, a ship's navigator in a space-opera story.
Write in third person, past tense, 120 to 250 words per reply.
Stay in character. Do not summarise the scene or add out-of-story notes.
Never speak or act for the user's character; end each reply on an open beat.
All characters are adults.
Setting: the freighter Kestrel, three weeks out from port, supplies running low.

說明每一行為何存在。長度目標可防止回覆過度膨脹。禁止替使用者角色說話的規則,是人們最常做出的修正。最後一行修正設定,讓模型在兩輪對話後不會產生不同的設定。角色的重要事實(例如傷疤、債務或習慣)應放在提示詞的幾行內,而不是放在背景故事的整頁內容中。

如果模型在長聊天中偏離角色,請在歷史記錄末尾附近重複關鍵規則作為短提醒訊息,而不是延長開場提示詞。

起始採樣值

API 會傳遞 temperature、top_p、stop、seed 和懲罰值。這些是你擁有的控制項;本地工具中存在的其他採樣器可能不可用,因此不要指望它們。

項目起始值它帶來的變化
temperature0.8 至 1.0較高值會產生更多變化的措辭;高於約 1.1 時預期會產生不連貫的內容。
top_p0.9修剪詞語選擇的罕見尾部。
frequency_penalty0.2 至 0.5減少重複相同的字詞和短語。
presence_penalty0 至 0.3引導模型轉向新主題。
max_tokens300 至 600限制回覆長度;可選。
stop你的角色名稱加上冒號防止模型寫下你的下一行。

一次只更改一個值並進行幾輪對話後再進行評估。如果你想公平地比較兩種設定,請將 seed 設為固定數字,以便相同的提示詞提供相同的起點。

開場訊息與場景鉤子

聊天中的第一則訊息比任何指示更能奠定基調。如果它只是兩行對話且沒有描述,回覆將會很短。如果它是你期望風格的完整段落場景設定,模型會複製該長度與語氣。將開場白寫成你想要的閱讀範例。

為場景提供壓力點。一個生命支援系統故障的擱淺船員團隊,比坐在酒吧裡的船員團隊產生更有趣的回合,因為模型總是有東西可以推進。當場景卡住時,從你這邊添加一個事件:收到訊息、門打開、被迫做出決定。大多數平淡的角色扮演缺乏的是懸念,而非模型問題。

對於多個角色,請在系統提示詞中以單一行描述其語音特徵,例如「醫生 Imre:語氣乾澀、精確,從不使用髒話」。獨特的說話習慣能讓模型在長對話歷史中更容易區分各角色的語音,也讓你更容易察覺兩個角色的聲音是否已經混雜。

管理 100k 上下文

上下文視窗為 100,000 token,提示詞和完成內容合計,因此場景可以在任何內容被截斷之前運行很長時間。不過,長並不自動意味著更好。聊天模型對埋藏在巨大歷史記錄中間的細節關注較少,而且每個回合都會重新發送整個對話記錄,這會作為輸入讓你付費。

實用習慣:

  • 將前端的上下文大小設為 16,000 到 32,000 token 左右,讓較舊的對話輪次被移除。
  • 偶爾要求模型提供事件和角色狀態的簡短摘要,然後將其貼到系統提示詞中並清除舊回合。
  • 在系統訊息中保留「必須保持真實的事實」列表,用於名稱、地點和承諾。
  • 使用停止序列和長度上限,以免回覆大小逐漸增加。

也要記住這是一個文字模型。它不產生圖像或語音,因此伴侶應用程式中的頭像和音訊需要其他工具。

一次對話的成本

定價為每 1M 輸入 token $0.15,每 1M 輸出 token $0.50。考慮一個對話歷史已達到 30,000 token 的長場景,每個回覆約為 400 token。一個回合的成本為 30,000 x $0.15 / 1M = $0.0045 輸入和 400 x $0.50 / 1M = $0.0002 輸出,因此總計 $0.0047。一百個此類回合的成本為 $0.47。

具有 12,000 token 視窗的相同會話成本為 12,000 x $0.15 / 1M = $0.0018 加上 $0.0002,因此每個回合 $0.002,一百個回合 $0.20。截斷上下文是最容易的節省方式。

沒有訂閱制。你可預付 $20 至 $500 的任意整數金額,$50 以上加贈 5%、$100 以上加贈 10%、$200 以上加贈 15%,且額度永不過期。支援加密貨幣(TRC20 上的 USDT、Base 上的 USDC)付款。失敗或被拒絕的請求不會計費。詳細資訊請見 定價頁面。

常見問題

  • 回覆變得重複。 稍微提高 frequency_penalty,修剪舊回合,或降低上下文大小。
  • 模型寫下你的行。 將規則添加到系統提示詞,並為你的角色名稱設置停止序列。
  • 對話進行中出現 HTTP 429。 你觸及了限制:完整金鑰為 8 個並行請求和每分鐘 300 次,試用金鑰為 2 個並行請求和每分鐘 60 次。請等待 Retry-After 的值並重新發送。串流輸出會佔用一個並行槽位直到結束,因此請關閉你放棄的串流。
  • 角色遺忘細節。 將重要事實移至系統提示詞,並摘要舊的回合。

提示詞不會用於訓練。若要了解其他按 token 付費選項的比較,請參考 比較指南。

問答

我可以搭配 SillyTavern 使用嗎?

可以。選擇 Chat Completion 來源並使用自訂的 OpenAI 相容端點,輸入網站的 /v1 URL、你的 API 金鑰以及模型 ID uncensored。

角色扮演時,temperature 設多少最好?

大多數人從 0.8 到 1.0 之間開始,並將 top_p 設為接近 0.9。每次只更改一個值,並在多次回合中進行測試。

模型會生成圖片或語音嗎?

不會。它僅支援文字,因此圖片、音訊和影片需要搭配其他工具使用。

有內容限制嗎?

它專為合法的成人用途設計,且所有角色必須為成年人。涉及未成年人的性內容一律禁止。

長篇角色扮演要花多少錢?

擁有 30,000 token 的歷史記錄和 400 token 的回覆時,每個回合約需 $0.0047,或一百個回合需 $0.47。較短的上下文會降低費用。

只差一個步驟,即可取得金鑰

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

取得 API 金鑰