この記事のポイント
2025年最新版!Responses APIの使い方、GPT-5対応SDK導入手順を詳しく解説。
画像・PDF解析、Web検索、Function Calling、MCPなど最新ツール連携を網羅。
JavaScript、Python、.NET、Java、Goの各言語でのサンプルコード付き。
ストリーミング、エージェント構築など高度な活用方法も紹介。
最新の料金体系と無料枠、企業導入事例も詳しく解説。

Microsoft MVP・AIパートナー。LinkX Japan株式会社 代表取締役。東京工業大学大学院にて自然言語処理・金融工学を研究。NHK放送技術研究所でAI・ブロックチェーンの研究開発に従事し、国際学会・ジャーナルでの発表多数。経営情報学会 優秀賞受賞。シンガポールでWeb3企業を創業後、現在は企業向けAI導入・DX推進を支援。
2025年、OpenAI APIは大きく進化しました。新しいResponses APIにより、テキスト生成、画像・ファイル解析、Web検索、エージェント構築まで、すべてが統一されたインターフェースで利用可能になりました。
本記事では、最新のChatGPT API(GPT-5対応)の使い方、SDK導入手順、画像・PDF解析、ツール連携(Web検索、Function Calling、MCP)、ストリーミング、エージェント構築、料金体系まで、2025年最新情報を徹底解説します。
2025年12月12日に発表された最新モデル、「GPT-5.2(ChatGPT 5.2)」については、以下の記事で詳しく解説しています。
▶︎GPT-5.2(ChatGPT 5.2)とは?その性能や使い方、料金体系を徹底解説!
目次
3. 音声認識・音声合成(Whisper API, Speech APIなど)
5. ファインチューニング(Fine-tuning API)
6. AIアシスタントの構築(Assistants API)
7. コンテンツモデレーション(Moderation API)
ChatGPT APIキー(OpenAI APIキー)の取得方法
🛠️ ツール統合:Web検索・ファイル検索・Function Calling・MCP
4. MCP (Model Context Protocol)
🤖 Agents SDK(AgentKit):エージェント構築の新時代
ChatGPT API(OpenAI API)の無料枠について
ChatGPT API(OpenAI API)とは
ChatGPT API(OpenAI API)とは、OpenAIが開発した対話型AI「ChatGPT」の言語モデル機能を外部アプリケーションやサービスに組み込むためのインターフェースです。
2025年現在、最新のResponses APIにより、以下のような機能が統一されたインターフェースで利用可能になりました:
ChatGPT APIでできること
ChatGPT API(OpenAI API)を導入することで、開発者はOpenAIが提供する多様なAIモデルの能力を、自社のWebサービス、アプリケーション、業務システムに直接組み込むことができます。
単なるチャット機能の追加に留まらず、ビジネスの様々な側面で革新的な機能や効率化が実現可能です。
ここでは、OpenAI APIが提供する主要な機能と、それらを活用して具体的に何ができるのかを紹介します。
1. 高度な自然言語処理(GPTシリーズAPIなど)
最新のGPTモデル(例:「GPT-5」、 「o3」、「gpt-4o」、「gpt-4.1」およびその派生モデル)を利用して、人間と自然に対話するAIや、高度な文章処理機能をアプリケーションに実装できます。
-
インテリジェントなチャットボット開発:
顧客からの問い合わせに対応するFAQチャットボット、社内ヘルプデスク、あるいは特定の知識ベースに基づいた専門的なアドバイスを提供するバーチャルアシスタントを構築できます。
過去の会話履歴を考慮した文脈理解や、複雑な質問への対応も可能です。
-
コンテンツ生成・要約・校正:
ブログ記事、商品説明、広告コピー、メールの文面、レポート、議事録などのドラフトを自動生成。長文ドキュメントの要点を抽出・要約したり、既存の文章を校正・リライトしたりすることで、コンテンツ制作業務を大幅に効率化します。
-
感情分析・テキスト分類:
顧客レビューやSNS投稿から製品・サービスへの評価(ポジティブ/ネガティブなど)を自動で分析。問い合わせ内容をカテゴリ別に自動分類し、適切な担当者へ振り分けるといった業務フローの自動化も可能です。
-
多言語翻訳・ローカライズ:
高精度な機械翻訳により、ドキュメント、ウェブサイト、アプリケーションのUIなどを多言語に対応させ、グローバル展開を支援します。
2. 画像生成(DALL·E APIなど)
テキストによる指示(プロンプト)から、オリジナルの画像を生成する機能を組み込めます。
-
広告・マーケティング素材作成:
製品イメージ、キャンペーンビジュアル、SNS投稿用画像などを、デザイナーに依頼することなく迅速に作成。多様なスタイルやコンセプトの画像を試作し、ABテストに活用できます。
-
コンテンツの視覚的魅力向上:
ブログ記事やプレゼンテーション資料に挿入するイラストや図解を、内容に合わせてオンデマンドで生成。視覚的に分かりやすく、魅力的なコンテンツ作りを支援します。
-
製品デザイン・プロトタイピング:
新しい製品のアイデアやデザインコンセプトを、テキストで記述するだけで具体的なイメージとして可視化。初期段階でのアイデア共有やフィードバック収集を効率化します。
3. 音声認識・音声合成(Whisper API, Speech APIなど)
音声をテキストに変換する「音声認識(Speech-to-Text)」と、テキストを自然な音声に変換する「音声合成(Text-to-Speech)」機能を活用できます。
- 会議の議事録自動作成:
会議中の発言をリアルタイムでテキスト化し、議事録作成の手間を大幅に削減。重要な発言の検索や共有も容易になります。
- 音声アシスタント・音声操作:
アプリケーションやデバイスを声で操作できるようにしたり、音声による情報入力・検索機能を実装したりすることが可能です。
- オーディオコンテンツ制作:
ブログ記事やニュース記事を自然な音声で読み上げ、オーディオコンテンツとして配信。視覚障碍者向けのアクセシビリティ向上や、移動中・作業中の「ながら聴き」需要にも対応できます。
- 多言語音声対応:
外国語の音声をリアルタイムで翻訳し、テキストまたは別の言語の音声で出力。国際会議やグローバルなコミュニケーションを円滑にします。
4. 埋め込み(Embeddings API)
テキストを数値ベクトル(埋め込み表現)に変換することで、テキスト間の意味的な類似性を計算したり、高度な検索や分類タスクに応用したりできます。
-
セマンティック検索:
キーワードの一致だけでなく、質問や検索クエリの「意味」を理解し、関連性の高い情報を大量のドキュメントから探し出す高度な検索システムを構築できます。
-
レコメンデーションシステム:
ユーザーの閲覧履歴や興味関心に基づいて、類似した記事、製品、サービスなどを推薦する精度を向上させます。
-
異常検知・クラスタリング:
大量のテキストデータの中から、他とは傾向の異なる異常な記述を検出したり、意味的に類似したドキュメントをグループ化したりすることができます。
5. ファインチューニング(Fine-tuning API)
特定のタスクやドメイン知識に合わせて、ベースとなる大規模言語モデルをカスタマイズ(追加学習)することができます。
-
特定業界・企業特化型AIの構築:
医療、法律、金融といった専門分野の用語や知識、あるいは自社独自の製品情報や業務プロセスをモデルに学習させることで、その分野に特化した高精度なAIアシスタントやチャットボットを開発できます。
-
独自の文章スタイル・トーンの模倣:
特定のブランドボイスや、特定の人物の文章スタイルをモデルに学習させ、そのスタイルに合わせた文章を生成させることが可能です。
6. AIアシスタントの構築(Assistants API)
より複雑で永続的な対話やタスク実行が可能なAIアシスタントを構築するためのAPIです。
- 永続的なスレッド管理:
ユーザーとの長期間にわたる会話履歴を管理し、文脈を維持した対話を実現。
- ツールの利用:
Code Interpreter(Pythonコード実行環境)やRetrieval(ファイル検索)といった組み込みツール、あるいは独自に定義した関数(Function Calling経由)をアシスタントが自律的に利用してタスクを遂行。
- 複数ファイル対応:
アシスタントが複数のファイルを読み込み、その内容に基づいて応答や分析を実行。
- 複雑なワークフローの自動化:
ユーザーの指示に基づき、複数のステップやツールを組み合わせてタスクを完了させる高度なエージェント機能を実装可能。
例えば、顧客からの問い合わせに対し、関連ドキュメントを検索・参照し、Pythonでデータ分析を行い、その結果をまとめて報告するといった一連の処理を自動化できます。
7. コンテンツモデレーション(Moderation API)
生成されたコンテンツやユーザーからの入力が、OpenAIの利用規約や安全ポリシーに準拠しているかを自動的に判定します。
- 安全なコミュニティ運営:
ユーザー投稿型のプラットフォームやチャットサービスで、不適切な発言(ヘイトスピーチ、暴力的表現、性的コンテンツなど)を検出し、フィルタリングや管理者への通知を行うことで、健全なコミュニティ環境を維持。
- AI生成コンテンツの品質管理:
AIが生成したコンテンツが意図せず不適切な内容を含んでいないかを確認し、公開前の安全チェックを実施。
8. 大量処理とコスト効率化(Batch API)
大量のAPIリクエストを非同期的に処理し、コストを抑えながら効率的に結果を得ることができます。
-
大規模データ処理:
数時間から数日かかるような大量のテキストデータの分類、要約、翻訳などのバッチ処理を、通常のエンドポイントよりも低コスト(最大50%割引)で実行。
-
オフライン分析:
リアルタイム性が求められない大規模な分析タスクや、夜間のデータ処理などに最適。
ファイル管理(Files API)
ファインチューニング用の学習データや、Assistants APIで利用するファイルなどをOpenAIのプラットフォームにアップロード・管理するためのAPIです。
-
学習データの準備:
ファインチューニングに必要なデータセットを安全にアップロードし、学習ジョブと連携。
-
アシスタント用リソースの提供:
Assistants APIでRetrievalツールが参照するドキュメントや知識ベースを管理。
API間の連携例
これらのAPIを組み合わせることで、より複雑で高度な自動化ソリューションを構築することも可能です。
例えば、以下のような一連の処理が考えられます。
-
音声での問い合わせをテキスト化:
顧客からの電話やボイスメッセージによる問い合わせを、Whisper API を使用して高精度にテキストデータへ変換します。
-
問い合わせ内容の分析・要約:
テキスト化された問い合わせ内容を GPTシリーズAPI に入力し、その主要な論点、顧客の感情、緊急度などを分析・要約します。この要約情報は担当者に通知されます。
-
関連情報の検索と提示:
問い合わせ内容に関連するFAQドキュメントや過去の類似事例を、Embeddings API を用いて意味的に検索し、関連性の高い情報を抽出します。
抽出された情報は GPTシリーズAPI によって整理され、担当者が参照しやすい形で提示されます。
-
回答文案の生成:
必要に応じて、GPTシリーズAPI が検索結果や過去の対応履歴を基に、顧客への適切な回答文案を自動生成します。担当者はこの文案をレビューし、適宜修正して対応することができます。
-
アシスタントによる自律的対応(オプション):
さらに高度なケースでは、Assistants API を活用し、これらのステップの一部または全体を自律的に実行するAIアシスタントを構築することも可能です。
アシスタントは、Code Interpreterでデータを分析したり、Retrievalで情報を検索したり、Function Callingで外部システムと連携したりしながら、より複雑な問い合わせに対応します。
OpenAI APIは、このように各機能を連携させることで、アイデア次第で無限の可能性を秘めています。
🚀 クイックスタートガイド(2025年版)
ここでは、最新のResponses APIを使った基本的な利用方法を解説します。
1. APIキーの作成とエクスポート
APIキーを作成し、環境変数としてエクスポートします。
macOS / Linux
export OPENAI_API_KEY="your_api_key_here"
Windows (PowerShell)
setx OPENAI_API_KEY "your_api_key_here"
2. SDKのインストールと基本的なAPI呼び出し
JavaScript (Node.js)
npm install openai
import OpenAI from "openai";
const client = new OpenAI();
const response = await client.responses.create({
model: "gpt-5",
input: "Write a one-sentence bedtime story about a unicorn."
});
console.log(response.output_text);
Python
pip install openai
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5",
input="Write a one-sentence bedtime story about a unicorn."
)
print(response.output_text)
詳細なドキュメント:OpenAI Developer Platform
📸 画像・ファイル分析の活用例
2025年のChatGPT APIは、マルチモーダル機能が大幅に強化され、テキストだけでなく画像、PDF、音声ファイルなどの分析が可能になりました。
画像分析の基本例
JavaScript (Node.js)
import OpenAI from "openai";
import fs from "fs";
const client = new OpenAI();
// 画像をBase64エンコード
const imageBuffer = fs.readFileSync("image.jpg");
const base64Image = imageBuffer.toString("base64");
const response = await client.responses.create({
model: "gpt-5",
input: [
{
type: "text",
text: "この画像に写っているものを詳しく説明してください。"
},
{
type: "image_url",
image_url: {
url: `data:image/jpeg;base64,${base64Image}`
}
}
]
});
console.log(response.output_text);
Python
import base64
from openai import OpenAI
client = OpenAI()
# 画像をBase64エンコード
with open("image.jpg", "rb") as image_file:
base64_image = base64.b64encode(image_file.read()).decode('utf-8')
response = client.responses.create(
model="gpt-5",
input=[
{
"type": "text",
"text": "この画像に写っているものを詳しく説明してください。"
},
{
"type": "image_url",
"image_url": {
"url": f"data:image/jpeg;base64,{base64_image}"
}
}
]
)
print(response.output_text)
高度な活用例
1. 医療画像の分析支援
response = client.responses.create(
model="gpt-5",
input=[
{"type": "text", "text": "このX線画像から異常な点があれば指摘してください。"},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{xray_image}"}}
]
)
2. OCR・文書スキャン
response = client.responses.create(
model="gpt-5",
input=[
{"type": "text", "text": "この領収書から金額、日付、店舗名を抽出してJSON形式で返してください。"},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{receipt_image}"}}
]
)
3. UI/UXデザインのレビュー
response = client.responses.create(
model="gpt-5",
input=[
{"type": "text", "text": "このWebサイトのデザインについて、UIUXの観点から改善点を提案してください。"},
{"type": "image_url", "image_url": {"url": "https://example.com/screenshot.png"}}
]
)
4. グラフ・チャートの分析
response = client.responses.create(
model="gpt-5",
input=[
{"type": "text", "text": "このグラフのトレンドを分析し、ビジネス上の示唆を教えてください。"},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{chart_image}"}}
]
)
ChatGPT APIキー(OpenAI APIキー)の取得方法
ChatGPT APIを利用するためには、まずOpenAIのアカウントを作成し、専用のAPIキーを取得する必要があります。
このAPIキーは、あなたのアプリケーションがOpenAIのモデルと安全に通信するための「鍵」の役割を果たします。
ここでは、アカウント作成からAPIキーの発行、そして支払い情報の設定までの具体的な手順を、画像付きで分かりやすく解説します。セキュリティに関する重要な注意点もまとめていますので、必ずご確認ください。
OpenAIアカウントを作成する
APIの利用にはOpenAIのアカウントが必要です。以下はアカウント開設の手順です。
- OpenAIの開発者向けサイトOpenAI APIにアクセスします。
- 画面右上の「Login」をクリックします。
- メールアドレス、パスワード、名前を入力すれば、簡単にアカウントが作成する事が可能です。
アカウント登録時に不明な点がある場合はこちらの記事を参照してみてください。
➡️ChatGPTの始め方・ログイン方法をわかりやすく解説
APIキーを発行する
-
アカウントの作成が完了したら、OpenAI開発者プラットフォームにログインします。
-
画面左側の、鍵マークをクリックし、「API key」を選択します。

