mcpField
O
openai-api

openai-api

github.com/alphaonedev開発48 回インストール
リポジトリ

openai-api について

openai-apiは、AIエージェントがワークフローでOpenAI APIを利用するためのスキルです。テキスト生成や関数呼び出し、アシスタント管理、埋め込み、ファインチューニングを扱います。

主な機能

  1. 01テキスト・チャット補完
  2. 02関数呼び出し
  3. 03アシスタント管理
  4. 04埋め込み生成
  5. 05ファインチューニング利用

活用シーン

  1. 01チャットボットの応答生成
  2. 02セマンティック検索用の埋め込み作成
  3. 03API関数のツール化
  4. 04コンテンツの要約やデータ分析

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill openai-api

インストール後、Claude Code で/openai-apiを入力して読み込まれたか確認します。

詳細

openai-api

目的

このスキルは、テキスト補完の生成、関数呼び出しの処理、アシスタントの管理、埋め込みの作成などのタスクで、OpenAI API に直接アクセスできるようにします。AI エージェントが OpenAI の機能をワークフローに統合できるよう設計されています。

使用するタイミング

チャットボットなどの動的なテキスト生成、セマンティック検索用の埋め込み、またはツール統合のための関数呼び出しが必要な場合に、このスキルを使用します。コード生成、コンテンツの要約、データ分析など、リアルタイムの AI 応答が必要な場面で活用してください。単純なタスクでは使用せず、OpenAI のモデルがローカルの代替手段を上回る、複雑な AI 主導の処理に限定してください。

主な機能

  • テキスト補完:/completions エンドポイントを使用して、text-davinci-003 のようなモデルで基本的なプロンプトベースの生成を行います。
  • チャット補完:/chat/completions を活用して、ロールベースのメッセージとツールに対応した対話型 AI を利用します。
  • 関数呼び出し:リクエスト本文で関数を定義し、/chat/completions 経由でツールを有効にして、動的な API 操作を行います。
  • アシスタント:/assistants エンドポイントを通じて、ツールやファイルを備えた永続的な AI エージェント向けに、カスタムアシスタントを管理します。
  • 埋め込み:/embeddings 経由でベクトル表現を生成し、類似性検索などのアプリケーションに利用します。
  • ファインチューニング:/fine-tunes にアクセスしてモデルをカスタマイズします。ただし、JSONL ファイルなどの特定の入力形式が必要です。

使用パターン

API キーは必ず環境変数で設定してください:export OPENAI_API_KEY=your_api_key。ベース URL https://api.openai.com/v1/ にリクエストを送信します。CLI やスクリプトで使用する場合は、curl や OpenAI の SDK などのツールを使います。model(例:gpt-3.5-turbo)や max_tokens(例:150)などのパラメーターを含む JSON ペイロードでリクエストを構成します。指数バックオフによる再試行ロジックを実装し、レート制限に対処してください。関数呼び出しを使用するには、リクエストに "tools" 配列を含め、レスポンスに "tool_calls" があるか確認します。

一般的なコマンド/API

HTTP リクエストまたは OpenAI SDK 経由で操作します。認証には、ヘッダー Authorization: Bearer $OPENAI_API_KEY を含めます。主なエンドポイントは次のとおりです。

  • テキスト補完の場合:本文に {"model": "text-davinci-003", "prompt": "Hello world", "max_tokens": 50} を指定して、/completions に POST します。 コード例:
    curl https://api.openai.com/v1/completions \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"model": "text-davinci-003", "prompt": "Explain AI"}'
    
  • チャット補完の場合:本文に {"model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello"}], "tools": [...]} を指定して、/chat/completions に POST します。 コード例:
    curl https://api.openai.com/v1/chat/completions \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -d '{"model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Summarize this: AI is changing the world"}]}'
    
  • 埋め込みの場合:{"model": "text-embedding-ada-002", "input": "Your text here"} を本文に指定して、/embeddings に POST します。 例:コードでは次のように使用します:response = openai.Embedding.create(model="text-embedding-ada-002", input="Hello")
  • 設定形式:出力のランダム性を制御するため、リクエストでは {"temperature": 0.7, "top_p": 1} のような JSON をよく使用します。

統合に関する注意事項

使用する言語で OpenAI SDK をインポートして統合します(例:Python の場合は pip install openai)。ユーザー入力時に補完をトリガーするなど、イベント駆動型のパターンを設定します。関数呼び出しでは、ツールを辞書のリストとして定義します(例:{"type": "function", "function": {"name": "get_weather", "parameters": {"location": "string"}}})。レスポンス形式を標準化し、他の AI API との互換性を確保してください。アシスタントが非同期イベントを処理できるよう、Webhook を使用します。実際の API 利用料金を避けるため、モックサーバーで統合をテストしてください。

エラー処理

一般的なエラーには、429(レート制限超過)、401(未認証)、400(不正なリクエスト)があります。レスポンスのステータスコードを確認し、JSON 本文からエラーメッセージを解析してください(例:{"error": {"message": "Invalid model", "type": "invalid_request_error"}})。一時的なエラーに対して再試行ロジックを実装します。遅延には time.sleep() を使ったループを使用してください。認証に失敗した場合は、$OPENAI_API_KEY が設定されており、有効期限が切れていないことを確認します。エラーコードやメッセージなどの詳細を記録し、その後、既定の応答または代替スキルにフォールバックします。

グラフの関係

  • クラスターとの関連:ai-apis
  • 関連タグ:ai-apis、api
  • 関連する可能性のあるリンク:複合的なワークフローを構築するため、同じクラスター内の他の AI API などのスキルと連携します。キー管理のため、認証サービスに依存します。

コメント