AI技術が進化する中で、開発者がAI機能を手軽に利用できるAPIとして OpenAI APIがあります。
本記事では、OpenAI APIの概要と使い方までを解説します。

OpenAI APIの使い方を紹介します
- OpenAI APIとは
- OpenAI APIの始め方
- OpenAI APIの使い方
OpenAI APIとは
OpenAI APIは、OpenAIが提供するAIモデルにアクセスするためのAPIです。
APIを利用することで、高度なAI機能を簡単にアプリケーションやシステムに組み込むことができます。
主に以下のモデルを利用することができます。
- GPT: 自然言語生成、プログラミング
- DALL·E: 画像生成
- Whisper: 音声認識
本記事では、主に自然言語処理について紹介します。
APIとは
API(Application Programming Interface)は、ソフトウェアやアプリケーション同士が連携するためのインターフェースです。
APIは、異なるアプリケーションやサービスが連携するための”ルール”と”手段”を提供する仕組みです。
OpenAI APIでできること
OpenAI APIでできることを紹介します。
- 文章生成: カスタムチャットボットや文章自動生成。
- 画像生成: テキストから画像を生成。
- プログラミング: 自動コード補完やデバッグ。
- 言語翻訳: 自然な翻訳機能。
- 音声認識: 音声からテキストへの変換。
OpenAI APIの始め方
OpenAIのAPIの始め方を紹介します。
OpenAIアカウントの作成
OpenAI公式サイトにアクセスし、アカウントを作成します。
URL
https://platform.openai.com/
公式サイトにログイン
作成したアカウントでログインします。
URL
https://platform.openai.com/
ブラウザ画面


メールアドレスを入力
メールアドレスを入力します。
ブラウザ画面


パスワードを入力
パスワードを入力します。
ブラウザ画面


プラットフォーム画面に移動
プラットフォーム画面に移動します。
ブラウザ画面


APIキー設定画面を検索
APIキー設定画面を検索します。
ブラウザ画面


APIキー設定画面に遷移
APIキー設定画面に遷移します。
ブラウザ画面


APIキー生成を開始
APIキー生成を開始します。
ブラウザ画面


APIキーを設定
APIキーを設定します。
ブラウザ画面


APIキーをコピー
APIキーをコピーします。
ブラウザ画面


APIキーを確認
APIキーを確認します。
ブラウザ画面


支払い定画面を検索
支払い設定画面を検索します。
ブラウザ画面


支払い設定画面に遷移
支払い設定画面に遷移します。
ブラウザ画面


支払い情報入力画面に遷移
支払い情報入力画面に遷移します。
ブラウザ画面


支払い者を選択
支払い者を選択します。
ブラウザ画面


クレジットカード情報を入力
クレジットカード情報を入力します。
ブラウザ画面


クレジットの設定
クレジットの設定を行います。
ブラウザ画面


クレジットの購入
クレジットを購入します。
ブラウザ画面


クレジットを確認
クレジットを確認します。
ブラウザ画面


支払い上限金額の設定画面に遷移
支払い上限金額の設定画面に遷移します。
ブラウザ画面


支払い上限金額を設定
支払い上限金額を設定します。
ブラウザ画面


