AI総合研究所

SHARE

X(twiiter)にポストFacebookに投稿はてなブックマークに登録URLをコピー

ChatGPT APIとは?OpenAI APIの使い方や料金、活用事例を解説!(2025年最新版・GPT-5/Responses API対応)

この記事のポイント

  • 2026年3月時点の最新情報。GPT-5.4対応のResponses APIの使い方とSDK導入手順を解説。
  • 画像・PDF解析、Web検索、Function Calling、MCP、Agents SDKなどの主要機能と実装例を網羅。
  • PythonとJavaScriptのサンプルコード付きで、初めてのAPI利用からエージェント構築まで対応。
  • GPT-5.4を含む全モデルの最新料金テーブルとコスト最適化のポイントを紹介。
  • 企業導入事例やセキュリティ対策、Azure OpenAI Serviceとの使い分けも解説。
坂本将磨

監修者プロフィール

坂本将磨

XでフォローフォローするMicrosoftMVP

Microsoft MVP・AIパートナー。LinkX Japan株式会社 代表取締役。東京工業大学大学院にて自然言語処理・金融工学を研究。NHK放送技術研究所でAI・ブロックチェーンの研究開発に従事し、国際学会・ジャーナルでの発表多数。経営情報学会 優秀賞受賞。シンガポールでWeb3企業を創業後、現在は企業向けAI導入・DX推進を支援。

ChatGPT API(OpenAI API)は、GPTモデルの機能を外部アプリケーションに組み込むためのインターフェースです。
2026年3月時点では、Responses APIが標準となり、テキスト生成、画像・ファイル解析、Web検索、エージェント構築まで統一されたインターフェースで利用できます。


本記事では、最新のGPT-5.4に対応したChatGPT APIの始め方、SDK導入手順、主要機能の実装例、料金体系、注意点までを網羅的に解説します。
初めてAPIを使う方から、本番環境での活用を検討している開発者・企業担当者まで、必要な情報をまとめました。


ChatGPTの新料金プラン「ChatGPT Go」については、以下の記事をご覧ください。
ChatGPT Goとは?料金や機能、広告の仕様、Plus版との違いを解説

✅最新モデル「GPT-5.4」については、以下の記事をご覧ください。
GPT-5.4(ChatGPT5.4)とは?使い方や料金、GPT-5.2との違いを徹底解説

目次

ChatGPT API(OpenAI API)とは

ChatGPTのWeb版とAPIの違い

2026年3月の主な変更点

ChatGPT APIでできること

テキスト生成・自然言語処理(GPTシリーズ)

画像生成(GPT Image 1)

音声認識・音声合成(Whisper API・Speech API)

埋め込み(Embeddings API)

ファインチューニング(Fine-tuning API)

AIエージェントの構築(Agents SDK・Responses API)

コンテンツモデレーション(Moderation API)

大量処理とコスト効率化(Batch API)

ファイル管理(Files API)

ChatGPT APIの始め方

APIキーの取得手順

SDKのインストールと基本的なAPI呼び出し

Pythonを使ったChatGPT APIの呼び出し方法

ChatGPT APIの主要機能と実装例

画像・ファイルの分析

ツール統合(Web検索・ファイル検索・Function Calling・MCP)

ストリーミングとRealtime API

Agents SDK(エージェント構築)

ChatGPT APIの料金体系

テキストモデル料金(Standard)

推論モデル料金(Standard)

マルチモーダル・特殊モデル

バッチ処理(Batch API)

その他のAPI料金

トークン数の計算方法

ChatGPT APIの注意点

無料クレジットの廃止(2025年)

APIの利用上限の設定

トークン消費量の最適化

セキュリティとプライバシーへの配慮

ChatGPT APIの活用事例

横浜銀行の事例

栃木県の事例

ちゅうぎんフィナンシャルグループの事例

ChatGPT APIを搭載したサービス

AI総合研究所は生成AI事業支援化パートナーです

まとめ

ChatGPT API(OpenAI API)とは

ChatGPT API(OpenAI API)とは、OpenAIが開発した大規模言語モデル(LLM)の機能を、外部のアプリケーションやサービスに組み込むためのインターフェースです。APIとは「Application Programming Interface」の略で、異なるソフトウェア同士をつなぐ仕組みを指します。

