D
DigiSchool
コース一覧カテゴリブログ
ログイン無料で始める
D
DigiSchool

デジタルマーケティングとWeb制作のスキルを身につけて、キャリアを加速させましょう。

カテゴリ

AIWebデザイン広告運用SEOMEOLP制作HP制作SaaSECデザイン

サービス

  • コース一覧
  • カテゴリ一覧
  • ブログ
  • 無料会員登録

サポート

  • 利用規約
  • プライバシーポリシー

© 2026 DigiSchool. All rights reserved.

コース/ChatGPT完全マスター講座/ChatGPT APIの基礎と活用
9 / 12
レッスン 9
30分

ChatGPT APIの基礎と活用

📝 最後に理解度チェック(3問)があります
▶

解説動画は無料登録で視聴できます

全26コース・260レッスンが完全無料。登録は1分、クレジットカードは不要です

無料登録して動画を見るアカウントをお持ちの方はログイン

ChatGPT API基礎

ChatGPTのWebインターフェースは便利ですが、自分のアプリやシステムにAIを組み込むにはAPIを使う必要があります。このレッスンでは、APIキーの取得から最初のリクエスト送信、料金体系の理解、トークン管理とレート制限の対策まで、ChatGPT APIを使い始めるために必要な知識を学びます。


APIリクエストの構造

ChatGPT API リクエスト構造ChatGPT API リクエスト構造

ChatGPT APIはHTTPのPOSTリクエストで動作します。クライアントがAPIキーとメッセージを送ると、OpenAIのサーバーがモデルを実行してJSONレスポンスを返します。使用したトークン数に応じて課金されます。


APIキーの取得手順

ステップ1: OpenAIアカウントの準備

  1. ◆https://platform.openai.com にアクセス
  2. ◆「Sign up」からアカウントを作成(メールアドレス or Googleアカウント)
  3. ◆電話番号認証を完了させる
  4. ◆支払い方法を登録する(クレジットカード必須)

⚠️ 重要: APIの利用はChatGPT Plusとは別の課金体系です。ChatGPT Plus(月額$20)を契約していてもAPIは別途従量課金が必要です。初めて使う場合は使用上限(Spend Limit)を$5〜$10程度に設定しておくことを強く推奨します。

ステップ2: APIキーの生成

  1. ◆https://platform.openai.com/api-keys にアクセス
  2. ◆「Create new secret key」をクリック
  3. ◆キーに名前をつける(例:「my-app-key」)
  4. ◆生成されたキーをすぐにコピーして安全な場所に保存

⚠️ APIキーは一度しか表示されません: ダイアログを閉じると二度とキーを見られません。必ずコピーして .env ファイルなどに保存してください。紛失した場合は新しいキーを生成してください。

ステップ3: 使用上限の設定

  1. ◆https://platform.openai.com/settings/organization/limits にアクセス
  2. ◆「Monthly budget」に上限金額を設定(初回は$10推奨)
  3. ◆上限に達すると自動的にAPIが停止される(予期せぬ請求を防ぐ)

APIキーの管理ルール

必須ルール理由
Gitに絶対コミットしない公開リポジトリに含まれると即悪用される
.envファイルに保存アプリとキーを分離して管理
.gitignoreに.envを追加誤ってコミットするのを防ぐ
本番・開発で別キーを使用漏洩時の被害を最小化
使用しなくなったキーは削除不要なアクセスポイントを減らす

curlでAPIリクエストを送る

最も簡単な動作確認方法です。ターミナル(Mac/Linux)またはコマンドプロンプト(Windows)で実行できます。

基本的なcurlリクエスト

curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "gpt-4o-mini",
    "messages": [
      {"role": "system", "content": "あなたは役に立つアシスタントです"},
      {"role": "user", "content": "こんにちは!"}
    ],
    "max_tokens": 100
  }'

レスポンスの読み方