開発者プラットフォームのサイドバー
-
次の様な画面が表示されるので、 「Create new secret key」をクリックします。

APIキーの発行・管理画面
-
APIキーの名前を設定する様に求められるので、お好きな名前(日本語でも英語でも可)を入力し、「Create secret key」をクリックします。

APIキーの名前を入力
-
すると、このようにシークレットキーが発行されますが、絶対にこのポップアップを閉じる前にどこかに控えておいて下さい。

伏字部分にAPIキーが表示される
ここに表示されている文字列がChatGPTのAPIキーです。絶対に他人に教えたりはせず、厳重に保存してください。
APIキーは複数発行できるので、サービスに合わせて作成したり忘れてしまった場合は再発行することも可能です。
支払い情報(クレジットカード情報)を入力する
APIキーを利用するには、利用料金を支払う為の支払い情報(クレジットカードのみ)の登録が必要です。
-
OpenAI開発者プラットフォームにログインします。
-
画面左側の歯車マークをクリックし、「Billing」を選択します。

開発者プラットフォームのサイドバー
-
次の様な画面が表示されるので、「Add payment details」を選択します。

支払い情報の管理画面
-
個人か法人かを選択し、カード情報と支払い住所を設定すると、登録が完了します。
APIキー発行時の注意点
APIキーを発行する上での注意点について、改めてまとめると以下の様になります。
これらは非常に重要な事ですので、必ずお読み下さい。
- APIキーは、発行時にしか表示されません。紛失してしまった場合は再発行が必要です。
- 悪用を防ぐために、発行したAPIキーは絶対に第三者に漏らさないよう注意しましょう。
- APIは従量課金制です。予期せぬ請求を防ぐためにAPIの利用上限を設定する事をおすすめします。
以上3つのポイントを念頭に置きつつ、APIキーを取得、活用していきましょう。
ChatGPT API(OpenAI API)の使い方
次に、ChatGPT APIの利用方法を解説していきます。
Pythonを使ったChatGPT APIの呼び出し方法
取得したAPIキーを使って、実際にChatGPTをPythonで動かしてみましょう。
ここでは、誰でも手軽に利用できる「Google Colab」を使った方法を説明します。
Google Colabの概要
Google Colaboratory(略称:Colab)は、ブラウザ上でPythonを記述・実行できるツールです。専用の開発環境を用意する必要がなく、無料で利用できるため、手軽にChatGPT APIを試すことができます。
Colabの基本的な使い方は以下の通りです。