2026年3月時点では、Responses APIが新規プロジェクト向けの標準APIとなっており、以下のような機能が統一されたインターフェースで利用できます。

ChatGPTのWeb版とAPIの違い

ChatGPTには、ブラウザやアプリから直接利用する「Web版(chatgpt.com)」と、プログラムから呼び出す「API」の2つの利用方法があります。以下の表で両者の違いを整理しました。

項目 ChatGPT Web版 ChatGPT API
利用方法 ブラウザ・公式アプリ プログラムからHTTPリクエスト
料金体系 月額サブスクリプション(Free / Go / Plus / Pro) 従量課金(トークン単位)
カスタマイズ プロンプトやGPTsで調整 モデル選択、パラメータ制御、ファインチューニング
外部連携 限定的 自社システム・アプリへの組み込みが自由
データ管理 OpenAIのポリシーに準拠 APIデータはモデル学習に不使用(オプトアウト不要)

この表のとおり、Web版は手軽に使える一方、APIは自社サービスへの組み込みやデータ管理の柔軟性が大きな利点です。企業がChatGPTの能力を自社の業務システムやアプリケーションに統合したい場合は、APIの利用が適しています。

2026年3月の主な変更点

2026年初頭にかけて、OpenAI APIには以下の大きな変更がありました。

  • GPT-5.4リリース(2026年3月5日)
    1.05Mトークンのコンテキストウィンドウを持つ最新フラッグシップモデルです。入力$2.50 / 出力$15.00(1Mトークンあたり)で提供されています。

  • GPT-5.3-Codexリリース(2026年2月)
    GPT-5.2-Codexの後継となるコーディング特化モデルです。推論性能も統合され、GPT-5.2より25%高速とされています。

  • GPT-5.3 Instant
    ChatGPTのデフォルトモデルとして導入された、日常会話に最適化されたモデルです。API料金は入力$1.75 / 出力$14.00です。

  • Assistants API非推奨化(2025年8月発表)
    Assistants APIは2026年8月26日にサンセット予定です。新規プロジェクトではResponses APIとConversations APIへの移行が推奨されています。

  • 無料クレジットの廃止
    以前は新規登録時に$5の無料クレジットが付与されていましたが、2025年中頃に廃止されました。現在はAPIを利用するには最低$5のチャージが必要です。

ChatGPT APIでできること

ChatGPT API(OpenAI API)を導入することで、開発者はOpenAIが提供する多様なAIモデルの能力を、自社のWebサービス、アプリケーション、業務システムに直接組み込むことができます。

単なるチャット機能の追加に留まらず、ビジネスの様々な側面で革新的な機能や効率化が実現可能です。

ここでは、OpenAI APIが提供する主要な機能と、それらを活用して具体的に何ができるのかを紹介します。

テキスト生成・自然言語処理(GPTシリーズ)

最新のGPTモデル(GPT-5.4、GPT-5.2、GPT-5、o3などの推論モデル)を利用して、人間と自然に対話するAIや、高度な文章処理機能をアプリケーションに実装できます。

  • インテリジェントなチャットボット開発:
    顧客からの問い合わせに対応するFAQチャットボット、社内ヘルプデスク、あるいは特定の知識ベースに基づいた専門的なアドバイスを提供するバーチャルアシスタントを構築できます。
    過去の会話履歴を考慮した文脈理解や、複雑な質問への対応も可能です。

  • コンテンツ生成・要約・校正:
    ブログ記事、商品説明、広告コピー、メールの文面、レポート、議事録などのドラフトを自動生成。長文ドキュメントの要点を抽出・要約したり、既存の文章を校正・リライトしたりすることで、コンテンツ制作業務を大幅に効率化します。

  • 感情分析・テキスト分類:
    顧客レビューやSNS投稿から製品・サービスへの評価(ポジティブ/ネガティブなど)を自動で分析。問い合わせ内容をカテゴリ別に自動分類し、適切な担当者へ振り分けるといった業務フローの自動化も可能です。

  • 多言語翻訳・ローカライズ:
    高精度な機械翻訳により、ドキュメント、ウェブサイト、アプリケーションのUIなどを多言語に対応させ、グローバル展開を支援します。

画像生成(GPT Image 1)

