前提と注意事項
以下が前提と注意事項になります。
- ChatGPT のアカウント(OpenAI のアカウント)登録が完了していること。
- クレジットカード情報の登録と支払いが必要になります。
- 動作確認に curl コマンドを使用します。
ChatGPT を API 経由で使用するには、事前にクレジットの購入が必要になります。なお、API は ChatGPT Plus プランなどの有料プランとは別物になるため、ChatGPT Plus などに加入していても API を使用するためにはクレジットの購入が必要になります。
本記事では、OpenAI の API と ChatGPT の API を同義として扱っています。
この記事のゴール
この記事では、ChatGPT の API を使うために必要なクレジットの購入と API キーの生成を行い、curl
コマンドを使って ChatGPT を API 経由で質問を投げて回答を得るところまでをゴールとします。
ChatGPT API 使用のためのクレジットを購入する
ブラウザで ChatGPT のアカウントでログインすると以下のようにChatGPT
とAPI
の選択画面が表示されるのでAPI
をクリックします。
![OpenAIのAPIを選択](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fchoose-api.png&w=3840&q=75)
以下のように、Settings
メニューの中にあるBilling
をクリックして請求情報ページにアクセスします。以下の画像を見て分かる通り、Free trial
と書かれており現在は無料プランであることを確認できます。ここで、Add payment details
ボタンをクリックします。
![請求情報ページ](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fbilling-settings.png&w=3840&q=75)
Add payment details
ボタンをクリックすると、以下のようにIndividual
(個人)かCompany
(法人)か確認されるので、ここではIndividual
を選択します。
![IndividualかCompanyかの確認](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Foption-billing-type.png&w=3840&q=75)
以下のようにクレジットカード情報の入力フォームが表示されます。クレジットカード情報を入力してContinue
ボタンをクリックします。
![クレジットカード情報の入力フォーム](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fadd-payment-details.png&w=3840&q=75)
以下のように、最初のチャージ分の購入画面が表示されます。
最小は 5 ドルからなので、ここでは5
を入力してContinue
をクリックします。
なお、Would you like to set up automatic recharge?
はオンにすると、残高がなくなった際に自動的にチャージされるようになります。ここではオフのままにしておきます。
![最初のチャージ分の購入画面](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fconfigure-payment.png&w=3840&q=75)
以下のように購入の確認画面が表示されるので、問題なければConfirm payment
ボタンをクリックします。
![購入の確認画面](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fconfirm-payment.jpg&w=3840&q=75)
Confirm payment
ボタンをクリックすると購入処理が実行され、完了すると以下のように現在のプランがPay as you go
(従量課金)に更新され、Credit balance
も💲5.00
に更新されます。
![現在のプランがPay as you goに更新される](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fpay-as-you-go-plan.png&w=3840&q=75)
以上で ChatGPT の API 用のクレジット購入が完了しました。
ChatGPT の API キーを作成する
以下のように左サイドメニューにあるAPI Keys
をクリックします。
![APIキーのメニュー](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fapi-keys-menu.png&w=3840&q=75)
以下のようにAPI Kyes
のページが表示されるので、Create new secret key
ボタンをクリックします。
![APIキーの作成](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fcreate-new-secret-key.png&w=3840&q=75)
以下のように API キーの名前入力ダイアログが表示されるので、適当な名前を入力してCreate new secret
ボタンをクリックします。ここではMy Test Key
としました。
![APIキーの名前入力ダイアログ](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fcreate-your-secret-key.png&w=3840&q=75)
Create new secret
ボタンをクリックすると以下のように API キーが表示されるので、コピーしておきます。この API キーは再度表示することができないため、最新の API キーを確認する場合は、再度作成する必要があります。
![作成したAPIキー](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fcreated-api-key.jpg&w=3840&q=75)
以上で API キーの作成が完了です。
curl コマンドで動作確認する
公式ドキュメントにあるように、試しにcurl
コマンドを使って ChatGPT に質問を投げてみます。以下のsk-***********************
部分は自分の API キーに置き換えてください。
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-***********************" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "こんにちは。これはテストです。"}],
"temperature": 0.7
}'
上記のcurl
コマンドを実行してから 2、3 秒ほどで以下のような応答が返ってきました。
{
"id": "chatcmpl-sk28dj08g08j0w48jt0840jsdjfk",
"object": "chat.completion",
"created": 1705280962,
"model": "gpt-3.5-turbo-0613",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "こんにちは!このテキストはテストですね。どのようなテストなのでしょうか?お手伝いできることがあれば教えてください。"
},
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 15,
"completion_tokens": 49,
"total_tokens": 64
},
"system_fingerprint": null
}
content
部分が ChatGPT によって生成された回答です。問題なく API が動作していることが確認できました。また、prompt_tokens
は質問で消費したトークン数、completion_tokens
は回答で消費したトークン数、total_tokens
はこれらの合計のトークン数です。
トークン数の料金は使用するモデルによって異なります。詳しくは以下の公式ドキュメントを参照してください。
insufficient_quota エラーが出る場合
以下のようなinsufficient_quota
エラーが出る場合は ChatGPT の API 用のクレジット購入が完了しているか確認してみてください。
{
"error": {
"message": "You have insufficient quota to complete this request. Please purchase more API credits at https://beta.openai.com/usage.",
"type": "insufficient_quota",
"param": null,
"code": "insufficient_quota"
}
}
また、usage
ページでCredit Grants
が残っているか確認してみてください。残っていない場合は追加のクレジット購入が必要です。
![使用量ページ](/_next/image?url=%2Fimages%2Fsetup-and-trying-chatgpt-api%2Fusage-page.png&w=3840&q=75)
invalid_request_error エラーが出る場合
以下のようなinvalid_request_error
が出る場合は、API キーが間違いないか確認してください。
{
"error": {
"message": "Incorrect API key provided: sk-si2m**************************************sk28. You can find your API key at https://platform.openai.com/account/api-keys.",
"type": "invalid_request_error",
"param": null,
"code": "invalid_api_key"
}
}
まとめ
ChatGPT の API を使用するために必要なクレジットの購入と API キーの生成手順を解説しました。この記事ではcurl
コマンドを使って質問を投げたのみですが、以下の公式ドキュメントには Python と Node.js を使った API の使用例が載っていますので、参考にしてみてください。
Introduction
You can interact with the API through HTTP requests from any language, via our official Python bindings, our official Node.js library, or a community-maintained library.
platform.openai.com