- NsfwImage Cc
- クイックスタート:NSFW画像アプリへの無検閲テキストの統合
クイックスタート:NSFW画像アプリへの無検閲テキストの統合
プロンプト生成とメタデータ処理のために、NSFW画像パイプラインに無検閲LLMを統合します。このガイドでは、標準的なOpenAI互換SDKを使用してアプリケーションをテキストAPIに接続するための必須手順を解説します。
認証とベースURL
APIの使用を開始するには、APIキーの取得ページからAPIキーを取得する必要があります。認証は標準のAuthorizationヘッダーによって処理されます。すべてのリクエストのベースURLはhttps://api.nsfwimage.cc/v1です。ベースURLを更新し、キーを提供することで、任意のOpenAI互換クライアントを使用できます。この設定により、NSFW画像生成ワークフローで既存のツールとの互換性が確保されます。
/v1/chat/completionsへのリクエスト送信
コアエンドポイントはPOST /v1/chat/completionsです。modelフィールドをuncensoredに設定したJSONオブジェクトとしてプロンプトコンテキストを送信します。このモデルは、合法的な成人向け利用に対してコンテンツ拒否なしで回答するように調整されています。レスポンスには生成されたテキストが含まれており、画像生成ツールの入力やメタデータの抽出に使用できます。
curl https://api.nsfwimage.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'リクエストに必要なヘッダーを含め、標準的なchat-completions形式に従うことで、パイプラインへのシームレスな統合が可能です。
構造化出力のためのJSONモード設定
自動化されたNSFW画像パイプラインでは、構造化出力が重要です。response_formatパラメータを{"type": "json_object"}に設定してJSONレスポンスを強制します。これにより、ツールロジックと後処理のために予測可能なデータ構造が確保されます。JSONモードは、創造性とフォーマット準拠を制御するtemperatureやtop_pなどの他のパラメータと併用して機能します。この機能は、プロンプトやメタデータをプログラム的に解析する際に不可欠です。
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwimage.cc/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)厳格なJSON出力を強制することで、NSFW画像生成スクリプトでの複雑な解析ロジックの必要性を減らすことができます。
ストリーミングレスポンス(SSE)の処理
リアルタイムアプリケーションでは、stream: trueを設定してストリーミングを有効にします。APIはServer-Sent Events (SSE)を返し、生成されたトークンを逐次配信します。最後のチャンクには、課金とモニタリング用のトークン使用量統計が含まれます。ストリーミングは、NSFW画像のプロンプト生成中に即時フィードバックが必要なユーザー向けインターフェースに最適です。これにより、完全な応答を待たずに進捗状況を表示できます。
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)ストリームイベントを適切に処理して、UIを更新するか、トークン使用量を正確にログに記録してください。
トークン制限とコンテキストウィンドウの管理
このモデルは、プロンプトとコンプリーションを合わせた100,000トークンのコンテキストウィンドウをサポートします。1リクエストあたりの最大出力は32,000トークン、またはmax_tokensが未設定の場合は2,048トークンです。この容量は、複雑なNSFW画像プロンプトエンジニアリングとメタデータ抽出に十分です。実際のトークン消費量に基づいて課金されるため、コストを最適化するためにトークン使用量を監視してください。エラーや拒否には課金されません。
エラー処理とトークン使用量
一般的なエラーには、401(無効なキー)、402(クレジット不足)、429(レート制限)があります。レート制限はキーあたり1分あたり300リクエストです。NSFW画像パイプラインでこれらのエラーを適切に処理し、信頼性を維持してください。トークン使用量は、最終ストリーミングチャンクまたはレスポンスヘッダーで詳細に示されます。エラーは無料のため、失敗したリクエストは前払いクレジットに影響しません。返金や二重請求の問題についてはサポートページをご利用ください。
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwimage.cc/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);質問と回答
無検閲モデルはNSFWコンテンツに対してどのような能力を持っていますか?
このモデルは、合法的な成人向け、フィクション、または論争的なトピックに対してコンテンツ拒否なしで回答するように調整されています。標準的なNSFWコンテンツをブロックしないため、NSFW画像パイプラインに最適です。ただし、未成年者を含む性的コンテンツは常に拒否します。
APIの支払い方法は何ですか?
お支払いは暗号通貨のみで、USDT(TRC20)またはUSDC(Base)に対応しています。$10〜$500のチャージが可能で、大口チャージにはボーナスクレジットが付与されます。クレジットカードやPayPalはご利用いただけません。新規アカウントには無料トライアルクレジットが利用可能です。
このAPIは画像生成に適していますか?
いいえ、これはテキスト専用のAPIです。プロンプト、メタデータ、または後処理用のテキストを生成します。画像、音声、動画は生成しません。NSFW画像生成ツールのテキストエンジンを駆動するために使用してください。
キーはフォーム 1 つで手に入ります
アカウントを作成し、キーをコピーし、ベースURLを変更します。これがセットアップのすべてです。
API キーを取得技術仕様
購入前に確認できるよう、API の実際の制限と機能をすべてまとめました。
| 項目 | 内容 |
|---|---|
| 形式 | OpenAI 互換:どの OpenAI SDK でも base URL とキーを変えるだけで動作 |
| エンドポイント | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.nsfwimage.cc/v1 |
| 認証 | Authorization: Bearer YOUR_KEY |
| モデル ID | uncensored |
| 最大出力 | 100,000 トークンのウィンドウの残りまで。max_tokens は任意(個別の上限なし) |
| コンテキスト長 | 100,000 トークン(入力+出力) |
| パラメータ | temperature、top_p、stop、seed、presence_penalty、frequency_penalty |
| 関数呼び出し | 対応 — tools、tool_choice。応答に tool_calls(ストリーミングでも)、結果は role: tool で返送 |
| JSON モード | response_format: {"type": "json_object"} |
| ストリーミング | 対応 — SSE、最後のチャンクにトークン使用量 |
| リクエストサイズ | 最大 8 MB |
| レスポンスヘッダー | X-Request-Id、X-Balance-USD、X-RateLimit-Limit-Requests、X-RateLimit-Limit-Concurrency |
| 同時実行 | キーごとに同時 8 リクエストまで |
| レート制限 | キーごとに毎分 300 リクエスト |
| チャージ | USDT(TRC20)または USDC(Base)、$10〜$500 の任意の整数額 |
| 料金 | 入力 100 万トークン $0.25 · 出力 100 万トークン $1.00 |
| ボーナス | $50 以上で +5%、$100 以上で +10% |
| 課金 | 前払いクレジットから実使用量で課金。エラーと拒否は無料 |
| 有効期限 | 購入クレジットは失効なし、サブスクなし |
| 無料トライアル | $0.50、7 日間、カード不要 · トライアルキー: 同時2件、毎分60件。初回チャージ後に上限が8件・300件へ拡大 |
| コンテンツ | 成人向けコンテンツ可。未成年者を含む性的コンテンツは拒否 |
| ログイン | Google またはメール+パスワード |
| キー | アカウントごとに有効なキーは 1 つ。新しいキーで旧キーは無効 |
エラーコード
エラーは固定の type を持つ JSON で返ります。失敗・拒否されたリクエストは課金されません。
| コード | タイプ | 意味 |
|---|---|---|
400 | bad_request | JSON 不正、メッセージ空、パラメータ誤り、またはコンテキスト超過 |
401 | missing_key · invalid_key · key_revoked | キーなし・誤り・新しいキーに置換済み |
402 | no_credit | 残高ゼロ — チャージすれば即再開 |
403 | content_blocked | 未成年者を含む性的コンテンツ — 拒否、課金なし |
404 | not_found | 不明なエンドポイント |
413 | request_too_large | 本文が 8 MB 超 |
429 | rate_limited · concurrency | 毎分 300 回または同時 8 件を超過 — 待って再試行 |
503 | upstream_busy | モデル混雑 — 数秒後に再試行 |