テキストによる指示(プロンプト)から、オリジナルの画像を生成する機能を組み込めます。

  • 広告・マーケティング素材作成:
    製品イメージ、キャンペーンビジュアル、SNS投稿用画像などを、デザイナーに依頼することなく迅速に作成。多様なスタイルやコンセプトの画像を試作し、ABテストに活用できます。

  • コンテンツの視覚的魅力向上:
    ブログ記事やプレゼンテーション資料に挿入するイラストや図解を、内容に合わせてオンデマンドで生成。視覚的に分かりやすく、魅力的なコンテンツ作りを支援します。

  • 製品デザイン・プロトタイピング:
    新しい製品のアイデアやデザインコンセプトを、テキストで記述するだけで具体的なイメージとして可視化。初期段階でのアイデア共有やフィードバック収集を効率化します。

音声認識・音声合成(Whisper API・Speech API)

音声をテキストに変換する「音声認識(Speech-to-Text)」と、テキストを自然な音声に変換する「音声合成(Text-to-Speech)」機能を活用できます。

  • 会議の議事録自動作成:
    会議中の発言をリアルタイムでテキスト化し、議事録作成の手間を大幅に削減。重要な発言の検索や共有も容易になります。

  • 音声アシスタント・音声操作:
    アプリケーションやデバイスを声で操作できるようにしたり、音声による情報入力・検索機能を実装したりすることが可能です。

  • オーディオコンテンツ制作:
    ブログ記事やニュース記事を自然な音声で読み上げ、オーディオコンテンツとして配信。視覚障碍者向けのアクセシビリティ向上や、移動中・作業中の「ながら聴き」需要にも対応できます。

  • 多言語音声対応:
    外国語の音声をリアルタイムで翻訳し、テキストまたは別の言語の音声で出力。国際会議やグローバルなコミュニケーションを円滑にします。

埋め込み(Embeddings API)

テキストを数値ベクトル(埋め込み表現)に変換することで、テキスト間の意味的な類似性を計算したり、高度な検索や分類タスクに応用したりできます。

  • セマンティック検索:
    キーワードの一致だけでなく、質問や検索クエリの「意味」を理解し、関連性の高い情報を大量のドキュメントから探し出す高度な検索システムを構築できます。

  • レコメンデーションシステム:
    ユーザーの閲覧履歴や興味関心に基づいて、類似した記事、製品、サービスなどを推薦する精度を向上させます。

  • 異常検知・クラスタリング:
    大量のテキストデータの中から、他とは傾向の異なる異常な記述を検出したり、意味的に類似したドキュメントをグループ化したりすることができます。

ファインチューニング(Fine-tuning API)

特定のタスクやドメイン知識に合わせて、ベースとなる大規模言語モデルをカスタマイズ(追加学習)することができます。

  • 特定業界・企業特化型AIの構築:
    医療、法律、金融といった専門分野の用語や知識、あるいは自社独自の製品情報や業務プロセスをモデルに学習させることで、その分野に特化した高精度なAIアシスタントやチャットボットを開発できます。

  • 独自の文章スタイル・トーンの模倣:
    特定のブランドボイスや、特定の人物の文章スタイルをモデルに学習させ、そのスタイルに合わせた文章を生成させることが可能です。

AIエージェントの構築(Agents SDK・Responses API)

OpenAIは2025年にAgents SDKをリリースし、複数のエージェントを協調動作させるマルチエージェントシステムの構築が可能になりました。従来のAssistants APIは2026年8月にサンセット予定のため、新規プロジェクトではResponses APIとAgents SDKの組み合わせが推奨されています。

  • Responses APIによる会話管理
    Conversations APIと組み合わせることで、永続的な会話履歴の管理と文脈を維持した対話を実現できます。

  • ツールの統合利用
    Web検索、ファイル検索、Code Interpreter、Function Calling、MCPなどのツールをエージェントが自律的に利用してタスクを遂行します。

  • マルチエージェント連携
    Agents SDKのハンドオフ機能により、問い合わせの分類エージェント→営業エージェント→技術サポートエージェントのように、タスクに応じた引き継ぎを自動化できます。

  • 評価とモニタリング
    組み込みのトレーシング機能でエージェントの動作を可視化し、デバッグや性能評価を行えます。

コンテンツモデレーション(Moderation API)

