JA ▾
API キーを取得

フィルターなしAIライティング:長編小説

Writer は最悪のタイミングで拒否応答に直面します:章の途中、悪役がらしく聞こえる必要がある場面で。この記事では、API を通じてフィルタなし AI で長編小説を書く方法と、100,000 トークンのコンテキストウィンドウに合わせて原稿を構成する方法を解説します。

更新日:

デスクランプとターミナルの横に長い光る巻物が置かれ、大きなコンテキストウィンドウでの長編ライティングを表しています

主要ポイント

  • 100,000トークンのウィンドウには、長い原稿、あなたのノート、新しい段落を1つのリクエストで収めることができます。
  • モデルをドラフトパートナーとして扱い、異なるタスク(アウトライン、ドラフト、改訂、行編集)を分けて実行します。
  • ロールプレイや対話中心の作業では、システムメッセージに永続的なキャラクターシートを使用すると効果的です。
  • 60,000トークンの改訂パスには約1セントかかります。

作家がフィルターなしモデルを求める理由

フィルターなしAIライティングを求める理由は大抵、派手さではなく実用的なものです。犯罪小説家には説得力のある殺人鬼が必要です。戦争回想録には事実のありのままの描写が必要です。ホラー作家には、穏やかな免責事項に溶け去らない恐怖が必要です。成人向けに執筆するロマンス作家には、他のシーンと同じ技法で処理されたシーンが必要です。

一般的なアシスタントはこうした素材を柔らかくしたり、道徳的なコメントを追加したり、短い拒否で止めたりすることがあります。各中断はスレッドを失わせる原因になります。このサイトの背後にあるモデルは単一のオープンウェイトモデルで、法的な成人用途に対してコンテンツ拒否なしで応答するように調整されており、通常のチャットAPIを通じてアクセスできます。エディター、ファイル、プロセスはあなたが管理します。モデルはテキストを返します。

固定される行は1つ:未成年者を含む性的コンテンツはどの文脈でも禁止。それ以外の法的な成人向けフィクションは、あなたと登場人物、読者の間の問題です。この記事では意図的に例を非露骨に保ちます。ツールは創作のためのもので、私たちが扱うのはその技法です。

100,000トークンのウィンドウを意図的に使用する

コンテキストウィンドウは100,000トークンで、プロンプトとモデルの返信で共有されます。英語の文章ではトークンは1語に少し満たない長さであるため、ウィンドウは数万語を保持できます。これがあなたの作業方法を変えます。

短いウィンドウのモデルでは、要約とリマインダーに労力を費やします。このウィンドウでは、実際のテキストを貼り付けることができます。原稿プロジェクトの実用的なレイアウトは以下のようになります。

  1. システムメッセージ(400〜1,000トークン): ボイスルール、視点、時制、禁止された癖。
  2. ストーリーバイブル(500〜3,000トークン): キャラクター、タイムライン、場所、継続的なモチーフ。
  3. 関連する章(数万トークンまで): 新しいシーンと整合する必要があるテキスト。
  4. 指示(100〜300トークン): 何を書くか、変更するか、どの長さでか。

指示は最後に配置してください。モデルはプロンプトの末尾を重く評価するため、明確な最終的なリクエストはブレを減らします。返信の余地を残してください:3,000トークンのシーンが欲しい場合、入力は97,000トークンをはるかに下回る必要があります。最大返信長はプロンプトが空けた分であり、max_tokensはオプションです。

それでも、テキストが多いほど必ずしも良いわけではありません。80,000トークンの以前の章と整合性のある返信は、小さな詳細を見失う可能性があります。整合性が重要であれば、章が含まれている場合でも、シーンが尊重すべき事実の短いリストを追加してください。

コードでのドラフト作成と改訂ワークフロー

ジョブをパスに分割すると、1つの巨大なリクエストよりも優れた文章が得られます。このスクリプトはメモからシーンをドラフトし、その後低い温度で編集パスを実行します。

from openai import OpenAI

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

VOICE = ("Literary crime fiction. Close third person, past tense. "
         "Short paragraphs, concrete nouns, dialogue without adverbs. "
         "No summary endings, no moral commentary.")

def ask(system, user, temp):
    r = client.chat.completions.create(
        model="uncensored",
        temperature=temp,
        messages=[{"role": "system", "content": system},
                  {"role": "user", "content": user}],
    )
    return r.choices[0].message.content

notes = "Inspector Hale interrogates a witness who is lying about the night of the fire. 600 words, mostly dialogue."
draft = ask(VOICE, notes, 0.9)

edited = ask(
    "You are a line editor. Keep the plot and voice. Cut filler, fix rhythm, remove repeated phrasing. Return only the revised text.",
    draft,
    0.5,
)
print(edited)

結果を改善する2つの習慣があります。まず、編集パスに「対話で既に示されている感情を説明する文をすべて削除する」など、特定の変更を依頼します。次に、各パスを焦点に絞ってください:プロット、次にダイアログ、次にリズム。「もっと良くして」のような曖昧な指示は曖昧な結果をもたらします。

サンプリング設定はモデルに渡されます:temperature、top_p、stop、seed、および存在ペナルティと頻度ペナルティ。モデルが1つの画像やフレーズを繰り返し使用する場合は、ペナルティを少し上げ、奇妙な語彙選択を引き起こしうる大きな値を避けてください。

ロールプレイとキャラクター駆動のライティング

多くの作家は、モデルとキャラクターを対立させて対話をドラフトします:尋問、交渉、兄弟間の難しい会話など。パターンは永続的なキャラクターシートとローリングメッセージ履歴です。

