ja ▾
APIキーを取得
qwenunrestricted.com

Qwen unrestricted:OpenAI互換APIクイックスタート

ベースURLとキーを入れ替えるだけで、既存のスタックにqwen unrestricted APIを組み込みます。このガイドでは、非制約LLMモデルの認証、ストリーミング、構造化出力について解説します。

認証とベースURL

最初のステップは、クライアントをホストされたエンドポイントに向けることです。使用 https://api.qwenunrestricted.com/v1 ベースURLとして使用します。APIキーを Authorization Bearer トークンとしてヘッダーを設定します。これは任意の OpenAI 互換 SDK で動作します。

curl https://api.qwenunrestricted.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List steps to deploy a docker container."}]
  }'

リクエストを送信する前にキーが有効であることを確認してください。401エラーはキーが無効または期限切れであることを意味します。

チャットCompletionリクエストを送信

POSTリクエストを以下に送信 /v1/chat/completions プロンプトを使用します。モデルIDは uncensored. このモデルは法的な成人向けまたは論争的なトピックを拒否しません。ベースとなる知能を低下させることなく、制限のない出力を提供します。

from openai import OpenAI

client = OpenAI(base_url="https://api.qwenunrestricted.com/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)

モデル名を uncensoredAPIは messages および max_tokens.

温度とtop_pの構成

調整 temperature および top_p ランダム性を制御します。高い値は創造性を増し、低い値は出力をより決定論的にします。これらのパラメータは、生成中にモデルがトークンを選択する方法に影響します。

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.qwenunrestricted.com/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);

設定 temperature バランスの取れた結果のために0.7まで。使用 top_p 候補トークンの確率質量を制限します。これにより、出力の多様性を制御できます。

ストリーミングレスポンスの処理(SSE)

streamをtrueに設定してストリーミングを有効にする stream true に設定します。APIはServer-Sent Events (SSE) を返します。各チャンクには部分的なトークンデータが含まれます。これらのチャンクを収集して最終レスポンスを構築してください。

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)

SSEストリームを解析してトークンをリアルタイムで表示します。最終チャンクには総トークン使用量が含まれます。これにより、リクエストごとの正確なコスト追跡が可能です。

構造化出力向けの JSON モード強制

使用 response_format に設定 {"type": "json_object"} JSON出力を強制します。これにより、モデルが有効なJSON構造を返すことを保証します。データの解析や他のシステムとの統合に役立ちます。

リクエストボディにパラメータを設定してください。モデルはJSONフォーマットルールを厳守します。これにより、後続のアプリケーションでのパースエラーが軽減されます。

ツール呼び出し(関数呼び出し)の使用

を使用してリクエストにツールを定義します。 tools パラメータ。モデルはプロンプトに基づいてこれらの関数を呼び出すことができます。使用 tool_choice 関数呼び出しを制御する。

リクエストに関数定義を指定します。APIはツール呼び出し引数を返します。これらの引数を解析して関数を実行します。これにより、複雑なエージェントワークフローが可能になります。

トークン利用状況とコストの理解

コンテキストウィンドウは100,000トークンです。最大出力は1リクエストあたり16,000トークンです。料金は1M入力トークンあたり$0.15、1M出力トークンあたり$0.50です。エラーは無料です。

最終的なSSEチャンクで利用詳細を確認してください。トークン数は実際の処理量を反映します。サブスクリプション料金は発生しません。使用した分のみを支払います。

よくある質問

QwenのUnrestrictedとは?

重みからガードレールを除去したオープンウェイトモデルです。基本知能を低下させることなく制限のない出力を提供します。GPT、Claude、Llamaではありません。

APIキーの取得方法

Googleまたはメールアドレスでサインアップ。キーは直ちに表示されます。電話番号は不要です。アカウントあたりアクティブなキーは1つまで。

コンテキストウィンドウのサイズはいくらですか?

コンテキストウィンドウは100,000トークンです。プロンプトと補完の合計を含みます。最大出力は16,000トークンです。長文ドキュメントに使用してください。

APIキーを安全にする

登録し、APIキーを取得し、ベースURLを更新します。これが完全な設定です。