生成されたコンテンツやユーザーからの入力が、OpenAIの利用規約や安全ポリシーに準拠しているかを自動的に判定します。

  • 安全なコミュニティ運営:
    ユーザー投稿型のプラットフォームやチャットサービスで、不適切な発言(ヘイトスピーチ、暴力的表現、性的コンテンツなど)を検出し、フィルタリングや管理者への通知を行うことで、健全なコミュニティ環境を維持。

  • AI生成コンテンツの品質管理:
    AIが生成したコンテンツが意図せず不適切な内容を含んでいないかを確認し、公開前の安全チェックを実施。

大量処理とコスト効率化(Batch API)

大量のAPIリクエストを非同期的に処理し、コストを抑えながら効率的に結果を得ることができます。

  • 大規模データ処理:
    数時間から数日かかるような大量のテキストデータの分類、要約、翻訳などのバッチ処理を、通常のエンドポイントよりも低コスト(最大50%割引)で実行。

  • オフライン分析:
    リアルタイム性が求められない大規模な分析タスクや、夜間のデータ処理などに最適。

ファイル管理(Files API)

ファインチューニング用の学習データや、Assistants APIで利用するファイルなどをOpenAIのプラットフォームにアップロード・管理するためのAPIです。

  • 学習データの準備:
    ファインチューニングに必要なデータセットを安全にアップロードし、学習ジョブと連携。

  • アシスタント用リソースの提供:
    Assistants APIでRetrievalツールが参照するドキュメントや知識ベースを管理。

API間の連携例


これらのAPIを組み合わせることで、より複雑で高度な自動化ソリューションを構築することも可能です。
例えば、以下のような一連の処理が考えられます。

  1. 音声での問い合わせをテキスト化:
    顧客からの電話やボイスメッセージによる問い合わせを、Whisper API を使用して高精度にテキストデータへ変換します。

  2. 問い合わせ内容の分析・要約:
    テキスト化された問い合わせ内容を GPTシリーズAPI に入力し、その主要な論点、顧客の感情、緊急度などを分析・要約します。この要約情報は担当者に通知されます。

  3. 関連情報の検索と提示:
    問い合わせ内容に関連するFAQドキュメントや過去の類似事例を、Embeddings API を用いて意味的に検索し、関連性の高い情報を抽出します。
    抽出された情報は GPTシリーズAPI によって整理され、担当者が参照しやすい形で提示されます。

  4. 回答文案の生成:
    必要に応じて、GPTシリーズAPI が検索結果や過去の対応履歴を基に、顧客への適切な回答文案を自動生成します。担当者はこの文案をレビューし、適宜修正して対応することができます。

  5. エージェントによる自律的対応(オプション)
    さらに高度なケースでは、Agents SDKを活用し、これらのステップの一部または全体を自律的に実行するAIエージェントを構築することも可能です。
    エージェントは、Code Interpreterでデータを分析したり、ファイル検索で情報を取得したり、Function Callingで外部システムと連携したりしながら、より複雑な問い合わせに対応します。


OpenAI APIは、このように各機能を連携させることで、アイデア次第で無限の可能性を秘めています。


ChatGPT APIの始め方

ChatGPT APIを利用するには、OpenAIアカウントの作成、APIキーの取得、支払い情報の登録が必要です。ここでは、アカウント作成からAPIの呼び出しまでの手順を解説します。

APIキーの取得手順

ChatGPT APIを利用するためには、まずOpenAIのアカウントを作成し、専用のAPIキーを取得する必要があります。
このAPIキーは、あなたのアプリケーションがOpenAIのモデルと安全に通信するための「鍵」の役割を果たします。

ここでは、アカウント作成からAPIキーの発行、そして支払い情報の設定までの具体的な手順を、画像付きで分かりやすく解説します。セキュリティに関する重要な注意点もまとめていますので、必ずご確認ください。

OpenAIアカウントを作成する

APIの利用にはOpenAIのアカウントが必要です。以下はアカウント開設の手順です。

  1. OpenAIの開発者向けサイトOpenAI APIにアクセスします。

  2. 画面右上の「Login」をクリックします。

  3. メールアドレス、パスワード、名前を入力すれば、簡単にアカウントが作成する事が可能です。


アカウント登録時に不明な点がある場合はこちらの記事を参照してみてください。
ChatGPTの始め方・ログイン方法をわかりやすく解説

