ChatGPT APIの使い方 — Pythonで始めるAIアプリ開発入門【2026年版】
ChatGPT APIをPythonで使う方法を初心者向けに解説。APIキーの取得から実装例、料金の節約方法まで、AIアプリ開発の第一歩を徹底ガイドします。
ChatGPT APIとは — 何ができるのか
ChatGPT APIは、OpenAIが提供する大規模言語モデル(LLM)をプログラムから呼び出すためのインターフェースです。ブラウザ上のChatGPTと同じ言語能力を、自分のアプリケーションに組み込むことができます。
具体的には、以下のようなことが実現できます。
- 対話型チャットボット — カスタマーサポートや社内FAQの自動応答
- 文章生成・要約 — ブログ記事の下書き、長文ドキュメントの要約
- コード生成・レビュー — 自然言語の指示からコードを自動生成
- 翻訳・校正 — 多言語翻訳や文章のトーン調整
- データ抽出・分類 — 非構造化テキストからの情報抽出
ブラウザ版ChatGPTとの最大の違いは「自動化」と「カスタマイズ」です。APIを使えば、自社のデータベースやWebサービスと連携し、独自のAIアプリケーションを構築できます。
APIキーの取得方法
手順1: OpenAIアカウントの作成
OpenAI Platform にアクセスし、アカウントを作成します。
手順2: 支払い情報の設定
ダッシュボードの Settings > Billing から、クレジットカードを登録します。開発初期は月額 $10〜$20 程度に利用上限を設定しておくと安心です。
手順3: APIキーの発行
API Keys ページから「Create new secret key」をクリック。表示されたキーを必ず安全な場所に保存してください。
重要: APIキーは一度しか表示されません。GitHubなどの公開リポジトリにコミットしないよう注意してください。
Pythonでの基本的な使い方
環境構築
pip install openai
APIキーは環境変数に設定するのが安全です。
# .envファイルに記述(.gitignoreに追加すること)
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
最初のAPI呼び出し
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "あなたは親切なアシスタントです。"},
{"role": "user", "content": "Pythonでリストを逆順にする方法を教えてください。"}
]
)
print(response.choices[0].message.content)
messagesパラメータの構造
| role | 説明 | 用途 |
|---|---|---|
system | AIの振る舞いを定義する | キャラクター設定、応答ルールの指定 |
user | ユーザーからの入力 | 質問や指示 |
assistant | AIの応答 | 過去の応答を含めることで文脈を維持 |
よく使うパラメータの解説
model
| モデル名 | 特徴 | 推奨用途 |
|---|---|---|
gpt-4o | 高性能・マルチモーダル対応 | 一般的な用途全般 |
gpt-4o-mini | 軽量・低コスト | 大量処理、コスト重視 |
o1 | 推論特化 | 複雑なロジック、コード生成 |
temperature
出力のランダム性を制御します(0.0〜2.0)。
- 0.0 — 決定論的。分類やデータ抽出に最適
- 0.7 — バランスの取れた創造性
- 1.5以上 — クリエイティブライティング向き
max_tokens
生成するトークンの最大数を制限します。1トークンは日本語で約0.5〜1文字に相当します。
response_format
{"type": "json_object"} を指定するとJSON形式で出力。後続処理との連携に便利です。
実践例3つ
実践例1: シンプルなチャットボット
from openai import OpenAI
client = OpenAI()
def chatbot():
messages = [
{"role": "system", "content": "あなたはフレンドリーなAIアシスタントです。簡潔に回答してください。"}
]
print("チャットボットを起動しました。'quit'で終了します。")
while True:
user_input = input("\nあなた: ")
if user_input.lower() == "quit":
break
messages.append({"role": "user", "content": user_input})
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=messages,
temperature=0.7,
max_tokens=500
)
assistant_message = response.choices[0].message.content
messages.append({"role": "assistant", "content": assistant_message})
print(f"\nAI: {assistant_message}")
if __name__ == "__main__":
chatbot()
実践例2: 文章要約ツール
def summarize(text: str, max_length: int = 200) -> str:
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": f"以下のテキストを{max_length}文字以内で要約してください。"},
{"role": "user", "content": text}
],
temperature=0.3
)
return response.choices[0].message.content
実践例3: コード生成アシスタント
def generate_code(description: str) -> dict:
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "Pythonコード生成の専門家です。JSON形式で回答してください。"},
{"role": "user", "content": description}
],
temperature=0.0,
response_format={"type": "json_object"}
)
import json
return json.loads(response.choices[0].message.content)
料金体系と節約のコツ
料金の仕組み
| モデル | 入力(1Mトークン) | 出力(1Mトークン) |
|---|---|---|
| gpt-4o | $2.50 | $10.00 |
| gpt-4o-mini | $0.15 | $0.60 |
| o1 | $15.00 | $60.00 |
料金は2026年3月時点の情報です。最新の料金は各公式サイトでご確認ください。(出典: OpenAI公式サイト, 2026年3月時点)
節約のための7つのコツ
- 適切なモデルを選ぶ — 簡単なタスクには
gpt-4o-mini - systemプロンプトを簡潔に — 冗長な指示はトークンの無駄
- max_tokensを設定する — 必要以上の生成を防止
- 会話履歴を管理する — 古いメッセージを要約・削除
- キャッシュを活用する — 同じ質問への回答を再利用
- Batch APIを使う — 非リアルタイム処理で50%割引
- 利用上限を設定する — 予算超過を防止
FAQ
Q: 無料で使えますか?
基本的には有料サービスです。gpt-4o-miniであれば月額数百円程度に収まることが多いです。
Q: レート制限に引っかかったら?
リトライ処理を入れるか、Tier(利用枠)を上げるか、Batch APIを使いましょう。
Q: 日本語の処理はうまくいきますか?
はい。ただし日本語は英語に比べてトークン消費量が1.5〜2倍になる点に留意してください。
Q: ストリーミング出力はできますか?
stream=True パラメータで、トークンをリアルタイムに受け取れます。
stream = client.chat.completions.create(
model="gpt-4o",
messages=messages,
stream=True
)
for chunk in stream:
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)
まとめ
ChatGPT APIは、わずか数行のPythonコードでAIの能力を自分のアプリケーションに組み込める強力なツールです。
まずはgpt-4o-miniで小さなプロジェクトから始めて、APIの挙動を掴んでいくことをおすすめします。