Colobの使い方
- 「+コード」ボタンを選択すると、新しいコードセルが追加されます。
- コードセルにPythonのプログラムを入力します。
- 再生マークを選択すると、そのコードセル内のプログラムが実行されます。
ChatGPT APIの呼び出し手順
では、実際にPythonコードを使ってChatGPT APIを呼び出す手順を見ていきましょう。
- 必要なライブラリのインストール
以下のコードをColabのコードセルに貼り付けて実行します。import os import openai
-
APIキーの設定
取得したAPIキーを環境変数から読み込むか、直接指定します。APIキーをプログラム内に直接記述する場合は、セキュリティ上のリスクがあるため、環境変数を使うことをおすすめします。api_key = os.getenv("OPENAI_API_KEY") # 環境変数から取得する場合 # api_key = "your_api_key_here" # 直接指定する場合 openai.api_key = api_key環境変数は、Colabの左側にある鍵マークから設定できます。これを使うことで、APIキーを非公開にした状態で、ノートブック内で使用できます。

鍵マークを選択
APIキーを入力し、任意の名前を付けます。

値と名前を入力する
以下のコードで、設定した名前を指定することで、APIキーをノートブック内で使用できます。
from google.colab import userdata userdata.get('secretName')
- ChatGPT APIの呼び出し
以下のようなコードを実行することで、ChatGPT APIを呼び出し、簡単な対話ツールを構築できます。# ユーザーからの質問を取得 user_input = input("質問を入れてください: ") # AIモデルへのリクエスト response = openai.Completion.create( engine="text-davinci-003", # GPT-4モデルを指定(使用可能な最新のGPT-3.5モデルなど) prompt=user_input, max_tokens=150, # 必要に応じて応答の最大トークン数を調整 temperature=0.7, # 創造性の度合いを指定 top_p=1, frequency_penalty=0, presence_penalty=0 ) # レスポンスの表示 print(response.choices[0].text.strip())
以上の手順で、PythonからChatGPT APIを呼び出すことができます。
APIの活用によって、自分だけのオリジナルなAIアプリケーションを開発できるでしょう。
🛠️ ツール統合:Web検索・ファイル検索・Function Calling・MCP
2025年のResponses APIは、ツール統合が標準化され、AIに外部ツールへのアクセス権を付与できるようになりました。
1. Web検索ツール(Web Search)
インターネット検索機能を組み込み、リアルタイムの情報を取得できます。
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5",
input="2025年10月の日本の最新AIニュースを教えてください。",
tools=[{"type": "web_search"}]
)
print(response.output_text)
2. ファイル検索ツール(File Search)
アップロードしたファイル群を検索し、関連情報を抽出します。
# ファイルをアップロード
file = client.files.create(
file=open("company_docs.pdf", "rb"),
purpose="assistants"
)
# ファイル検索を有効化
response = client.responses.create(
model="gpt-5",
input="この会社の営業時間を教えてください。",
tools=[{"type": "file_search"}],
tool_resources={
"file_search": {
"vector_store_ids": [file.id]
}
}
)
3. Function Calling(関数呼び出し)
独自の関数をAIに実行させることができます。
import OpenAI from "openai";
const client = new OpenAI();
// 天気情報を取得する関数の定義
const tools = [
{
type: "function",
function: {
name: "get_weather",
description: "指定された都市の天気情報を取得します",
parameters: {
type: "object",
properties: {
location: {
type: "string",
description: "都市名(例: 東京)"
},
unit: {
type: "string",
enum: ["celsius", "fahrenheit"]
}
},
required: ["location"]
}
}
}
];
const response = await client.responses.create({
model: "gpt-5",
input: "東京の今日の天気は?",
tools: tools
});
// AIが関数呼び出しを要求した場合
if (response.tool_calls) {
const toolCall = response.tool_calls[0];
if (toolCall.function.name === "get_weather") {
const args = JSON.parse(toolCall.function.arguments);
// 実際の天気APIを呼び出し
const weatherData = await fetchWeatherAPI(args.location);
// 結果をAIに返す
const finalResponse = await client.responses.create({
model: "gpt-5",
input: "東京の今日の天気は?",
tools: tools,
tool_calls: [{
id: toolCall.id,
type: "function",
function: {
name: "get_weather",
arguments: JSON.stringify(weatherData)
}
}]
});
console.log(finalResponse.output_text);
}
}
4. MCP (Model Context Protocol)
リモートサーバーと統合し、データベースやAPIへの安全なアクセスを提供します。
response = client.responses.create(
model="gpt-5",
input="顧客ID 12345の購入履歴を表示してください。",
tools=[
{
"type": "mcp",
"mcp": {
"server_url": "https://api.example.com/mcp",
"capabilities": ["database_query", "customer_data"]
}
}
]
)
実践例:Web検索 + Function Calling
from openai import OpenAI
import requests
client = OpenAI()
def get_stock_price(symbol):
"""株価を取得する関数(例)"""
# 実際のAPI呼び出し
response = requests.get(f"https://api.example.com/stock/{symbol}")
return response.json()
tools = [
{"type": "web_search"},
{
"type": "function",
"function": {
"name": "get_stock_price",
"description": "株価情報を取得",
"parameters": {
"type": "object",
"properties": {
"symbol": {"type": "string", "description": "株式コード"}
},
"required": ["symbol"]
}
}
}
]
response = client.responses.create(
model="gpt-5",
input="トヨタの株価と最新ニュースを教えてください。",
tools=tools
)
print(response.output_text)
⚡ ストリーミングとRealtime API
ストリーミング応答(Streaming)
長い応答を逐次的に受け取ることで、ユーザー体験を向上させます。
Python - ストリーミング実装
from openai import OpenAI
client = OpenAI()
stream = client.responses.create(
model="gpt-5",
input="AIの歴史について詳しく説明してください。",
stream=True
)
for chunk in stream:
if chunk.output_text:
print(chunk.output_text, end="", flush=True)
JavaScript - ストリーミング実装
import OpenAI from "openai";
const client = new OpenAI();
const stream = await client.responses.create({
model: "gpt-5",
input: "AIの歴史について詳しく説明してください。",
stream: true
});
for await (const chunk of stream) {
if (chunk.output_text) {
process.stdout.write(chunk.output_text);
}
}
Realtime API(リアルタイム音声対話)
gpt-realtimeモデルを使用して、低遅延の音声対話を実現します。
from openai import OpenAI
import pyaudio
client = OpenAI()
# WebSocket接続でリアルタイム音声対話
async def realtime_conversation():
async with client.realtime.connect(
model="gpt-realtime",
voice="alloy"
) as connection:
# 音声入力を送信
audio_input = record_audio()
await connection.send_audio(audio_input)
# リアルタイムで音声応答を受信
async for audio_chunk in connection.receive_audio():
play_audio(audio_chunk)
# 実行
import asyncio
asyncio.run(realtime_conversation())
実用例:リアルタイムチャットボット
import OpenAI from "openai";
const client = new OpenAI();
async function chatBot() {
const stream = await client.responses.create({
model: "gpt-5",
input: "カスタマーサポートボットとして振る舞ってください。",
stream: true,
temperature: 0.7
});
console.log("Bot: ");
for await (const chunk of stream) {
if (chunk.output_text) {
process.stdout.write(chunk.output_text);
}
}
console.log("\n");
}
chatBot();
WebRTCを使ったブラウザでの音声対話
// ブラウザ環境でのRealtime API使用例
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
dangerouslyAllowBrowser: true // ブラウザ環境で使用する場合
});
async function startVoiceChat() {
const mediaStream = await navigator.mediaDevices.getUserMedia({ audio: true });
const audioContext = new AudioContext();
const connection = await client.realtime.connect({
model: "gpt-realtime",
voice: "nova"
});
// マイク入力を送信
const source = audioContext.createMediaStreamSource(mediaStream);
source.connect(/* 音声処理 */);
// リアルタイム応答を受信・再生
connection.on("audio", (audioData) => {
playAudio(audioData);
});
}
🤖 Agents SDK(AgentKit):エージェント構築の新時代
2025年、OpenAIは**Agents SDK(AgentKit)**を正式リリースし、高度な自律型AIエージェントの構築が容易になりました。
AgentKitの特徴
- Swarm機能: 複数のエージェントを協調動作させるマルチエージェントシステム
- Evals(評価フレームワーク): エージェントの性能を定量的に評価
- Agent Builder: ノーコード/ローコードでのエージェント構築UI
- ChatKit: チャットインターフェースのテンプレート集
Python - 基本的なエージェント構築
from openai import OpenAI
from openai.agents import Agent, Swarm
client = OpenAI()
# エージェントの定義
customer_support_agent = Agent(
name="CustomerSupport",
model="gpt-5",
instructions="""
あなたは親切なカスタマーサポートエージェントです。
顧客の問題を解決し、必要に応じて他のエージェントに引き継ぎます。
""",
tools=[
{"type": "web_search"},
{"type": "file_search"}
]
)
# エージェントの実行
response = client.agents.run(
agent=customer_support_agent,
input="注文番号12345の配送状況を教えてください。"
)
print(response.output)
TypeScript - エージェント構築
import OpenAI from "openai";
const client = new OpenAI();
// エージェントの作成
const researchAgent = await client.beta.agents.create({
name: "ResearchAssistant",
model: "gpt-5",
instructions: "あなたは学術研究を支援するエージェントです。",
tools: [
{ type: "web_search" },
{ type: "file_search" },
{ type: "code_interpreter" }
]
});
// タスクの実行
const run = await client.beta.threads.createAndRun({
agent_id: researchAgent.id,
thread: {
messages: [
{
role: "user",
content: "量子コンピューティングの最新論文を3つ見つけて要約してください。"
}
]
}
});
console.log(run);
Swarm - マルチエージェントシステム
複数のエージェントを協調させて複雑なタスクを処理します。
from openai.agents import Agent, Swarm
# 複数のエージェントを定義
triage_agent = Agent(
name="Triage",
model="gpt-5-mini",
instructions="顧客の問い合わせを分類し、適切なエージェントに転送します。"
)
sales_agent = Agent(
name="Sales",
model="gpt-5",
instructions="製品の販売と見積もりを担当します。",
tools=[{"type": "function", "function": {"name": "get_product_info"}}]
)
support_agent = Agent(
name="Support",
model="gpt-5",
instructions="技術サポートとトラブルシューティングを担当します。",
tools=[{"type": "web_search"}]
)
# Swarmの作成
swarm = Swarm(
agents=[triage_agent, sales_agent, support_agent],
handoff_strategy="auto" # 自動的に適切なエージェントへ引き継ぎ
)
# 実行
response = swarm.run(
input="製品Xの価格と、インストール方法について教えてください。"
)
print(response.output)
print(f"処理したエージェント: {response.agent_path}")
Evals - エージェント評価
from openai.evals import Eval, Dataset
# 評価用データセットの作成
eval_dataset = Dataset([
{
"input": "注文のキャンセル方法を教えてください",
"expected_output": "注文キャンセルの手順を説明",
"expected_tool": "knowledge_base"
},
{
"input": "配送状況を確認したい",
"expected_output": "配送追跡情報を提供",
"expected_tool": "order_tracking"
}
])
# エージェントの評価
eval_result = Eval.run(
agent=customer_support_agent,
dataset=eval_dataset,
metrics=["accuracy", "response_time", "tool_usage"]
)
print(f"精度: {eval_result.accuracy}")
print(f"平均応答時間: {eval_result.avg_response_time}秒")
print(f"ツール使用率: {eval_result.tool_usage_rate}")
実用例:自律型ビジネスアシスタント
from openai import OpenAI
from openai.agents import Agent, Swarm
client = OpenAI()
# メールエージェント
email_agent = Agent(
name="EmailHandler",
model="gpt-5",
instructions="メールの内容を分析し、返信または適切なアクションを実行します。",
tools=[
{"type": "function", "function": {"name": "send_email"}},
{"type": "function", "function": {"name": "schedule_meeting"}}
]
)
# スケジュール管理エージェント
calendar_agent = Agent(
name="CalendarManager",
model="gpt-5-mini",
instructions="カレンダーを管理し、会議をスケジュールします。",
tools=[
{"type": "function", "function": {"name": "get_calendar"}},
{"type": "function", "function": {"name": "create_event"}}
]
)
# データ分析エージェント
analytics_agent = Agent(
name="DataAnalyst",
model="gpt-5-codex",
instructions="データを分析し、インサイトを提供します。",
tools=[
{"type": "code_interpreter"},
{"type": "file_search"}
]
)
# ビジネスアシスタントSwarmの構築
business_assistant = Swarm(
agents=[email_agent, calendar_agent, analytics_agent],
handoff_strategy="auto"
)
# タスクの実行
response = business_assistant.run(
input="今週の売上データを分析し、チームミーティングをスケジュールして、結果をメールで共有してください。"
)
print(response.output)
ChatGPT API(OpenAI API)の料金体系
ChatGPT APIは従量課金制となっており、使用量に応じて料金が発生します。料金はトークン数に基づいて計算されます。
2025年、OpenAIは複数の処理優先度オプション(Standard、Batch、Flex、Priority)を提供しています。処理速度と料金のバランスに応じて選択できます。
以下に、主要な言語モデルのAPI利用料金(2025年10月24日現在)をまとめました。料金は100万トークンあたりの米ドル(USD)表記です。
テキストモデル料金(Standard)
| モデル名 | 入力料金 (USD / 1M tokens) | キャッシュ入力 (USD / 1M tokens) | 出力料金 (USD / 1M tokens) | 特徴 |
|---|---|---|---|---|
| gpt-5 | $1.25 | $0.125 | $10.00 | 最新の汎用モデル |
| gpt-5-mini | $0.25 | $0.025 | $2.00 | 軽量版GPT-5 |
| gpt-5-nano | $0.05 | $0.005 | $0.40 | 超高速応答 |
| gpt-5-pro | $15.00 | - | $120.00 | 最高性能モデル |
| gpt-5-codex | $1.25 | $0.125 | $10.00 | プログラミング特化 |
| gpt-4.1 | $2.00 | $0.50 | $8.00 | GPT-4.1系 |
| gpt-4.1-mini | $0.40 | $0.10 | $1.60 | コンパクト版 |
| gpt-4.1-nano | $0.10 | $0.025 | $0.40 | 最小版 |
| gpt-4o | $2.50 | $1.25 | $10.00 | GPT-4 Optimized |
| gpt-4o-mini | $0.15 | $0.075 | $0.60 | 最も低コスト |
推論モデル料金(Standard)
| モデル名 | 入力料金 (USD / 1M tokens) | キャッシュ入力 (USD / 1M tokens) | 出力料金 (USD / 1M tokens) | 特徴 |
|---|---|---|---|---|
| o3 | $2.00 | $0.50 | $8.00 | 推論特化モデル |
| o3-pro | $20.00 | - | $80.00 | 高度な推論 |
| o3-deep-research | $10.00 | $2.50 | $40.00 | 深い分析・調査 |
| o4-mini | $1.10 | $0.275 | $4.40 | 軽量推論モデル |
| o4-mini-deep-research | $2.00 | $0.50 | $8.00 | 軽量版調査モデル |
| o1 | $15.00 | $7.50 | $60.00 | 第1世代推論 |
| o1-pro | $150.00 | - | $600.00 | プロフェッショナル |
| o1-mini | $1.10 | $0.55 | $4.40 | 第1世代軽量版 |
マルチモーダル・特殊モデル
| モデル名 | 入力料金 | 出力料金 | 用途 |
|---|---|---|---|
| gpt-image-1 | $5.00/1M tokens | - | 画像理解・分析 |
| gpt-image-1-mini | $2.00/1M tokens | - | 軽量画像処理 |
| sora-2 | $0.10/秒 | - | 動画生成(720p) |
| sora-2-pro | $0.30/秒~$0.50/秒 | - | 動画生成(最大1792x1024) |
| gpt-realtime | $4.00/1M tokens | $16.00/1M tokens | リアルタイム音声対話 |
| gpt-realtime-mini | $0.60/1M tokens | $2.40/1M tokens | 軽量版リアルタイム |
バッチ処理(Batch API)
時間的制約のない大量リクエストには、Batch APIを利用することで大幅にコストを削減できます。
| モデル名 | 入力料金 (USD / 1M tokens) | キャッシュ入力 | 出力料金 (USD / 1M tokens) |
|---|---|---|---|
| gpt-5 | $0.625 | $0.0625 | $5.00 |
| gpt-5-mini | $0.125 | $0.0125 | $1.00 |
| gpt-5-nano | $0.025 | $0.0025 | $0.20 |
| gpt-4.1 | $1.00 | - | $4.00 |
| o3 | $1.00 | - | $4.00 |
| o4-mini | $0.55 | - | $2.20 |
その他のAPI料金
| 機能 | 料金 |
|---|---|
| Web検索ツール | $10.00 / 1,000コール + 検索コンテンツトークン(モデル料金) |
| ファイル検索ツール | $2.50 / 1,000コール |
| ファイルストレージ | $0.10 / GB / 日(1GB無料) |
| コードインタープリター | $0.03 / コンテナ |
| 音声文字起こし(Whisper) | $0.006 / 分 |
| 音声合成(TTS) | $15.00 / 100万文字 |
| 画像生成(GPT Image 1) | $0.011~$0.25 / 画像(品質・サイズによる) |
最新の料金情報については、OpenAI公式料金ページをご確認ください。
各モデルの詳細な性能比較や費用を抑えるコツについては、こちらの記事で詳しく解説しています。
ChatGPT APIの料金は?モデル別の比較や費用を抑えるコツを紹介
トークン数の計算方法
トークン数の計算には、「tokenizer」というツールを利用します。以下の画像のように、tokenizerの入力欄に文章を入力すると、文字数(character)とトークン数(Token)が表示されます。

