mcpField
O
openai-api

openai-api

github.com/secondsky開発247136 回インストール6 週間前に更新
リポジトリ

openai-api について

openai-apiは、SDKやHTTPリクエストでOpenAI APIを利用する開発者向けのスキルです。チャット、ストリーミング、関数呼び出し、埋め込み、画像生成、音声処理のガイドとテンプレートを収録しています。

主な機能

  1. 01チャット補完とストリーミング
  2. 02関数呼び出しと構造化出力
  3. 03テキスト埋め込み
  4. 04画像生成と編集
  5. 05音声文字起こしと音声合成

活用シーン

  1. 01アプリへのストリーミングチャット追加
  2. 02モデル応答と関数の連携
  3. 03テキストの埋め込み生成
  4. 04音声の文字起こしや音声生成

インストール

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

$npx skills add https://github.com/secondsky/claude-skills --skill openai-api

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
audio-guide.md
cost-optimization.md
embeddings-guide.md
error-catalog.md
function-calling-patterns.md
images-guide.md
models-guide.md
structured-output-guide.md
top-errors.md
scripts/
check-versions.sh
templates/
audio-transcription.ts
basic-usage.ts
chat-completion-basic.ts
chat-completion-nodejs.ts
cloudflare-worker.ts
embeddings.ts
function-calling.ts
image-editing.ts
image-generation.ts
moderation.ts
package.json
rate-limit-handling.ts
streaming-chat.ts
streaming-fetch.ts
structured-output.ts
text-to-speech.ts
vision-gpt4o.ts

詳細

OpenAI API

Package: [email protected] | 最終更新日: 2025-11-21

クイックスタート

bun add openai
export OPENAI_API_KEY="sk-..."
import OpenAI from 'openai';

const client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

const response = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'Hello!' }]
});

現在のモデル(2025年)

  • gpt-5.2:最も高性能(128k コンテキスト)
  • gpt-4o:高速なマルチモーダルモデル(128k コンテキスト)
  • gpt-4o-mini:コスト効率に優れたモデル(128k コンテキスト)
  • gpt-4o-transcribe:音声文字起こしに最適化
  • gpt-4o-mini-transcribe:コスト効率に優れた文字起こし
  • o1-preview:高度な推論(128k コンテキスト)
  • o1-mini:高速な推論(128k コンテキスト)

チャット補完

const response = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [
    { role: 'system', content: 'You are a helpful assistant' },
    { role: 'user', content: 'Explain AI' }
  ],
  temperature: 0.7,
  max_tokens: 1000
});

ストリーミング

const stream = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'Tell a story' }],
  stream: true
});

for await (const chunk of stream) {
  process.stdout.write(chunk.choices[0]?.delta?.content || '');
}

関数呼び出し

const response = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'What is the weather?' }],
  tools: [{
    type: 'function',
    function: {
      name: 'getWeather',
      parameters: {
        type: 'object',
        properties: { location: { type: 'string' } },
        required: ['location']
      }
    }
  }]
});

埋め込み

const response = await client.embeddings.create({
  model: 'text-embedding-3-small',
  input: 'Your text here'
});

const embedding = response.data[0].embedding; // 1536 dimensions

画像(GPT-Image-1.5)

const image = await client.images.generate({
  model: 'gpt-image-1.5',
  prompt: 'A serene landscape',
  size: '1024x1024',
  quality: 'standard'  // or 'hd'
});

音声

文字起こし(Whisper):

const transcription = await client.audio.transcriptions.create({
  file: fs.createReadStream('audio.mp3'),
  model: 'whisper-1'
});

テキスト読み上げ:

const speech = await client.audio.speech.create({
  model: 'tts-1',
  voice: 'alloy',
  input: 'Hello world'
});

主なエラー

  1. 無効な API キー(401):OPENAI_API_KEY を確認してください
  2. レート制限(429):指数バックオフを実装してください
  3. モデルが見つからない(404):正しいモデル名を使用してください
  4. コンテキスト長(400):入力サイズを減らしてください
  5. 無効な JSON:関数呼び出しのスキーマを修正してください

参照:references/error-catalog.md

リソース

リファレンスガイド
  • references/models-guide.md - モデルの詳細な比較と選び方
  • references/function-calling-patterns.md - 関数呼び出しのベストプラクティス
  • references/structured-output-guide.md - JSON Schema による構造化出力
  • references/embeddings-guide.md - テキスト埋め込みとベクトル検索
  • references/images-guide.md - GPT-Image-1.5 による画像生成
  • references/audio-guide.md - Whisper による文字起こしと TTS
  • references/cost-optimization.md - トークンの最適化と料金
  • references/top-errors.md - 解決策付きの主なエラー20件
  • references/error-catalog.md - エラーの完全なリファレンス
テンプレート
  • templates/basic-usage.ts - クイックスタートの例
  • templates/chat-completion-basic.ts - 基本的なチャット補完
  • templates/chat-completion-nodejs.ts - Node.js の実装
  • templates/streaming-chat.ts - ストリーミング応答
  • templates/streaming-fetch.ts - fetch API によるストリーミング
  • templates/function-calling.ts - ツールと関数呼び出し
  • templates/structured-output.ts - JSON Schema による出力
  • templates/vision-gpt4o.ts - GPT-4o による画像認識
  • templates/embeddings.ts - テキスト埋め込み
  • templates/image-generation.ts - GPT-Image-1.5 による画像生成
  • templates/image-editing.ts - 画像編集
  • templates/audio-transcription.ts - Whisper による文字起こし
  • templates/text-to-speech.ts - 音声を使った TTS
  • templates/moderation.ts - コンテンツモデレーション
  • templates/rate-limit-handling.ts - 指数バックオフ
  • templates/cloudflare-worker.ts - Cloudflare Workers との統合

ドキュメント:https://platform.openai.com/docs

コメント