APIキーを発行する

  1. アカウントの作成が完了したら、OpenAI開発者プラットフォームにログインします。

  2. 画面左側の、鍵マークをクリックし、「API key」を選択します。
    APIキーの発行手順
    開発者プラットフォームのサイドバー

  3. 次の様な画面が表示されるので、 「Create new secret key」をクリックします。
    Create new secret key
    APIキーの発行・管理画面


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

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

APIキー取得画面
伏字部分にAPIキーが表示される


ここに表示されている文字列がChatGPTのAPIキーです。絶対に他人に教えたりはせず、厳重に保存してください。
APIキーは複数発行できるので、サービスに合わせて作成したり忘れてしまった場合は再発行することも可能です。

支払い情報(クレジットカード情報)を入力する

APIキーを利用するには、利用料金を支払う為の支払い情報(クレジットカードのみ)の登録が必要です。

  1. OpenAI開発者プラットフォームにログインします。

  2. 画面左側の歯車マークをクリックし、「Billing」を選択します。
    chatgpt playground
    開発者プラットフォームのサイドバー

  3. 次の様な画面が表示されるので、「Add payment details」を選択します。
    ChatGPT APIの管理画面
    支払い情報の管理画面

  4. 個人か法人かを選択し、カード情報と支払い住所を設定すると、登録が完了します。

APIキー発行時の注意点

APIキーを発行する上での注意点について、改めてまとめると以下の様になります。
これらは非常に重要な事ですので、必ずお読み下さい。

  • APIキーは、発行時にしか表示されません。紛失してしまった場合は再発行が必要です。
  • 悪用を防ぐために、発行したAPIキーは絶対に第三者に漏らさないよう注意しましょう。
  • APIは従量課金制です。予期せぬ請求を防ぐためにAPIの利用上限を設定する事をおすすめします。


以上3つのポイントを念頭に置きつつ、APIキーを取得、活用していきましょう。


SDKのインストールと基本的なAPI呼び出し

ここでは、最新の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


Pythonを使ったChatGPT APIの呼び出し方法

次に、ChatGPT APIの利用方法を解説していきます。

Pythonを使ったChatGPT APIの呼び出し方法

取得したAPIキーを使って、実際にChatGPTをPythonで動かしてみましょう。

ここでは、誰でも手軽に利用できる「Google Colab」を使った方法を説明します。

Google Colabの概要

Google Colaboratory(略称:Colab)は、ブラウザ上でPythonを記述・実行できるツールです。専用の開発環境を用意する必要がなく、無料で利用できるため、手軽にChatGPT APIを試すことができます。

Colabの基本的な使い方は以下の通りです。

Colob_example
Colobの使い方

  1. 「+コード」ボタンを選択すると、新しいコードセルが追加されます。

  2. コードセルにPythonのプログラムを入力します。

  3. 再生マークを選択すると、そのコードセル内のプログラムが実行されます。

ChatGPT APIの呼び出し手順

では、実際にPythonコードを使ってChatGPT APIを呼び出す手順を見ていきましょう。

  1. 必要なライブラリのインストール
    以下のコードをColabのコードセルに貼り付けて実行します。
    import os
    import openai
    


  1. APIキーの設定
    取得したAPIキーを環境変数から読み込むか、直接指定します。APIキーをプログラム内に直接記述する場合は、セキュリティ上のリスクがあるため、環境変数を使うことをおすすめします。

    api_key = os.getenv("OPENAI_API_KEY")  # 環境変数から取得する場合
    # api_key = "your_api_key_here"  # 直接指定する場合
     
    openai.api_key = api_key
    

    環境変数は、Colabの左側にある鍵マークから設定できます。これを使うことで、APIキーを非公開にした状態で、ノートブック内で使用できます。
    Colob_secret
    鍵マークを選択

    APIキーを入力し、任意の名前を付けます。
    Colob_secret_2
    値と名前を入力する

    以下のコードで、設定した名前を指定することで、APIキーをノートブック内で使用できます。

    from google.colab import userdata
    userdata.get('secretName')
    


  1. ChatGPT APIの呼び出し
    以下のようなコードを実行することで、Responses APIを使ってChatGPTを呼び出し、簡単な対話ツールを構築できます。
    from openai import OpenAI
    client = OpenAI()
    
    # ユーザーからの質問を取得
    user_input = input("質問を入れてください: ")
    
    # Responses APIへのリクエスト
    response = client.responses.create(
        model="gpt-5-mini",  # コスト効率の良い軽量モデル
        input=user_input
    )
    
    # レスポンスの表示
    print(response.output_text)
    

