まとめ
- Groqは推論プロバイダーです。GrokはxAIのモデルファミリーです。名前は似ていますが、企業は無関係です。
- Groqのカタログは変更されるため、ブログ記事ではなく、独自のモデルエンドポイントから確認してください。
- このAPIは1つのモデルID `uncensored` を提供しています。GET /v1/modelsで一覧表示されます。
- 名前でなく、ポリシーの適合性、コンテキストサイズ、価格で選択してください。
GroqとGrokは同じものではありません
Groq(q付き)は、独自の推論ハードウェアでオープンウェイト言語モデルを実行し、GroqCloudを通じてアクセスを販売する会社です。Grok(k付き)はxAIがチャットボットとモデルに付ける名前です。2つの製品、2つのベンダー、1文字の違いのみで、これが検索で混同される理由です。
私たちはどちらでもありません。当社のサービスは、法的な成人用途に対してコンテンツ拒否なしで回答するように調整されたオープンウェイトモデル用の独立したOpenAI互換エンドポイントです。これはxAI、Groq、またはその他のベンダーの公式APIではなく、ベンダー間のルーターでもありません。
任意のモデルリストの読み方
プロバイダーのモデルリストは選択肢の表であり、各行には同じ数少ない質問が隠れています。この順序で質問してください。
- モデルを誰がトレーニングしたか? 複数のラボのオープンウェイトモデルを提供するホストは、1つのキーで複数のファミリーを提供します。自前のモデルを提供するラボは、1つのファミリーのみを提供します。
- コンテキストウィンドウのサイズは? これは、1回の呼び出しで履歴、コード、またはドキュメントテキストのどれくらいを収容できるかを設定します。
- 入力と出力のレートは? 両方が重要で、トークンあたりでは通常、出力の方が大きくなります。
- レート制限は? 1分あたりのリクエスト数と同時リクエスト数が、バッチジョブが数分かかるか数時間かかるかを決定します。
- 使用ポリシーは何を許可しているか? 各プロバイダーが1つ公開しています。モデルに合わせて構築する前にそれをお読みください。
カタログは変更されるため、ここにGroqのカタログをコピーしません。生で取得するには、独自のキーを使用してそのモデルエンドポイントからフェッチし、ドキュメントを信頼できる情報源として扱ってください。
このAPIがリストするもの
リストが短いのは意図的です。GET /v1/models は、呼び出せる1つのモデルを返し、そのIDはuncensoredです。
curl https://api.grockapi.com/v1/models -H "Authorization: Bearer YOUR_KEY"
その単一モデルは、プロンプトと補完で共有される100,000トークンのコンテキストウィンドウを持ち、ストリーミング、ツール呼び出し、JSONモードをサポートし、temperature、top_p、stop、seedおよびペナルティを受け入れます。テキストのみです:画像、オーディオ、埋め込み、ファインチューニングはありません。
単一モデルとは、呼び出すべきモデルの選択がないことを意味します。また、簡単なジョブ用のより安価な小型バリアントや、コードやビジョン用のスペシャリストもないことを意味します。その範囲が必要な場合、マルチモデルホストがより適しており、私たちはそれを明確に伝えます。
実務における単一モデルの意味
単一モデルではルーティングの必要はありません。小さな高速モデルと大きな低速モデルの間に選択する必要はなく、設定にフォールバックテーブルも不要です。すべてのリクエストは同じモデルに送信されるため、挙動の理解が容易です。プロンプトが今日動作すれば、同じ設定で引き続き動作するはずです。再現性のあるテストのためにseedとtemperatureを固定できます。
トレードオフは、モデル選択によるコスト制御です。複数モデルのホストでは、簡単な分類タスクを小型モデルに送信してコストを抑えられます。ここではプロンプトの長さでコストを制御し、max_tokensで調整します。入力は1Mトークンあたり$0.15、出力は1Mトークンあたり$0.50です。
コードと検索での命名の落とし穴
ほぼ同一の名前は実際のバグを引き起こし、検索結果も歪めます。注意すべきいくつかのポイント:
- キーは交換可能ではありません。 1つのプロバイダーが発行したキーは、そのプロバイダーのベースURLでのみ機能します。他の場所に送信すると認証エラーが発生し、秘密がそれを見るべきではないホストに漏洩します。
- 環境変数。 プロバイダーの名前にちなんで命名します。例えば
GROQ_API_KEYやUNCENSORED_KEYなどとし、プロジェクト間で共有される汎用のAPI_KEYにしないでください。 - モデルIDは異なります。 1つのホストで機能するモデル名は、別のホストでは拒否されます。常にそのホスト独自のモデルリストからのIDを渡してください。
- 検索用語。 プロバイダーのモデルリストを検索すると、そのプロバイダーに関する結果のみが返されます。会社名を追加してください。似ている単語は間違ったプロバイダーを引き寄せるためです。
スニペットをコピーした直後に401エラーやモデルが見つからないエラーが発生した場合は、ベースURL、キー、モデル名を一緒に確認してください。ほぼすべての場合、3つのうちの1つが異なるプロバイダーに属しています。
並列比較
| 質問 | Groq | Grok (xAI) | このAPI |
|---|---|---|---|
| それとは何か | オープンウェイトモデル用の推論ホスト | xAI独自のモデルファミリー | ホスト型オープンウェイトモデル、1つのID |
| モデルの選択 | カタログによる複数 | xAIドキュメントによる複数 | 1つ:uncensored |
| OpenAIスタイルのクライアント | 互換として文書化 | 互換として文書化 | はい、ベースURLとキーを変更 |
| 価格 | 現在の料金を確認 | 現在の料金を確認 | 1Mトークンあたり入力$0.15、出力$0.50 |
| コンテンツ | プロバイダーのポリシーが適用されます | プロバイダーのポリシーが適用されます | 合法な成人向け利用に対するコンテンツ拒否なし |
プロジェクトにとって最も重要な行を選択してください。モデルの幅が重要であれば、マルチモデルホストを見てください。特定のベンダーのモデルが重要であれば、そのベンダーを選んでください。もし拒否(フィルタリング)があなたの製品を阻害している要因である場合、最後の列が関連します。
同じアプリで複数のプロバイダーを使用する
これら3つはすべてchat-completionsスタイルのAPIを使用するため、各プロバイダー用に小さなクライアントを維持し、タスクでルーティングできます。以下は2つのクライアントを使用するパターンです。1つはこのエンドポイント用、もう1つは選択したホスト用で、それぞれ環境から取得したBase URLとキーを使用します。
import os
from openai import OpenAI
adult_fiction = OpenAI(base_url="https://api.grockapi.com/v1",
api_key=os.environ["UNCENSORED_KEY"])
general = OpenAI(base_url=os.environ["OTHER_BASE_URL"],
api_key=os.environ["OTHER_KEY"])
def ask(task, prompt):
if task == "fiction":
client, model = adult_fiction, "uncensored"
else:
client, model = general, os.environ["OTHER_MODEL"]
r = client.chat.completions.create(
model=model, messages=[{"role": "user", "content": prompt}])
return r.choices[0].message.content
これにより、コードは特定のベンダーに依存しなくなります。後でプロバイダーを交換する場合、呼び出しを書き換えるのではなく、3つの環境変数を変更するだけです。
モデルを公平にテストする方法
モデルリストは存在するものを示します。動作するかどうかはあなた自身のプロンプトのみが示します。小規模な評価は1時間未満で完了します。
- 製品から30個の実プロンプトを収集し、その中にいくつかの難しいものを含めてください。
- 同じ設定で、各候補に対して各プロンプトを実行します。
- 回答を並べて読み、それぞれを合格、部分的合格、不合格として採点します。
- 拒否は一部の製品ではスタイルよりも重要なので、別々にカウントしてください。
- 使用されたトークンと100プロンプトあたりのコストを記録します。
import json
from openai import OpenAI
client = OpenAI(base_url="https://api.grockapi.com/v1", api_key="YOUR_KEY")
prompts = json.load(open("prompts.json")) # a list of strings
results = []
for p in prompts:
r = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": p}],
temperature=0.7,
)
results.append({"prompt": p,
"answer": r.choices[0].message.content,
"in": r.usage.prompt_tokens,
"out": r.usage.completion_tokens})
json.dump(results, open("uncensored_results.json", "w"), indent=1)
3つの値を変更して同じスクリプトを別のプロバイダーにポイントし、2つの結果ファイルを比較します。公開されている数値を信頼するのではなく、自分のネットワークでレイテンシを測定してください。それはどこで実行するかによって異なります。
どちらを選ぶべきか
複数のモデルファミリーをテストして、評価をパスする最も安価なものを選択したい場合は、マルチモデルホストを選択してください。Grokを特に使用したい場合はxAIを選択してください。テキスト製品が法的な成人コンテンツに対する拒否によって制限されている場合、1つのモデルで十分であれば、このエンドポイントを選択してください。
どれを選ぶ場合でも、本番投入前に実プロンプトでテストしてください。API キーページでは、新規アカウントに7日間有効な$0.50の無料トライアルクレジットが提供されます(クレジットカード不要)。ドキュメントではエンドポイントと制限事項を、料金ページではチャージのティアを、無検閲Grokガイドでは背景を解説しています。すべてのプランで適用される1つのハードリミットは、未成年者が関わる性的コンテンツの禁止です。
意思決定のショートカット
- 多くのオープンウェイトモデルを低コストで比較したい場合:マルチモデルホストを使用し、前のセクションの評価を実行してください。
- 特定のベンダーのフラッグシップモデルが欲しい場合:そのベンダーにアクセスしてください。
- 画像、音声、または埋め込みエンドポイントが必要である場合:ここにあるテキストのみのオプションでは不十分なので、それらを提供するサービスを選択してください。
- 法的な成人リクエストを拒否しない1つのOpenAI互換テキストモデルが欲しい場合:ここで試用キーを取得してください。
これらの選択は恒久的なものではありません。リクエスト形式が共有されているため、後で切り替えるのはBase URL、キー、モデル名の変更の問題です。
その他のガイド
よくある質問
grock 無検閲版はGrokと同じですか? いいえ。Grock 無検閲版は独立したオープンウェイトモデルです。xAI やその他の主要ベンダーによって開発されたものではありません。無検閲な出力を目的としてチューニングされていますが、独自のアーキテクチャ上で動作します。
このAPIを商業プロジェクトで使用できますか? はい。出力はあらゆる合法的な目的で使用できます。商業利用には制限がありません。モデルは生成されたテキストの所有権を主張しません。
クレジットをチャージ(追加)するには? ダッシュボードにアクセスしてください。暗号資産支払いを選択してください。TRC20上のUSDTまたはBase上のUSDCを選択してください。$20から$500の希望額を送信してください。クレジットは即座に追加されます。ボーナスクレジットは金額に基づいて自動的に適用されます。
ミスした場合どうなりますか? クレジットは返金されません。期限切れになりません。二重に請求された場合は、サポートページから問題を解決してください。サポートチームがトランザクションを確認します。