{
  "id": "chatcmpl-xxxxx",
  "object": "chat.completion",
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "こんにちは!どのようにお手伝いできますか?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 28,
    "completion_tokens": 18,
    "total_tokens": 46
  }
}
  • ◆choices[0].message.content: AIの返答テキスト
  • ◆usage.total_tokens: 今回消費したトークン数(課金の基準)
  • ◆finish_reason: 「stop」が正常終了。「length」はmax_tokensに達した

PythonでAPIを呼び出す

実際のアプリケーション開発ではPythonが最もよく使われます。

環境構築

pip install openai

基本的なAPIコール

import os
from openai import OpenAI

# APIキーは環境変数から読み込む(直接コードに書かない)
client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {"role": "system", "content": "あなたは役に立つアシスタントです"},
        {"role": "user", "content": "AIの活用事例を3つ教えてください"}
    ],
    max_tokens=500,
    temperature=0.7
)

# 返答を取り出す
print(response.choices[0].message.content)
print(f"使用トークン数: {response.usage.total_tokens}")

会話履歴を保持するチャットアプリ

import os
from openai import OpenAI

client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
conversation_history = []

def chat(user_message):
    conversation_history.append({
        "role": "user",
        "content": user_message
    })

    response = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=conversation_history,
        max_tokens=500
    )

    assistant_message = response.choices[0].message.content
    conversation_history.append({
        "role": "assistant",
        "content": assistant_message
    })
    return assistant_message

# 使用例
print(chat("私の名前は田中です"))
print(chat("私の名前を覚えていますか?"))  # 過去の会話を覚えている

💡 会話履歴の仕組み: ChatGPT APIはステートレス(状態を持たない)です。「会話の文脈を覚えている」ように見えるのは、毎回のリクエストに過去の会話履歴を含めているからです。履歴が長くなるほどトークン消費が増える点に注意してください。


料金体系とトークン管理

トークンとは

OpenAI APIの課金単位は「トークン」です。日本語では1トークン≒1文字が目安ですが、英語は1トークン≒4文字と効率的です。

テキスト例トークン数(目安)
「こんにちは」約5トークン
"Hello, how are you?"約5トークン
日本語の1000文字の文章約800〜1200トークン
A4一枚分の日本語テキスト約1000〜2000トークン

モデル別の料金比較

モデル入力 ($/1Mトークン)出力 ($/1Mトークン)特徴
GPT-4o$5.00$15.00最高品質、マルチモーダル対応
GPT-4o mini$0.15$0.60コスパ最高、日常タスクに十分
GPT-3.5 Turbo$0.50$1.50旧来モデル、シンプルなタスク向け
o1$15.00$60.00推論特化、数学・科学に強い
o3-mini$1.10$4.40推論・コストバランス型

💡 コスト試算の例: 日本語1000文字のテキストを1000回処理する場合、GPT-4o miniなら約$0.15(約22円)、GPT-4oなら約$5(約750円)です。まずGPT-4o miniで試し、品質が不十分な場合だけGPT-4oに切り替えるのがベストプラクティスです。

トークン数を削減するテクニック

  1. ◆system promptを簡潔にする: 長い指示書きはトークンを消費する。必要最小限に絞る
  2. ◆会話履歴の要約: 長い会話は「ここまでの会話を3文で要約して」でコンパクト化してから継続
  3. ◆max_tokensの適切な設定: 短い返答でよいタスクに大きなmax_tokensを設定しない
  4. ◆モデルの使い分け: 単純なタスクはGPT-4o mini、複雑な推論だけGPT-4oを使う

レート制限の仕組みと対策

レート制限の種類

OpenAI APIには3種類のレート制限があります。

制限の種類説明エラーコード
RPM (Requests Per Minute)1分間のリクエスト数429
TPM (Tokens Per Minute)1分間のトークン数429
RPD (Requests Per Day)1日のリクエスト数429

レート制限に引っかかった場合の対処

Exponential Backoff(指数バックオフ)の実装

