JA ▾

Qwen Abliterated ロールプレイ:設定とAPIセットアップ

テキストモデルによるロールプレイを示すチャットバブルとマスク付きのステージ

更新

ロールプレイでは拒否動作が最も問題になります。1つの思わぬ警告でシーンが崩れるためです。以下は、無検閲エンドポイントを使用したフィクションや相棒チャットの動作設定です。サンプリング値とコストを含みます。

主要ポイント

  • SillyTavernでは、サイトの/v1 URLとモデルuncensoredを持つカスタムOpenAI互換ソースを追加します。
  • temperature 0.8とtop_p 0.9から始め、その後一度に1つの値ずつ変更してください。
  • 長いシーンでは履歴が各ターンで再送信されるため、コストを制御するためにコンテキストを調整する必要があります。
  • モデルはテキストのみです。合法的な成人向け用途のみで、未成年者に関するものはすべて禁止です。

なぜロールプレイユーザーは無検閲モデルを求めるのか

qwen abliterated roleplayを検索するユーザーは、キャラクターを維持するモデルを求めています。標準的なチャットモデルは、シーンから外れる、免責事項を追加する、または小説では一般的なテーマ(戦争、悲しみ、悪役、ホラー、道徳的に曖昧な語り手など)を拒否するように調整されています。没入感を損なうこれらの中断を防ぐために、abliteratedやその他の無検閲ビルドが存在します。

この記事では、ローカルファイルではなくAPI経由でそのようなセッションを実行する方法について説明します。ここで提供されているホストモデルは、独立したプロバイダーからの1つのオープンウェイトモデルであり、合法的な成人向け用途のためにコンテンツ拒否なしで回答するように調整されています。公式のQwen APIではなく、特定のAbliterated Qwenチェックポイントであると主張もしていません。これを独自のモデルとして扱い、独自のキャラクターで評価してください。

例外なく適用される境界線があります:未成年者を含む性的コンテンツは禁止です。キャラクターは成人でなければなりません。このページの残りは技術的な側面に焦点を当てており、あなたが書くジャンルに関係なく同じです。

SillyTavern を接続

SillyTavernは任意のOpenAI互換エンドポイントと通信できます。メニュー名はバージョンによって異なりますが、操作手順の考え方は常に同じです:API接続パネルを開き、Chat Completionソースを選択し、カスタムまたはOpenAI互換オプションを選択します。

  1. API keyページでキーを作成してください。新規アカウントはワンクリックで$0.50の無料トライアルクレジットを受け取ることができ、有効期限は7日でカードは不要です。
  2. SillyTavernでChat Completionを選択し、次にカスタムソースを選択します。
  3. エンドポイントURLをhttps://api.qwenabliterated.top/v1に設定します。
  4. API キー フィールドにキーを貼り付けます。
  5. モデルIDとしてuncensoredを入力するか、接続ボタンがフェッチした場合はリストから選択します。
  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.

各行が存在する理由に関する注釈。長さの目標は返信が膨れ上がるのを防ぎます。ユーザーのキャラクターに代わって話さないというルールは、人々が加える最も一般的な修正です。最後の行は設定を修正し、モデルが2ターン後に別の設定を創作しないようにします。傷、借金、習慣などキャラクターにとって重要な事実は、背景物語のページではなく、同じプロンプトの数行に記述すべきです。

長いチャットでモデルがキャラクターから逸脱した場合、オープニングプロンプトを長くするのではなく、履歴の最後に近い位置で短いリマインダーメッセージとして主要なルールを繰り返します。

開始するためのサンプリング値

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キャラクターの名前にコロンを追加モデルがあなたの次の行を書くのを防ぎます。

一度に1つの値を変更し、評価する前に数ターンプレイしてください。2つの設定を公平に比較したい場合は、seedを固定数に設定して、同じプロンプトが同じ開始点を提供するようにします。

オープニングメッセージとシーンのフック

チャットの最初のメッセージは、いかなる指示よりもトーンを決定します。説明のない2行の会話の場合、返信は短くなります。あなたが望むスタイルでシーン設定の完全な段落の場合、モデルはその長さと文体をコピーします。あなたが読み返したい内容の例として、最初のメッセージを書いてください。

シーンに圧力点を与えてください。生命維持システムが故障した行き場を失ったクルーは、バーに座っているクルーよりも興味深い展開を生み出します。これはモデルが常に物語を進展させるためのフックを持つためです。シーンが停滞した場合は、あなたの側からイベントを追加してください:メッセージが届く、ドアが開く、決断を迫られる。多くの単調なロールプレイは、モデルの問題ではなく、緊張感の欠如です。

