Skip to main content

概要

テキスト生成(Chat Completions)は、APIYi プラットフォームの中核機能の1つであり、400以上の人気AIモデルを活用したインテリジェントな会話とテキスト生成をサポートします。統一された OpenAI 互換インターフェースを通じて、次のようなことを簡単に実現できます。
  • インテリジェント対話: チャットボットやバーチャルアシスタントを構築する
  • コンテンツ作成: 記事執筆、クリエイティブ生成、コピーライティング
  • コード支援: コード生成、デバッグ、リファクタリングの提案
  • 知識Q&A: 質問への回答、知識検索、情報抽出
  • ロールプレイ: カスタマイズされたAIキャラクターとシナリオのシミュレーション
OpenAI GPT-4、Claude、Gemini、DeepSeek、Qwen を含む 400以上の主要モデルを、1つのAPIキーでサポートします。

クイックスタート

基本的な会話の例

Chat Completions API を使用した、シンプルな単一ターンの会話:

マルチターン会話の例

コンテキストを考慮した対話のために、messages 配列で会話履歴を保持します:

コアパラメータ

model (必須)

モデル名を指定します。詳細は モデル情報 をご覧ください。

messages (必須)

会話メッセージの配列で、各メッセージには rolecontent フィールドが含まれます:

system

AI の振る舞いと役割を定義するシステムプロンプト

user

ユーザー入力を表すユーザーメッセージ

assistant

AI の応答を表すアシスタントメッセージ

temperature (任意)

出力のランダム性を制御します。範囲は 0.0 ~ 2.0、デフォルトは 1.0 です:
  • 0.0 ~ 0.3: より決定的で一貫した出力になり、事実ベースのタスク(翻訳、要約、コード生成)に適しています
  • 0.7 ~ 1.0: 創造性と正確さのバランスが取れており、日常会話に適しています
  • 1.0 ~ 2.0: より創造的で多様な出力になり、創作やブレインストーミングに適しています

max_tokens (任意)

生成される tokens の最大数を制限して、コストと応答の長さを制御します:
モデルごとに token 価格が異なります。詳細は 料金 をご覧ください。

top_p (任意)

Nucleus sampling パラメータで、範囲は 0.0 ~ 1.0、出力の多様性を制御します:
  • 低い値(例: 0.5): よりフォーカスされた決定的な出力
  • 高い値(例: 0.9): より多様でランダムな出力
temperature または top_p のみを調整することを推奨します。両方を同時に調整しないでください。

stream (任意)

ストリーミング出力を有効にすると、結果を token ごとに返せるため、ユーザー体験が向上します:

上級者向けの使い方

システムプロンプト

system ロールを通じて、AI の動作、役割、知識範囲、応答スタイルを定義します:

ロールプレイ

特定の個性や専門性を持つ AI アシスタントを作成します:

コンテキスト管理

長い会話では、モデルの token 制限を超えないようにコンテキスト長を適切に管理します:

JSON モード出力

一部のモデルでは、JSON 形式の出力を強制できます:

ベストプラクティス

1. 適切なモデルを選ぶ

タスク要件に基づいて、最もコスト効率の高いモデルを選択してください:

2. プロンプトを最適化する

良いプロンプトは出力品質を大きく向上させます:

明確なタスク

AI に何をさせるのかを、必要なコンテキストとともに明確に記述します

形式を指定する

出力形式、長さ、トーンなどを定義します

例を示す

入力と出力の例を示して、AI が期待内容を理解しやすくします

段階的に進める

複雑なタスクを複数のステップに分解します

3. コストを管理する

パラメータを賢く使って API コストを抑えます:

4. エラーハンドリング

例外処理を追加してアプリケーションの安定性を向上させます:

5. ストリーミング出力を使う

長いテキスト生成では、ストリーミング出力がユーザー体験を向上させます:

FAQ

tokenの数をどう数えますか?

異なるモデルでは異なるトークナイザーが使われます。推定にはtiktokenライブラリを使用してください:

出力が途中で切れるのはなぜですか?

考えられる理由:
  1. max_tokensの上限に達した
  2. モデルのコンテキストウィンドウが不足している
  3. コンテンツ安全ポリシーが作動した
対処方法:
  • max_tokensパラメータを増やす
  • より長いコンテキスト対応のモデルを選ぶ
  • 原因を特定するためにfinish_reasonフィールドを確認する

会話メモリをどう実装しますか?

アプリケーション層で会話履歴を保持します:

関連ドキュメント

モデル情報

対応しているすべてのモデルと料金を確認できます

テキスト埋め込み

テキストをベクトル表現に変換します