import time
import random
from openai import OpenAI, RateLimitError

client = OpenAI()

def call_with_retry(messages, max_retries=5):
    for attempt in range(max_retries):
        try:
            response = client.chat.completions.create(
                model="gpt-4o-mini",
                messages=messages
            )
            return response
        except RateLimitError:
            if attempt == max_retries - 1:
                raise
            # 指数バックオフ: 1秒, 2秒, 4秒, 8秒... + ランダムなジッター
            wait_time = (2 ** attempt) + random.uniform(0, 1)
            print(f"Rate limit. Waiting {wait_time:.1f}s...")
            time.sleep(wait_time)

バッチ処理での対策

大量のテキストを処理する場合は、リクエストとリクエストの間にスリープを入れます。

import time

texts = ["テキスト1", "テキスト2", "テキスト3"]  # 大量のテキスト
results = []

for i, text in enumerate(texts):
    result = chat(text)
    results.append(result)
    # 60RPM制限の場合、1秒以上のインターバルを入れる
    if i < len(texts) - 1:
        time.sleep(1.1)

💡 Batch API の活用: リアルタイム性が不要なタスク(大量テキストの分類・翻訳など)は「Batch API」を使うと通常の50%引きの料金になります。24時間以内の完了が保証されます。


主要なAPIパラメータ

パラメータ範囲説明
temperature0.0〜2.0低いほど一貫性のある返答、高いほどランダム性が増す
max_tokens1〜モデル上限返答の最大トークン数。超えると途中で切れる
top_p0.0〜1.0確率上位p%のトークンのみ使用。temperatureとどちらか一方を使う
frequency_penalty-2.0〜2.0正の値で同じ単語の繰り返しを抑制
presence_penalty-2.0〜2.0正の値で新しいトピックへの言及を促進
streamtrue/falsetrueでストリーミング応答(文字が逐次表示される)

temperatureの使い分け

  • ◆0.0〜0.3: データ抽出・分類・翻訳など一貫性が重要なタスク
  • ◆0.4〜0.7: 要約・Q&A・コード生成などのバランス型
  • ◆0.8〜1.2: ブレインストーミング・創作・キャッチコピー生成

🏋️実践ワーク

以下のワークを実施してください。

  1. ◆APIキー取得と動作確認: OpenAIアカウントを作成し、APIキーを生成する。curlコマンドで最初のリクエストを送り、レスポンスのJSONを確認する
  2. ◆Pythonで基本コール: pip install openai後、基本的なAPIコールのコードを実行し、返答とトークン使用量を出力する
  3. ◆会話履歴の実装: 会話履歴を保持するチャット関数を実装し、「名前を覚えているか」で文脈が保持されていることを確認する
  4. ◆コスト試算: 自分が使おうとしているユースケースで1日に何トークン消費するか計算し、月額コストをGPT-4oとGPT-4o miniで比較する
  5. ◆リトライロジック実装: Exponential Backoffのサンプルコードを実装し、意図的にRateLimitErrorを再現して動作確認する
  6. ◆パラメータ実験: temperatureを0.0・0.5・1.0・1.5に変えて同じプロンプトを送り、返答の変化を比較する

📝まとめ

ChatGPT APIの基礎は「APIキーの安全な管理・curlとPythonでのリクエスト送信・トークンとコストの理解・レート制限への対応」の4つです。APIキーは絶対にGitにコミットせず環境変数で管理すること、まずGPT-4o miniで試してコストを最小化することが実践のポイントです。会話履歴の仕組みを理解すれば、マルチターンの対話アプリも作れます。temperatureなどのパラメータを理解してチューニングすれば、創作から分類まであらゆるタスクに最適化できます。レート制限はExponential Backoffで対処し、大量処理はBatch APIで50%コスト削減を目指しましょう。APIを使いこなすことで、ChatGPTをあらゆるサービスに組み込んで自分だけのAIツールが作れるようになります。