toknizerを利用してトークン数の計算を行う
tokenizerを使えば、APIを呼び出す前に、どの程度のトークンを消費するかを把握できます。
これにより、予期せぬ高額請求を避けることができるでしょう。
ChatGPT API(OpenAI API)の無料枠について
ChatGPTのAPI無料期間とは、OpenAIへの新規登録時に付与される、APIの無料クレジットが利用できる期間のことです。
通常、APIの使用には、「使用量に応じて料金がかかる」ため無料で使用する事はできませんが、付与されたクレジットの範囲内なら追加費用無しでAPIが利用可能です。
無料期間の終了後は使用量に応じた料金が発生するため、無料期間中にAPIの利用シーンを見極めることが重要となります。
ChatGPT API無料枠の有効期限
2024年6月現在、OpenAIに登録した場合5ドル分の無料クレジットが付与されます。
有効期限は3ヶ月となっており、使い切らなかった場合でも登録後3ヶ月を過ぎると自動的に消滅します。
ChatGPT API無料クレジットの確認方法
無料クレジットの残量は、「OpenAI開発者プラットフォーム」の、請求設定ページから確認できます。

APIの無料トライアルの確認
登録後3ヶ月後以内かつまだ無料枠が残っている場合は、画像の様に「無料トライアル」という文字と、無料枠の残りクレジットが表示されます。
まだChatGPTへの登録がお済みでない方はこちらの記事をご覧ください。
ChatGPT APIの無料期間が終わってしまった場合
「既に無料期間が過ぎてしまった場合」、または「無料枠を使い切ってしまった場合」は、それ以降利用した分は料金の支払いが必要になります。
無料クレジット自体は支払い情報を登録しなくても利用できるので、「気づかぬうちに無料クレジットを使い切り、料金が発生してしまった」という心配はありません。
ChatGPT API(OpenAI API)の利用時の注意点
ChatGPT APIを利用する際には、いくつかの注意点があります。
ここでは、APIを効果的かつ安全に活用するためのポイントを解説します。
APIの利用上限の設定
ChatGPT APIは従量課金制のため、使用量が予想以上に増えると、高額な請求が発生する可能性があります。このようなリスクを回避するために、OpenAIでは利用上限を設定する機能を提供しています。
管理画面の「Setting」→「Billing」の項目で、月間や1日あたりの利用上限トークン数を設定できます。上限に達すると、それ以上APIを呼び出すことができなくなるため、想定外の課金を防ぐことができます。
APIの利用状況を定期的にチェックし、必要に応じて上限を調整することをおすすめします。
トークン消費量の最適化
ChatGPT APIの利用料金はトークン数に基づいて計算されるため、トークンの消費量を抑えることが重要です。特に、大量の文章を読み込む場合や、繰り返し質問を行う場合は、トークンが重複しやすく、無駄な消費につながります。
トークンの消費を抑えるためには、以下のような工夫が有効です。
- 不要な情報を省略し、簡潔な文章を心がける
- 質問や指示を明確かつ具体的に伝える
- 英語で入出力を行う(英語の方が日本語よりトークン消費量が少ない)
- プロンプトを工夫し、的確な応答を引き出す
特にプロンプトの設計は、トークン消費量と応答の質に大きく影響します。適切なプロンプトを使うことで、少ないトークン数で目的の結果を得ることができるでしょう。
【関連記事】
→プロンプトエンジニアリングとは?コツやChatGPTで使える例文も紹介
セキュリティとプライバシーへの配慮
ChatGPT APIを利用する際は、セキュリティとプライバシーにも十分な注意が必要です。APIに入力したデータは、ChatGPTのモデル学習には使用されませんが、完全に安全とは言い切れません。
特に、顧客情報などの機密データを扱う場合は、慎重な取り扱いが求められます。
【関連記事】
➡️ChatGPTのセキュリティリスクとは?実際の事例を踏まえて対策を解説
セキュリティとコンプライアンスを確保するためには、Microsoft Azureの利用がおすすめです。
Azure OpenAI Serviceを使えば、Azureのセキュアな環境でChatGPTのAIモデルを業務に活用できます。データ保護機能や、アクセス制御、監査ログなど、企業が求める高度なセキュリティ基準を満たしています。
以下の記事で、Azure OpenAI Serviceの特徴と利点について詳しく解説しています。
➡️Azure OpenAI ServicesとOpenAI APIの違いを徹底比較!
ChatGPT APIを安全かつ適切に活用するためには、セキュリティとプライバシーに関する社内ルールを設けることも重要です。
データの取り扱いや、利用目的、アクセス権限などを明確に定め、全社的な理解と協力を得ることが求められます。
ChatGPT API(OpenAI API)の活用事例
ここまでChatGPT APIの概要や使い方、注意点などを解説してきました。ここからは、実際にChatGPT APIを導入した企業の事例や、APIを搭載したサービスを紹介します。
横浜銀行の事例
横浜銀行では、Azure OpenAI Serviceを利用してChatGPTを社内に導入しています。ChatGPT 3.5とGPT-4を活用し、行内データと一般的な質問に対応できるシステムを構築しました。

