繁中 ▾
取得 API 金鑰

NsfwAiApi指南

NSFW LLM 系統提示詞:結構與範例

NSFW LLM 系統提示詞是一段簡短的指令區塊,用於固定模型扮演的角色、故事允許的內容以及回覆的閱讀方式。本指南展示了一種適用於合法成人小說和伴侶聊天的佈局,並附有你可以運行的程式碼。

更新於

堆疊的提示詞卡片流入終端上方的聊天气泡,展示系統提示詞結構
等距插圖:本地 GPU 盒子與託管伺服器集群透過聊天气泡連接

系統提示詞在成人小說應用程式中的作用

系統訊息是 messages 陣列中的第一個條目。模型在每一輪對話前都會讀取它,並將其視為固定指令。使用無審查模型時,提示詞比使用重度過濾模型時更重要,因為沒有隱藏層來為你決定語氣。任何未指定的內容,模型都會用自己的預設值填充,而這些預設值往往平淡、重複或過長。

因此,提示詞的作用不是「越獄」。本服務上的模型已針對合法成人用途進行調整,能夠回答且不會拒絕內容,因此你不需要技巧。你需要的是方向:誰在說話、在哪裡、以什麼風格,以及故事的邊緣在哪裡。一個能做好這些的提示詞可以在數百輪對話中產生一致的角色。

有一條規則不在你的控制範圍內,也不在任何提示詞中:禁止涉及未成年人的性內容。在提示詞中聲明每個角色都是成年人。這能讓故事保持整潔,並符合 API 文件 中的服務規則。

五部分結構

在長會話中保持穩定的提示詞具有相同的骨架。將每個部分保持在幾行以內。

  1. 角色。 一句話說明模型是誰。給出名字和工作,而不是形容詞列表。
  2. 背景。 地點、時間、與使用者角色的關係,以及註明所有角色均為成年人。
  3. 聲音。 人稱和時態、句子長度、幽默程度、詞彙。說明回覆應該有多少字。
  4. 規則。 幾條正面指令,例如「永遠不要替用戶角色說話」和「除非用戶引導,否則保持場景得體且不露骨」。
  5. 退出句。 當用戶詢問故事外內容時該怎么做。一句簡短的跳出角色句子,然後回到場景中。

抵制添加第六、第七和第八部分的衝動。每個額外的段落都會爭奪注意力,模型往往比中間部分更可靠地遵循提示詞的首行和末行。

一個你可以今天發送的工作範例

下面的腳本使用 OpenAI Python SDK。基礎 URL、金鑰和模型 ID 與標準 OpenAI 設定不同。如果你是該介面的新手,Python 指南 涵蓋了安裝和錯誤處理。

from openai import OpenAI

client = OpenAI(base_url="https://api.nsfwaiapi.com/v1", api_key="YOUR_KEY")

SYSTEM = """You are Mara, a ship's navigator in a slow-burn space drama.
Setting: the freighter Calloway, year 2412. Adults only, all characters are 18+.
Voice: dry, warm, quick with a joke. Replies are 80-150 words.
Write in third person past tense for narration, first person for dialogue.
Never speak or act for the user's character.
Stay in character. If the user asks for something outside the story, answer in one short out-of-character line, then offer to continue."""

history = [{"role": "system", "content": SYSTEM}]

def say(text):
    history.append({"role": "user", "content": text})
    r = client.chat.completions.create(
        model="uncensored",
        messages=history,
        temperature=0.9,
        top_p=0.95,
        presence_penalty=0.3,
    )
    reply = r.choices[0].message.content
    history.append({"role": "assistant", "content": reply})
    return reply

print(say("Mara, the engines are quiet tonight. Can't sleep?"))

注意提示詞不包含什麼。沒有道歉段落,沒有二十個禁用詞列表,也沒有「盡可能露骨」的指令。它提供了一個角色、一個地點、一種聲音和一個長度。露骨程度則跟隨用戶在對話中的引導,這是大多數成人小說讀者希望它表現的方式。

使用 curl 的相同請求

如果你想將提示詞整合到程式碼之前進行測試,curl 很快捷。系統訊息放在第一個位置,與 Python 中完全相同。

