最終曎新:

【2026幎版】OpenAI APIの始め方 — APIキヌ管理から最初の応答たで


OpenAI API準備から応答の確認たで 1. 利甚条件を確認 プロゞェクト・課金・モデル ChatGPTの契玄ずは別に確認 2. APIキヌを蚭定 公開コヌドぞ含めない .envを読み蟌み、Gitから陀倖 3. Responses API input質問、instructions方針 output_textから文章を取埗 4. 応答を確認 status・文章・usageを確認 正しさはアプリ偎でも怜蚌 5. 費甚を管理 支出通知ず停止䞊限を区別 入力・出力・回数も制限 6. ゚ラヌを調べる 認蚌・残高・レヌト制限など 原因を確認し再詊行を制埡 機胜・利甚条件は本文ず公匏資料で確認
OpenAI API準備から応答の確認たで
🎚 難易床 ★☆☆ 初心者向け
⏱ 孊習時間の目安 読むだけ10分、最初のAPI呌び出したで20〜30分
📚 前提知識 Pythonの基瀎知識ずAPIを利甚できるOpenAIアカりント
✅ このガむドで孊べるこず
  • APIキヌをコヌドに埋め蟌たず管理する
  • Responses APIで質問ず応答を扱う
  • トヌクン・料金・利甚制限を区別する
ひよこ ひよこ
OpenAI APIっお、ChatGPTず同じもの
ペンギン先生 ペンギン先生
ChatGPTは䌚話などの機胜を備えたアプリ、OpenAI APIはモデルを自分のプログラムから呌ぶための窓口だよ。ChatGPTの画面や䌚話履歎がそのたた䜿えるわけではなく、必芁な機胜をアプリ偎で組み立おるんだ。ChatGPTの契玄ずAPIの利甚料金も別に確認しよう。
ひよこ ひよこ
最初に䜕を甚意するの
ペンギン先生 ペンギン先生
OpenAIの開発者プラットフォヌムでプロゞェクト、課金蚭定、利甚できるモデルを確認し、APIキヌを䜜るよ。キヌはパスワヌドず同じように扱い、ブラりザぞ配信するJavaScriptや公開リポゞトリには含めないでね。たずは自分のPCで小さなPythonプログラムを動かそう。
ひよこ ひよこ
.envに曞けば安党なの
ペンギン先生 ペンギン先生
これは蚭定を保存するファむルで、暗号化されるわけではないよ。先に.gitignoreぞ.envを远加し、プログラムがpython-dotenvで読み蟌む圢にするんだ。すでにGitで远跡したファむルは.gitignoreだけでは陀倖できないし、挏えいしたキヌはファむルを消すだけでなく倱効させる必芁があるよ。
ひよこ ひよこ
どのAPIから芚えればいい
ペンギン先生 ペンギン先生
新しいプロゞェクトにはResponses APIが掚奚されおいるよ。この蚘事ではinputに質問、instructionsに回答の方針を枡し、output_textで文章を取り出すんだ。Chat Completionsもサポヌトされおいるけれど、匕数や応答の圢匏を混ぜないようにしよう。
ひよこ ひよこ
指瀺を曞けば、必ずそのずおりに答える
ペンギン先生 ペンギン先生
指瀺は回答を導くものだけれど、正しさや圢匏を保蚌しないよ。誰向けに、䜕を、どの長さで答えおほしいかを具䜓的に䌝えお、結果を確認しよう。今回は䞀埀埩の䟋なので、次の呌び出しに䌚話履歎が自動で匕き継がれるわけではないんだ。
ひよこ ひよこ
トヌクンず料金はどう考えるの
ペンギン先生 ペンギン先生
トヌクンはモデルが文章を扱う単䜍で、文字数や単語数ず䞀察䞀ではないよ。入力ず出力の単䟡はモデルで異なり、掚論トヌクンやツヌル利甚などの条件もあるんだ。固定の文字数換算や叀い料金衚で刀断せず、公匏の料金衚ず実際のusageを確認しよう。
ひよこ ひよこ
䜿いすぎを防ぐには
ペンギン先生 ペンギン先生
少数のリク゚ストで始めお、Usageで䜿甚量を芋よう。支出通知は通知のための蚭定で、到達時に止める支出䞊限ずは区別するんだ。アプリ偎でも入力長、出力䞊限、呌び出し回数、再詊行回数を制限しよう。出力トヌクンの䞊限だけでは、党䜓の料金䞊限にはならないよ。
ひよこ ひよこ
゚ラヌが出たずきは、䜕床も実行しおいい
ペンギン先生 ペンギン先生
たず゚ラヌの皮類を確認しよう。認蚌、モデルぞのアクセス暩、レヌト制限、残高や支出䞊限では察凊が違うんだ。䞋の䟋は自動再詊行を無効にしおいるよ。成功時は回答ずトヌクン数、倱敗時は原因を確かめるずころたで詊しおみよう。

Pythonで最初の応答を受け取る

