Kimicodeユーザー向けクイックスタート
標準のOpenAI互換SDKを使用して、APIキーを取得し、2分以内に最初の無検閲リクエストを送信しましょう。
前提条件
コードを書く前に、Googleまたはメールを使用してkimicode.ccでアカウントを作成してください。APIキーが即座に発行されます。電話認証は不要で、クレジットカードも必要ありません。アカウントには7日間有効な$0.50の無料トライアルクレジットが付与されます。より多くの容量が必要な場合は、USDT(TRC20)またはUSDC(Base)による暗号通貨チャージ(最低$10)を行ってください。クレジットは期限切れにならず、エラーや拒否でもトークンは消費されません。
開発環境にNode.js(v18以降)またはPython 3.8+がインストールされていることを確認してください。当APIはopenaiクライアント仕様に厳密に従っているため、ライブラリのロジックを変更せずにエンドポイントのみを置き換えることができます。当社はuncensoredというIDの無検閲モデルを提供しています。
SDKのインストール
希望する言語用の公式OpenAI SDKをインストールしてください。これにより、ストリーミング、関数呼び出し、JSONモードの機能との互換性が確保されます。
Pythonの場合、pipを使用して標準ライブラリをインストールします:
pip install openai
Node.jsの場合、npmパッケージをインストールします:
npm install openai
これらのライブラリはHTTPフォーマットを自動的に処理します。ベンダー固有のクライアントは必要ありません。kimicode APIは、temperature、top_p、max_tokensなどの標準パラメータを受け付けます。
クライアントの初期化
クライアントオブジェクトをkimicodeベースURLとAPIキーで構成します。ベースURLはhttps://api.kimicode.cc/v1です。api_keyにはサインアップ時に受け取った値を設定してください。この設定により、デフォルトのapi.openai.comエンドポイントが置き換えられます。
- ベースURL:
https://api.kimicode.cc/v1 - モデル:
uncensored - 認証:
api_keyによるBearerトークン
このキーを他のベンダーと混用しないでください。これはkimicodeエンドポイント専用に機能します。クライアントは最初のリクエストでキーを検証します。キーが無効な場合、直ちに401エラーが発生します。
リクエストの実行
標準のチャット完了リクエストを送信します。モデルIDはuncensoredである必要があります。max_tokensは最大32,000まで調整できます。省略した場合、デフォルトは2,048です。コンテキストウィンドウは、プロンプトと補完を合わせて合計100,000トークンです。
- 入力:
messages配列内のテキストメッセージ。 - 出力:
choices[0].message.content内のテキスト応答。
このエンドポイントはresponse_format: {"type": "json_object"}を介してJSONモードをサポートしています。埋め込み、画像、音声はサポートされていません。法的な成人向けトピックに対してコンテンツ拒否なしで高品質なテキスト生成に焦点を当てています。
ストリーミングレスポンス
stream: trueを設定してストリーミングを有効にします。APIはServer-Sent Events(SSE)を返します。各チャンクには部分的なテキストが含まれます。トークン使用統計はストリームの最終チャンクに含まれます。これにより、完全な応答を待たずに出力をリアルタイムで表示できます。
- ストリームフラグ: リクエストボディで
trueに設定します。 - イベントタイプ:
chat.completion.chunk - データ: テキスト部分には
delta.contentが含まれます。
ストリーミングは料金体系を変更しません。処理された総トークンに対して課金されます。ストリーミング中のエラーは適切に処理されます。接続が切れた場合、リクエストを再起動できます。無検閲モデルは100kの制限内でも長時間のストリームで一貫性を維持します。
制限、エラー、コンテキスト
使用制限を監視してください:キーあたり1分あたり300リクエスト、8つの同時リクエスト、8 MBのリクエストボディ。レート制限を超えた場合、429エラーが発生します。前払いクレジットが尽きた場合、402エラーが発生します。再開するには暗号通貨でチャージしてください。401エラーはAPIキーが無効または未入力であることを示します。失敗したリクエストと拒否はトークンを消費しないことに注意してください。ハードコンテンツ制限は未成年を伴う性的コンテンツをブロックします。その他の法的な成人向けコンテンツは許可されています。
関数呼び出し
toolsパラメータでツールを定義します。モデルは応答でツール呼び出しを返します。tool_choiceを使用して特定の動作を強制できます。この機能はOpenAI標準と完全に同じように動作します。コード内でツール呼び出しを解析して実行し、結果を後続のメッセージで送信します。kimicode APIはツール定義を効率的に処理します。JSONスキーマが有効であることを確認してください。関数呼び出しにはトークン使用量以外の追加クレジットは必要ありません。エージェントの構築や構造化データ抽出ワークフローに最適です。
cURL
curl https://api.kimicode.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."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.kimicode.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.kimicode.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);ストリーミング
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)技術仕様
購入前に確認できるよう、API の実際の制限と機能をすべてまとめました。
| 項目 | 内容 |
|---|---|
| 形式 | OpenAI 互換:どの OpenAI SDK でも base URL とキーを変えるだけで動作 |
| Base URL | https://api.kimicode.cc/v1 |
| エンドポイント | POST /v1/chat/completions · GET /v1/models |
| モデル ID | uncensored |
| 認証 | Authorization: Bearer YOUR_KEY |
| コンテキスト長 | 100,000 トークン(入力+出力) |
| 関数呼び出し | 対応 — tools、tool_choice。応答に tool_calls(ストリーミングでも)、結果は role: tool で返送 |
| ストリーミング | 対応 — SSE、最後のチャンクにトークン使用量 |
| パラメータ | temperature、top_p、stop、seed、presence_penalty、frequency_penalty |
| JSON モード | response_format: {"type": "json_object"} |
| 最大出力 | 100,000 トークンのウィンドウの残りまで。max_tokens は任意(個別の上限なし) |
| リクエストサイズ | 最大 8 MB |
| 同時実行 | キーごとに同時 8 リクエストまで |
| レスポンスヘッダー | X-Request-Id、X-Balance-USD、X-RateLimit-Limit-Requests、X-RateLimit-Limit-Concurrency |
| レート制限 | キーごとに毎分 300 リクエスト |
| 無料トライアル | $0.50、7 日間、カード不要 · トライアルキー: 同時2件、毎分60件。初回チャージ後に上限が8件・300件へ拡大 |
| 課金 | 前払いクレジットから実使用量で課金。エラーと拒否は無料 |
| チャージ | USDT(TRC20)または USDC(Base)、$10〜$500 の任意の整数額 |
| 有効期限 | 購入クレジットは失効なし、サブスクなし |
| ボーナス | $50 以上で +5%、$100 以上で +10% |
| 料金 | 入力 100 万トークン $0.25 · 出力 100 万トークン $1.00 |
| コンテンツ | 成人向けコンテンツ可。未成年者を含む性的コンテンツは拒否 |
| ログイン | 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 | モデル混雑 — 数秒後に再試行 |
質問と回答
拒否されたリクエストを送信するとどうなりますか?
拒否されたリクエストでも前払いクレジットは消費されません。トークンを失うことなくすぐに再試行できます。未成年を伴う性的コンテンツのみが常にブロックされるハード拒否となります。
同じAPIキーを複数のプロジェクトで使用できますか?
はい、1つのアカウントには1つのアクティブなAPIキーが対応します。この単一のキーを複数のアプリケーションやサービスで利用できます。別のキーが必要な場合は、新しいキーを生成すると以前のアクティブなキーが置き換えられます。
クレジットをチャージするにはどうすればよいですか?
USDT(TRC20)またはUSDC(Base)を使用してチャージしてください。最小チャージ額は$10です。$50以上のチャージにはボーナスクレジットが付与されます。支払いには価格ページの暗号通貨ゲートウェイを介して行われます。クレジットカードやPayPalは利用できません。