理解度チェック

3問

全問正解でこのレッスンが「完了」になり、コースの全レッスンを完了すると修了証が発行されます。解説つき・何度でも挑戦できます。

  1. Q1.APIで作ったチャットアプリが、前の発言を覚えていません。本文の説明に合う原因と対処はどれですか。

  2. Q2.チームでAPIを使うアプリを開発し、コードをGitHubで共有します。本文のAPIキー管理ルールに沿うものはどれですか。

  3. Q3.大量の問い合わせ文をAPIで自動分類する処理を作ります。本文のベストプラクティスに沿った進め方はどれですか。

すべての問題に答えると押せます

「ChatGPT完全マスター講座」全12レッスンを無料で修了しよう

  • ✓ 理解度チェックの採点と、合格レッスンの記録
  • ✓ 全レッスン合格で修了証を発行(URLでシェア・LinkedInに追加できます)
  • ✓ 全レッスンの解説動画と、続きから再開できる学習ダッシュボード
無料で受講をはじめる(1分)

完全無料・クレジットカード不要

関連するブログ記事

AI画像生成の完全ガイド|1枚30秒で作れる時代に知っておくべき著作権・商用利用の真実

AI画像生成の完全ガイド|1枚30秒で作れる時代に知っておくべき著作権・商用利用の真実

ChatGPTプロンプトの書き方完全ガイド|そのまま使える型と業務別例文30【2026年版】

ChatGPTプロンプトの書き方完全ガイド|そのまま使える型と業務別例文30【2026年版】

生成AIの独学ロードマップ完全版|初心者が3ヶ月で仕事に活かす勉強法【2026年】

生成AIの独学ロードマップ完全版|初心者が3ヶ月で仕事に活かす勉強法【2026年】

関連レッスン(他のコースから)

AIビジネス活用実践講座

ChatGPT Plus/Teamプランの戦略的活用

ChatGPTには無料プランからEnterpriseプランまで複数のプランがあり、組織のサイズ・情報機密性・活用目的によって最適なプランは異

25分本文は無料で閲覧可

AIエージェント開発・自動化上級講座

LLM APIの実践活用 - OpenAI・Claude・Gemini

AIエージェントを構築するには、LLMのAPIを直接操作するスキルが不可欠です。

30分本文は無料で閲覧可

AIエージェント開発・自動化上級講座

ツール連携とAPI統合

AIエージェントの真価は、外部ツールやAPIと連携することで発揮されます。

25分本文は無料で閲覧可

MEOプロフェッショナル・多店舗運用上級講座

GBP APIによる管理の自動化

Google Business Profile APIを活用することで、多店舗のGBP管理を大幅に自動化できます。

30分本文は無料で閲覧可

AI画像生成マスター - Midjourney & Stable Diffusion

スタイル・アスペクト比・品質パラメータの使いこなし

Midjourneyをはじめとした画像生成AIは、プロンプトの文章だけでなく「パラメータ」と呼ばれる設定値によって出力結果を細かくコントロー

25分本文は無料で閲覧可

AI画像生成マスター - Midjourney & Stable Diffusion

AI画像生成の世界 - ツール比較と選び方

2022年以降、AI画像生成技術は爆発的に進化し、テキストを入力するだけでプロ品質のビジュアルを数秒で生成できる時代が到来しました。

25分無料公開

← 前のレッスン
次のレッスン →

レッスン一覧

各レッスンの理解度チェックに合格すると ✓ がつきます

1ChatGPTとは?AI革命の全貌2アカウント作成と基本操作マスター3プロンプトエンジニアリングの基礎4高度なプロンプトテクニック5ビジネス文書作成の自動化6マーケティングコピーの生成術7データ分析・レポート作成への活用8プログラミングアシスタントとしての活用9ChatGPT APIの基礎と活用10GPTsで自分専用AIを作る11業務自動化ワークフローの構築12AI時代のキャリア戦略と倫理