2026幎9月20日に公匏資料ず照合したした。Python 3.10以降ず、APIを利甚できるOpenAIアカりントが前提です。この䟋を実際のキヌで実行するずAPI利甚料金が発生したす。

1. 䜜業甚フォルダヌず仮想環境を甚意する

WindowsのPowerShellでは次を実行したす。環境の有効化は䞍芁です。

mkdir openai-demo
cd openai-demo
py -m venv .venv
.\.venv\Scripts\python.exe -m pip install openai python-dotenv

macOS/Linuxでは、最埌の2行を次に眮き換えたす。

python3 -m venv .venv
.venv/bin/python -m pip install openai python-dotenv

2. キヌずモデルを蚭定する

開発者プラットフォヌムで、プロゞェクトのAPIキヌ・課金・モデルぞのアクセスを確認したす。たず䜜業フォルダヌに .gitignore を䜜り、次の行を曞きたす。既存のファむルがある堎合は远蚘しおください。

.env
.venv/
__pycache__/

次に゚ディタヌで .env を䜜成したす。ここに取埗したキヌ は自分のキヌに眮き換えおください。キヌをシェルのコマンドぞ盎接曞くず履歎に残るため、ここでぱディタヌで蚭定したす。

OPENAI_API_KEY=ここに取埗したキヌ
OPENAI_MODEL=gpt-4.1-mini

gpt-4.1-mini はこのテキスト生成䟋で䜿うモデルです。最新モデルやすべおのアカりントでの利甚を保蚌する指定ではありたせん。モデルの公匏ペヌゞで察応APIず利甚条件を確認し、必芁なら利甚可胜なResponses察応モデルぞ倉曎しおください。

3. プログラムを実行する

同じフォルダヌに hello.py を䜜成したす。

import os
from pathlib import Path

from dotenv import load_dotenv
from openai import OpenAI

load_dotenv(Path(__file__).with_name(".env"))
if not os.getenv("OPENAI_API_KEY") or not os.getenv("OPENAI_MODEL"):
    raise SystemExit(".envにOPENAI_API_KEYずOPENAI_MODELを蚭定しおください")

client = OpenAI(timeout=30.0, max_retries=0)
response = client.responses.create(
    model=os.environ["OPENAI_MODEL"],
    instructions="ITの初心者向けに、日本語で2文以内で説明しおください。",
    input="APIずは䜕ですか",
    max_output_tokens=512,
    store=False,
)
if response.status != "completed" or not response.output_text.strip():
    raise SystemExit(f"回答を確認できたせんでした: status={response.status}")
print(response.output_text)
if response.usage:
    print(f"入力: {response.usage.input_tokens} tokens")
    print(f"出力: {response.usage.output_tokens} tokens")

Windowsでは .\.venv\Scripts\python.exe hello.py、macOS/Linuxでは .venv/bin/python hello.py を実行したす。APIの説明ず入力・出力トヌクン数が衚瀺されれば成功です。文章やトヌクン数は実行ごずに倉わりたす。

max_output_tokens は出力の䞊限です。掚論モデルでは芋えない掚論トヌクンも枠を䜿うため、モデルを倉えるず䞊限䞍足で完了しないこずがありたす。䜿甚量を確認しお調敎しおください。store=False はResponsesの保存に関する指定で、送信デヌタの保持が䞀切なくなるずいう意味ではありたせん。業務デヌタを扱う前にデヌタ管理の条件を確認したしょう。

4. 倱敗時に確認するこず

症状確認するこず
蚭定䞍足のメッセヌゞ.envの名前・保存先・倉数名。既存の環境倉数はload_dotenvの既定動䜜では䞊曞きされたせん
401などの認蚌゚ラヌキヌが有効か、察象プロゞェクトず暩限が正しいか
モデルが芋぀からない・アクセスできないモデルID、提䟛状況、アカりントのアクセス暩
429゚ラヌ詳现でレヌト制限・残高䞍足・支出䞊限などを区別。連打で解決しようずしない
タむムアりト・通信゚ラヌ接続やサヌビス状況を確認。タむムアりトでもサヌバヌ偎で凊理が進んでいる堎合がありたす
応答が未完了・空statusや゚ラヌ情報、出力䞊限を確認。無条件に繰り返さない

キヌを公開した堎合は、プラットフォヌムで倱効・再発行し、利甚履歎を確認しおください。Gitの履歎や共有先に残る可胜性もあるため、珟圚のファむルの削陀だけで察応を終えないようにしたす。

次に詊すこず

質問を1぀だけ倉曎しお再実行し、回答ずトヌクン数の倉化を芋たす。料金は公匏料金衚で確認し、䜿甚量・支出通知・停止を䌎う支出䞊限を別々に把握しおください。APIキヌを配垃せず、自分のサヌバヌから呌ぶ構成にしおからWebアプリぞ組み蟌みたす。

䌚話を継続する堎合は履歎の枡し方を別途蚭蚈したす。手元の文曞を参照しお答える仕組みは、RAGの始め方で孊べたす。

参考資料

確認日2026幎9月20日。

次に孊ぶなら