以上の手順で、PythonからChatGPT APIを呼び出すことができます。

APIの活用によって、自分だけのオリジナルなAIアプリケーションを開発できるでしょう。


ChatGPT APIの主要機能と実装例

ChatGPT APIは、テキスト生成だけでなく、画像分析やWeb検索、エージェント構築など多彩な機能を提供しています。ここでは、主要な機能ごとに実装例を紹介します。

画像・ファイルの分析

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}"}}
    ]
)

ツール統合(Web検索・ファイル検索・Function Calling・MCP)

Responses APIではツール統合が標準化されており、AIに外部ツールへのアクセス権を付与できます。

1. Web検索ツール(Web Search)

インターネット検索機能を組み込み、リアルタイムの情報を取得できます。

from openai import OpenAI
client = OpenAI()

response = client.responses.create(
    model="gpt-5",
    input="2026年3月の日本の最新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(エージェント構築)

OpenAIのAgents SDKは、高度な自律型AIエージェントを構築するための軽量フレームワークです。2026年3月時点でPython版(v0.10)とNode.js版(v0.5)が提供されています。

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の料金体系

ChatGPT APIは従量課金制となっており、使用量に応じて料金が発生します。料金はトークン数に基づいて計算されます。

OpenAIは複数の処理優先度(Standard、Batch、Priority)を提供しており、処理速度とコストのバランスに応じて選択できます。以下の料金テーブルはStandard(標準)の料金です。

以下に、主要なモデルのAPI利用料金(2026年3月時点)をまとめました。料金は100万トークンあたりの米ドル(USD)表記です。

テキストモデル料金(Standard)

モデル名 入力料金 (USD / 1M tokens) キャッシュ入力 (USD / 1M tokens) 出力料金 (USD / 1M tokens) 特徴
gpt-5.4 $2.50 $1.25 $15.00 最新フラッグシップ(1.05Mコンテキスト)
gpt-5.4-pro $30.00 - $180.00 最高性能モデル
gpt-5.2 $1.75 $0.175 $14.00 GPT-5.2世代の汎用モデル
gpt-5.2-pro $21.00 - $168.00 GPT-5.2世代の最上位
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-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 最も低コスト

GPT-5.4はコンテキストウィンドウが1.05Mトークンと非常に大きいですが、272Kトークンを超えると入力料金が2倍になる点に注意が必要です。コスト効率を重視する場合は、gpt-5-miniやgpt-4.1-nanoが適しています。

推論モデル料金(Standard)

推論モデルは、数学・コーディング・科学的分析など、段階的な思考が求められるタスクに特化しています。出力にはreasoning tokens(推論トークン)が含まれ、通常の出力トークンと同じ料金で課金されます。

モデル名 入力料金 (USD / 1M tokens) キャッシュ入力 (USD / 1M tokens) 出力料金 (USD / 1M tokens) 特徴
o3 $2.00 $0.50 $8.00 推論特化モデル
o3-pro $20.00 - $80.00 高度な推論
o4-mini $1.10 $0.275 $4.40 軽量推論モデル
o1 $15.00 $7.50 $60.00 第1世代推論(レガシー)

o1-miniとo1-previewはすでにシャットダウンされています。新規プロジェクトではo3またはo4-miniの利用を推奨します。

マルチモーダル・特殊モデル

モデル名 入力料金 出力料金 用途
gpt-image-1 $10.00/1M tokens $10.00/1M tokens 画像理解・生成
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.4 $1.25 $0.625 $7.50
gpt-5.2 $0.875 $0.0875 $7.00
gpt-5 $0.625 $0.0625 $5.00
gpt-5-mini $0.125 $0.0125 $1.00
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
toknizerを利用してトークン数の計算を行う

tokenizerを使えば、APIを呼び出す前に、どの程度のトークンを消費するかを把握できます。
これにより、予期せぬ高額請求を避けることができるでしょう。


ChatGPT APIの注意点

ChatGPT APIを利用する際には、いくつかの注意点があります。
ここでは、APIを効果的かつ安全に活用するためのポイントを解説します。

無料クレジットの廃止(2025年)

以前はOpenAIに新規登録すると$5~$18の無料クレジットが付与されていましたが、2025年中頃にこの制度は廃止されました。2026年3月時点では、APIを利用するには最低$5のクレジットチャージが必要です。


無料クレジット
API利用料金の管理画面

無料でAPIを試したい場合は、OpenAIのPlaygroundコンソールで少量のテストを行うか、gpt-5-nanoのような低コストモデルを選択することで、最小限の費用で動作確認ができます。

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の活用事例

ここまでChatGPT APIの概要や使い方、注意点などを解説してきました。ここからは、実際にChatGPT APIを導入した企業の事例や、APIを搭載したサービスを紹介します。

横浜銀行の事例

横浜銀行では、Azure OpenAI Serviceを利用してChatGPTを社内に導入しています。ChatGPT 3.5とGPT-4を活用し、行内データと一般的な質問に対応できるシステムを構築しました。

横浜銀行のChatGPT導入アーキテクチャ
横浜銀行のChatGPT導入アーキテクチャ


横浜銀行の事例はこちらから

栃木県の事例

栃木県でも、Azure OpenAI Serviceを利用してChatGPTを導入しています。業務効率化と住民サービスの向上を目的に、様々な場面でChatGPTを活用しています。

栃木県の事例
栃木県の事例


栃木県の事例はこちらから

ちゅうぎんフィナンシャルグループの事例

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

ちゅうぎんフィナンシャルグループの事例
ちゅうぎんフィナンシャルグループの事例


ちゅうぎんフィナンシャルグループの事例はこちらから

ChatGPT APIを搭載したサービス

ChatGPT APIの登場により、様々なサービスがChatGPTの機能を組み込み始めています。

ここでは、ChatGPT APIを活用して革新的な価値を提供している注目のサービスを紹介します。

AI Writer

AI Writer


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

Benefitter

Benefitter


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

Quick summary

Quick summary


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

exaBase 生成AI

exaBase 生成AI


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

ログミーツ

ログミーツ


ログミーツは、会議の議事録を自動で作成するサービスです。ChatGPTのAPIを活用して、会議の音声を文字起こしし、要約まで行います。
ログミーツの詳細はこちらから

【関連記事】
ChatGPTの活用事例50選!企業や自治体、教育現場での例を徹底解説!


AI総合研究所は生成AI事業支援化パートナーです

弊社はMicrosoftに生成AI事業支援化パートナーとして採用されています。

生成AI事業支援化パートナー一覧
生成AI事業支援課パートナー一覧

生成AIの活用や、Azure OpenAI Serviceの導入についてはお気軽にご相談ください。
お問い合わせはこちらから
AI総合研究所の無料相談窓口

AI駆動開発

バックオフィス業務をAIで自動化 AI Agent Hub

AI Agent Hub

Microsoft Teams上でAIエージェントが業務を代行

経費精算・請求書処理をAIが自動実行。Microsoft Teams上でAIエージェントが業務を代行し、金融機関レベルのセキュリティで安心導入。


まとめ

この記事では、ChatGPT API(OpenAI API)の概要、始め方、主要機能の実装例、料金体系、注意点までを解説しました。

2026年3月時点では、GPT-5.4のリリースやResponses APIの標準化、Agents SDKの成熟により、APIでできることの幅は大きく広がっています。一方で、無料クレジットの廃止やAssistants APIのサンセット予定など、最新の変更にも注意が必要です。

企業でのセキュリティやコンプライアンスを重視する場合は、Azure OpenAI Serviceの活用も選択肢のひとつです。まずはgpt-5-miniなどの低コストモデルで小規模に試し、効果を確認してから本格導入を検討することをおすすめします。

監修者
坂本将磨

坂本将磨

Microsoft MVP・AIパートナー。LinkX Japan株式会社 代表取締役。東京工業大学大学院にて自然言語処理・金融工学を研究。NHK放送技術研究所でAI・ブロックチェーンの研究開発に従事し、国際学会・ジャーナルでの発表多数。経営情報学会 優秀賞受賞。シンガポールでWeb3企業を創業後、現在は企業向けAI導入・DX推進を支援。

関連記事

AI導入の最初の窓口

お悩み・課題に合わせて活用方法をご案内いたします
お気軽にお問合せください

AI総合研究所 Bottom banner

ご相談
お問い合わせは
こちら!