横浜銀行のChatGPT導入アーキテクチャ
➡️横浜銀行の事例はこちらから
栃木県の事例
栃木県でも、Azure OpenAI Serviceを利用してChatGPTを導入しています。業務効率化と住民サービスの向上を目的に、様々な場面でChatGPTを活用しています。

栃木県の事例
栃木県の事例はこちらから
ちゅうぎんフィナンシャルグループの事例
ちゅうぎんフィナンシャルグループでは、Azure OpenAI Serviceを利用してChatGPTを社内で活用しています。現在は試験導入の段階ですが、将来的には業務の効率化と顧客サービスの向上に役立てる計画です。

ちゅうぎんフィナンシャルグループの事例
ちゅうぎんフィナンシャルグループの事例はこちらから
ChatGPT APIを搭載したサービス
ChatGPT APIの登場により、様々なサービスがChatGPTの機能を組み込み始めています。
ここでは、ChatGPT APIを活用して革新的な価値を提供している注目のサービスを紹介します。
AI Writer

AI Writerは、ChatGPTのAPIを利用して高品質な文章を生成するサービスです。人間味のある自然な文章を素早く作成できることが特徴です。
AI Writerの詳細はこちらから
Benefitter

Benefitterは、ChatGPTのAPIを活用して、ビジネスでの安心・安全なGPT利用を支援するサービスです。GPT特有の課題に対する補完機能を提供しています。
Benefitterの詳細はこちらから
Quick summary