複数のキャラクターの場合、システムプロンプトで各キャラクターに声に関する1行の記述を付けて名前を付けます。例えば「ドクター・イムレ:ドライ、正確、決して悪口を言わない」。異なる話し方の習慣は、長い履歴を通じて声を区別しやすくし、2つが混ざり合ったときにあなたが見つけるのを容易にします。

100kコンテキストの管理

コンテキストウィンドウは100,000トークンで、プロンプトとコンプリーションの合計です。そのため、何かがカットされる前にシーンは非常に長く実行できます。ただし、長いことが自動的に良いことを意味するわけではありません。チャットモデルは巨大な履歴の中央に埋もれた詳細に注意を払うのが少なく、すべてのターンで履歴全体を再送信するため、あなたは入力としてそれらに支払います。

実用的な習慣:

  • フロントエンドのコンテキストサイズを16,000〜32,000トークンに設定し、古いターンが自然に除外されるようにしてください。
  • 時々モデルにイベントとキャラクター状態の短い要約を求め、それをシステムプロンプトに貼り付けて古いターンをクリアします。
  • 名前、場所、約束など「真実でなければならない事実」のリストをシステムメッセージに保持します。
  • stop sequencesと長さの制限を使用して、返信のサイズが増加しないようにします。

また、これがテキストモデルであることを覚えておいてください。画像や音声を生成しないため、相棒アプリのアバターや音声には他のツールが必要です。

セッションのコスト

価格は1M入力トークンあたり$0.15、1M出力トークンあたり$0.50です。履歴が30,000トークンに達し、各返信が約400トークンの長いシーンを考えます。1ターンのコストは入力で30,000 x $0.15 / 1M = $0.0045、出力で400 x $0.50 / 1M = $0.0002となり、合計$0.0047です。そのような100ターンのコストは$0.47です。

12,000トークンのウィンドウを持つ同じセッションのコストは、12,000 x $0.15 / 1M = $0.0018 + $0.0002 = $0.002で、1ターンあたり$0.002、100ターンで$0.20です。コンテキストのトリミングは最も簡単な節約方法です。

サブスクリプションはありません。$20〜$500の任意の全額を前払いし、$50以上で+5%、$100以上で+10%、$200以上で+15%のボーナスが付きます。クレジットは期限切れになりません。暗号資産(TRC20上のUSDT、Base上のUSDC)で支払います。失敗または拒否されたリクエストは請求されません。詳細は料金ページにあります。

よくある問題

  • 返信が繰り返される。 frequency_penaltyを少し上げ、古いターンを切り捨てるか、コンテキストサイズを下げてください。
  • モデルがあなたのセリフを書く。 システムプロンプトにルールを追加し、あなたのキャラクターの名前にstop sequenceを設定します。
  • シーン中のHTTP 429。 制限に達しました:フルキーでは同時8リクエストおよび1分あたり300リクエスト、トライアルキーでは同時2リクエストおよび1分あたり60リクエスト。Retry-After の値を待って再送信してください。ストリーミングは終了するまで同時接続の枠を保持するため、放棄したストリームは閉じてください。
  • キャラクターが詳細を忘れる。 重要な事実をシステムプロンプトに移動し、古いターンを要約してください。

プロンプトは学習に使用されません。その他のトークン課金オプションとの比較については、比較ガイドをご覧ください。

質問と回答

SillyTavernで使用できますか?

はい。カスタムOpenAI互換エンドポイントを持つChat Completionソースを選択し、サイトの/v1 URL、あなたのキー、およびモデルID uncensoredを入力してください。

ロールプレイには温度パラメータのどの値が最適ですか?

多くの人はtop_pを0.9付近に設定し、温度を0.8〜1.0の範囲で開始します。一度に1つの値だけ変更し、複数のターンでテストしてください。

モデルは画像や音声の生成に対応していますか?

いいえ。テキストのみ対応のため、画像、音声、動画は別のツールが必要です。

コンテンツに制限はありますか?

合法的な成人向け用途のために構築されており、すべてのキャラクターは成人である必要があります。未成年者を含む性的コンテンツは常に禁止されています。

長いロールプレイにはどのくらいコストがかかりますか?

30,000トークンの履歴と400トークンの応答の場合、1ターンあたり約$0.0047、100ターンで$0.47です。コンテキストウィンドウを短くするとコストはさらに下がります。

キーはフォーム 1 つで手に入ります

アカウントを作成し、キーをコピーし、ベースURLを変更します。それがセットアップのすべてです。

API キーを取得