curl https://api.nofilterai.cc/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "temperature": 0.9,
    "stream": true,
    "messages": [
      {"role": "system", "content": "You play Corvin, a sarcastic retired smuggler, 60, bad knee, distrusts officials. Stay in character. Reply in 2 to 4 sentences. Never narrate the other character actions."},
      {"role": "user", "content": "Customs officer here. Mind if I look in the hold?"}
    ]
  }'

ストリーミングにより、テキストが生成される際に表示されるため、会話がライブのように感じられます。最終チャンクには使用量数が含まれます。ストリーミングリクエストは完了するまで並行スロットの1つを保持することに注意してください:フルキーでは8、トライアルキーでは2です。

コンパニオンアプリや成人向けロールプレイ製品では、ルールをシステムメッセージに記述し、短く保ってください。多くの「やるべきこと・やるべきでないこと」のリストは、3行の明確な指示よりも従われにくくなります。この方法をホスト型キャラクタープラットフォームと比較する場合、NoFilter AIとCharacter AIのページがプラットフォームとAPIの違いを説明しています。

原稿規模のコスト計算

価格は入力トークン100万トークンあたり$0.15、出力トークン100万トークンあたり$0.50です。一般的なライティング作業のコストは以下の通りです。

ジョブ入力トークン出力トークンコスト
バイブル付きで700語のシーンを1つドラフト4,0001,000$0.0006 + $0.0005 = $0.0011
60,000トークンの原稿に対する改訂パス60,0004,000$0.009 + $0.002 = $0.011
そのような改訂パスを10回600,00040,000$0.09 + $0.02 = $0.11
ウィンドウを1回埋める、返信なし100,0000$0.015

小説の大部分に対する改訂パスには約1セントかかります。トークンあたりでは出力の方が高価なため、長い返信を依頼すると長いプロンプトよりも早く合計が増加しますが、合計は小さく抑えられます。

前払いクレジットからサブスクリプションなしで支払い、クレジットは期限切れになりません。チャージは$20から$500までの任意の整数額で、$50以上で+5%、$100以上で+10%、$200以上で+15%のボーナスが付きます。支払い方法は暗号資産:TRC20上のUSDTまたはBase上のUSDCです。失敗または拒否されたリクエストは課金されません。詳細は価格ページ、7日間有効な$0.50のワンクリックトライアルはAPIキーページで利用可能です。

一般的なライティング作業用のプロンプト

同じエンドポイントが複数のタスクをカバーしますが、それぞれ異なるプロンプトが必要です。

アウトライン作成

章ごとの1文のリストを依頼します。3つの代替構造をリクエストし、1つを選択します。多様性が目標なので、ここでは高い温度を使用してください。

ダイアログ

誰が話し、それぞれが何を望み、何を言わないでなければならないかを指定します。モデルに短い行を維持させ、キャラクターが感情を直接的に述べないように指示してください。サブテキストはシーンと台本の違いです。

継続性チェック

原稿を貼り付け、狭い範囲の質問を投げかけてください:港長官の年齢に関する言及をすべてリストアップする、またはタイムラインが設定資料と矛盾する箇所をすべて抽出するなどです。大きなコンテキストウィンドウはこの種の監査を実用的にし、低い temperature は回答を字義どおりに保ちます。

行編集

修正された段落と変更点のリストを依頼してください。提案のみが欲しい場合はその旨を伝えれば、モデルはあなたのテキストに手をつけず、代わりにコメントを付けます。

独自の声を維持する

あなたが書いた2〜3ページを貼り付け、モデルに5つの箇条書きでスタイルを記述させてください:文の長さ、語彙、会話のタグ付け方法など。その箇条書きをシステムメッセージに配置してください。返ってくるドラフトはあなたのスタイルに近づき、自分の文体に書き直す時間を節約できます。

プロジェクト開始前に知っておくべき制限

モデルは編集者を置き換えるものではなく、平坦または反復的な文章を生成することがあります。いくつかの制限を計画しておく価値があります。

  • テキストのみ。 画像、音声、動画の生成、埋め込み、ファインチューニングはありません。
  • レート制限。 完全なキーは同時8件のリクエストと1分あたり300件のリクエストを許可します。制限を超えると、rate_limitedまたはconcurrency付きの429エラーが発生します。
  • 一時的な過負荷。 Retry-After: 5付きの429エラーは、5秒待ってから再試行することを意味します。
  • プライバシー。プロンプトは学習に使用されないため、未公開の作品に有用です。
  • 独立性。このモデルは独立したプロバイダによって運用されています。大手AIベンダーの公式製品ではありません。

ゴーストライターや出版社と仕事をする場合は、AI支援によるドラフトに関する許可範囲を確認してください。これは技術的な問題ではなく契約上の問題です。パラメータの詳細やエラー形式については、APIドキュメントをご覧ください。

質問と回答

1つのリクエストでどのくらいのテキストを処理できますか?

ウィンドウはプロンプトと返信を合わせて100,000トークンです。英語では数万語に相当するため、多くの原稿がノートや新しい章のスペースを残して収まります。

成人向けロールプレイやコンパニオンアプリに使用できますか?

法的な成人用途に対してコンテンツ拒否なしで応答するようにチューニングされているため、成人向けのフィクションやロールプレイは対象範囲です。未成年者を含む性的なコンテンツは常に禁止されています。

支払い前に試すことはできますか?

はい。新規ユーザーは、APIキーページでワンクリックで$0.50の試用クレジットを取得できます。支払い方法は不要で、7日間有効です。

どのライティングアプリから接続できますか?

カスタムOpenAI互換のベースURL、APIキー、モデル名を受け付けるアプリであれば接続可能です。モデルIDにuncensoredを、ベースURLにはドキュメントに記載されているものを使用してください。

キーはフォームを1つ埋めるだけで手に入ります

アカウントを作成し、キーをコピーし、ベースURLを変更します。これでセットアップは完了です。