Quick summaryは、コンタクトセンター向けのAI要約サービスです。ChatGPTを活用して、電話やチャットの内容を自動で要約します。
Quick summaryの詳細はこちらから
exaBase 生成AI

exaBase 生成AIは、サブスクリプション型のChatGPT社内利用サービスです。RAG構築にも対応しており、企業のAI活用を幅広くサポートします。
exaBase 生成AIの詳細はこちらから
ログミーツ

ログミーツは、会議の議事録を自動で作成するサービスです。ChatGPTのAPIを活用して、会議の音声を文字起こしし、要約まで行います。
ログミーツの詳細はこちらから
【関連記事】
➡️ChatGPTの活用事例50選!企業や自治体、教育現場での例を徹底解説!
AI総合研究所は生成AI事業支援化パートナーです
弊社はMicrosoftに生成AI事業支援化パートナーとして採用されています。

生成AI事業支援課パートナー一覧
生成AIの活用や、Azure OpenAI Serviceの導入についてはお気軽にご相談ください。
お問い合わせはこちらから
👉AI総合研究所の無料相談窓口
まとめ
この記事では、ChatGPT APIの概要や使い方、料金体系、注意点などを詳しく解説してきました。APIを利用することで、様々なアプリケーションやサービスにChatGPTの機能を組み込むことができ、業務の効率化やユーザー体験の向上が期待できます。
APIの利用にあたっては、トークン消費量の最適化やセキュリティ対策など、いくつかの注意点があります。特に企業での利用では、データ保護とコンプライアンスの確保が重要です。
Azure OpenAI Serviceを活用することで、安心・安全なAPI利用環境を整備できるでしょう。
ChatGPT APIは、私たちの生活やビジネスに大きな変革をもたらす可能性を秘めています。自然な対話や、高度な言語処理、創造的なコンテンツ生成など、AIの力を身近に感じられる時代が到来しつつあります。
APIを活用して、革新的なアプリケーションやサービスが次々と生まれていくことでしょう。
この記事が、ChatGPT APIの可能性と課題について理解を深める一助となれば幸いです。APIの活用によって、ビジネスの成長と社会の発展が加速することを願っています。