curl https://api.nsfwaiapi.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [
      {"role": "system", "content": "You are Mara, a navigator. Adults only. Stay in character. Replies under 120 words."},
      {"role": "user", "content": "Mara, are you still awake?"}
    ],
    "temperature": 0.9
  }'

回應是標準的聊天補全 JSON。回覆文字位於 choices[0].message.content,而 X-Balance-USD 回應頭顯示呼叫後剩餘的預付額度。

與提示詞互動的設定

提示詞只佔行為的一半。採樣設定會改變模型遵循提示詞的程度。

  • temperature 在 0.8 到 1.0 之間可生成生動的散文。如果角色偏離設定,請降至 0.6。
  • top_p 在 0.9 到 0.95 之間可以修剪掉奇怪的用詞選擇,同時不會使語氣扁平化。
  • presence_penalty 或 frequency_penalty 設為 0.2 到 0.5 可減少長對話中的重複短語。這些參數會透傳給模型。
  • seed 在比較提示詞的兩個版本時很有幫助:固定種子,只更改文字。
  • max_tokens 是可選的。提示詞中的長度指令通常比硬性上限效果更好,硬性上限可能會將句子截斷一半。

每次只修改一項。如果你同時編輯提示詞和 temperature,你將無法確定是哪項改動起了作用。

常見故障及其修復方法

模型代替使用者發言

添加一行明確的內容:「永遠不要寫用戶角色的話語、想法或動作。」將其作為提示詞的最後一行重複。模型會給予系統訊息末尾較高的權重。

回覆持續變長

給出一個數字,例如「80 到 150 字」。模糊的措辭如「簡潔」在每一輪對話中的解讀都不同。還要檢查歷史記錄中的你自己的範例訊息是否過長,因為模型會複製它看到的長度。

角色在多次互動後忘記了場景設定

系統訊息始終位於頂部,因此它不會超出 10 萬 token 的上下文視窗,但細節在長歷史記錄中會漂移。每 30 或 40 輪,追加一條簡短的回顧作為用戶訊息,或者總結舊輪次並替換它們。角色扮演模型指南 討論了上下文大小對長場景的影響。

語氣變得重複

向聲音部分添加變化提示,例如「變化句首並避免重複最近三次回覆中使用的短語」,並略微提高存在懲罰。

跳出角色的閒聊

定義退出行。如果沒有退出行,模型會即興發揮免責聲明。

系統提示詞的成本

系統訊息隨每次請求發送,因此每次計算為輸入。假設提示詞為 400 token。每 100 萬輸入 token 價格為 $0.15,則 400 token 的成本為 400 / 1,000,000 x $0.15 = $0.00006 每次請求。在 1,000 次請求中,這相當於 400,000 token,或 $0.06。

對話還攜帶其歷史記錄,這通常比系統訊息成本高得多。輸出按每 100 萬 token $0.50 定價,因此約 200 token 的 150 字回覆的成本為 200 / 1,000,000 x $0.50 = $0.0001。失敗或被拒絕的請求不收費。當前價格和充值金額在 定價頁面 上,你可以從 API 金鑰頁面 獲取試用金鑰。支付使用加密貨幣(TRC20 上的 USDT 或 Base 上的 USDC)。

結論:600 token 的提示詞不是成本問題。寫出你需要的提示詞,把精力花在測試它上,而不是削減它。

問答

NSFW 系統提示詞應該多長?

150 到 400 字涵蓋了大多數情況。更長的提示詞很少有幫助,反而可能稀釋重要的指令。

我需要越獄才能獲得無審查回覆嗎?

不需要。模型已針對合法成人用途進行調整,能夠回答且不會拒絕內容,因此清晰的角色和背景就足夠了。越獄風格的文本主要增加噪聲。

我可以在對話中途更改系統提示詞嗎?

可以。在下一次請求中替換陣列中的第一條訊息。模型會立即遵循新版本,儘管歷史記錄中的早期回覆仍會影響其風格。

無論提示詞如何,有什麼是禁止的嗎?

是的。涉及未成年人的色情內容始終禁止,你應在設定區塊中聲明所有角色均為成年人。

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

建立帳戶,複製金鑰,更改基礎 URL。這就是全部設定。

取得 API 金鑰

NsfwAiApi用於 NSFW 文字生成的無審查 LLM API