OpenAI APIの使い方
OpenAIのAPIの使い方を紹介します。
OpenAIのAPI仕様
OpenAI APIの仕様について紹介します。
エンドポイント
エンドポイントは複数ありますが、利用するモデルによって使い分けが必要です。
エンドポイント | 概要 |
---|---|
/v1/chat/completions | チャット形式の生成を行います。会話文脈を保持して自然な対話を生成。2023年以降のモデルで利用可能。 |
/v1/completions | 標準的なテキスト生成を実行。2022年以前のモデルで利用可能 |
モデル
OpenAI APIで利用できる主な学習モデルを紹介します。
モデル | 概要 |
---|---|
gpt-4o | 高性能でコンテキスト理解が優れたモデル。マルチモーダルで音声/画像/動画の処理が可能 |
gpt-4o-mini | gpt-4oを抵コスト/高速化したモデル |
o1-preview | 推論能力が優れたモデル。 |
o1-mini | o1-previewを低コスト/高速化したモデル |
gpt-4 | 高性能でコンテキスト理解が優れたモデル |
gpt-4-turbo | gpt-4を低コスト/高速化したモデル |
gpt-3.5-turbo | 一般的なタスクに最適でコスト効率が高いモデル |
text-davinci-003 | 創造性が高く、高品質なテキスト生成に対応したモデル |
パラメータ
OpenAI APIで利用できる主なAPIパラメータを紹介します。
パラメータ | 概要 |
---|---|
model | 利用する学習モデルを設定する |
prompt | 指示したいプロンプトを指定する |
messages | 会話のやりとりリストをメッセージリストに設定する |
role | 会話の役割を設定する |
content | 会話の内容を設定する |
max_tokens | 最大トークン数の設定 |
role | 概要 |
---|---|
system | 初期設定や会話ルールを設定する |
user | ユーザーのリクエスト(質問/要求/指示)を設定する |
assistant | 学習モデルが回答した内容を設定する |
料金
OpenAI APIの料金は従量課金です。
ChatGPTを有料で利用している方でも、別料金で従量課金になります。
発生コストは、モデルとトークン数によって異なります。
高性能のモデルは高く、低性能/高速のモデルは安い傾向があります。
入力トークンや出力トークンのトークン数が多いほど、発生コストが高くなります。
OpenAI APIの料金を節約するためには、トークン数を少なくして、必要に応じたモデルを利用すると良いです。
curlコマンドでリクエストを送信
本記事では、cURLのコマンドでリクエストを送信する手順を紹介します。
cURLを用いてリクエストを送信します。
gpt-4o-miniモデルを使ってテキスト生成を行います。
コマンドライン
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-4o-mini",
"messages": [ {"role": "user", "content": "AIとは何か教えてください。" } ]
}'
コマンド実行例
$ curl https://api.openai.com/v1/chat/completions \
> -H "Content-Type: application/json" \
> -H "Authorization: Bearer $OPENAI_API_KEY " \
> -d '{
> "model": "gpt-4o-mini",
> "messages": [ {"role": "user", "content": "AIとは何か教えてください。" } ]> }'
{
"id": "chatcmpl-*****************************",
"object": "chat.completion",
"created": *********0,
"model": "gpt-4o-mini-2024-07-18",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "AI(人工知能)とは、人間の知的な作業を模倣することを目的としたコンピュータープログラムやシステムのことを指します。AIはデータを分析し、学習し、推論を行い、問題を解決する能力を持っています。具体的には、以下のような分野が含まれます。\n\n1. **機械学習(Machine Learning)**: AIの一部で、データからパターンを学習し、新たなデータに対して予測や判断を行う技術です。教師あり学習、教師なし学習、強化学習などがあります。\n\n2. **自然言語処理(NLP)**: コンピュータが人間の言語を理解し、生成する技術です。翻訳、感情分析、チャットボットなどに利用されます。\n\n3. **画像認識**: 画像や動画の中から特定の情報を抽出する技術です。顔認識や物体認識などが含まれます。\n\n4. **ロボティクス**: AIを利用して自立的に動作するロボットの開発も含まれます。自動運転車や産業用ロボットなどが例です。\n\nAIは医療、金融、製造業、エンターテインメントなど、さまざまな分野で活用されています。その目的は、効率性の向上や人間の作業負担の軽減、そして新たな価値の創造です。",
"refusal": null
},
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 15,
"completion_tokens": 357,
"total_tokens": 372,
"prompt_tokens_details": {
"cached_tokens": 0,
"audio_tokens": 0
},
"completion_tokens_details": {
"reasoning_tokens": 0,
"audio_tokens": 0,
"accepted_prediction_tokens": 0,
"rejected_prediction_tokens": 0
}
},
"system_fingerprint": "fp_**********"
}
Pythonでリクエストを送信
PythonでもOpenAI APIを利用できます。
ソースコード
from openai import OpenAI
# APIキーを設定
API_KEY = "$OPENAI_API_KEY"
# モデルを設定
MODEL = "gpt-4o-mini"
client = OpenAI(api_key = API_KEY)
response = client.chat.completions.create(
model = MODEL, # モデルを選択
messages = [
{"role": "system", "content": "あなたは最高のアシスタントです。"},
{"role": "user", "content": "AIとは何か教えてください。"}
]
)
print(response.choices[0].message.content)
コマンド実行結果
$ python3 -B python-openai.py
AI(人工知能)とは、コンピューターやソフトウェアが人間のように知的な行動を模倣する技術やシステムのことを指します。具体的には、AIはデータを分析し、パターンを認識し、学習することによって判断を行い、意思決定をする能力を備えています。
AIには大きく分けて以下の2つのタイプがあります:
1. **狭義のAI(Narrow AI)**:特定のタスクを実行するために設計されたAI。たとえば、画像認識、音声認識、自然言語処理(NLP)のアプリケーションなどが含まれます。
2. **汎用AI(General AI)**:人間のように幅広い知能を持ち、さまざまなタスクをこなす能力を持つAI。現在の技術ではまだ実現されていません。
AIは、機械学習(ML)や深層学習(DL)などの技術を用いることで、データから学習し、パフォーマンスを向上させることができます。また、AIは医療、金融、製造業、交通などさまざまな分野で応用され、効率化や精度向上、コスト削減に寄与しています。
まとめ
OpenAI APIは、生成AIを簡単に利用するためのAPIです。
- APIキーを生成する必要がある
- リクエストを送信して生成AIを利用する
OpenAI APIを利用することで、開発しているアプリケーションに、OpenAIの生成AI機能を組み込むことができます。
生成AIは、ヒトの活動範囲を飛躍的に拡張できる有用なツールです。
開発したアプリケーションやツールに生成AIの機能を追加して、機能を拡張していくと良いと思います。