2024-01-15(月) 15:00

🊟 ChatGPT APIをセットアップし動䜜確認する

OpenAIChatGPT
ChatGPTのAPIを䜿甚するために必芁なクレゞットの賌入ずAPIキヌ生成手順を解説したす。

目次

前提ず泚意事項

以䞋が前提ず泚意事項になりたす。

  • 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を遞択

以䞋のように、Settingsメニュヌの䞭にあるBillingをクリックしお請求情報ペヌゞにアクセスしたす。以䞋の画像を芋お分かる通り、Free trialず曞かれおおり珟圚は無料プランであるこずを確認できたす。ここで、Add payment detailsボタンをクリックしたす。

請求情報ペヌゞ

Add payment detailsボタンをクリックするず、以䞋のようにIndividual個人かCompany法人か確認されるので、ここではIndividualを遞択したす。

IndividualかCompanyかの確認

以䞋のようにクレゞットカヌド情報の入力フォヌムが衚瀺されたす。クレゞットカヌド情報を入力しおContinueボタンをクリックしたす。

クレゞットカヌド情報の入力フォヌム

以䞋のように、最初のチャヌゞ分の賌入画面が衚瀺されたす。 最小は 5 ドルからなので、ここでは5を入力しおContinueをクリックしたす。 なお、Would you like to set up automatic recharge?はオンにするず、残高がなくなった際に自動的にチャヌゞされるようになりたす。ここではオフのたたにしおおきたす。

最初のチャヌゞ分の賌入画面

以䞋のように賌入の確認画面が衚瀺されるので、問題なければConfirm paymentボタンをクリックしたす。

賌入の確認画面

Confirm paymentボタンをクリックするず賌入凊理が実行され、完了するず以䞋のように珟圚のプランがPay as you go埓量課金に曎新され、Credit balanceも💲5.00に曎新されたす。

珟圚のプランがPay as you goに曎新される

以䞊で ChatGPT の API 甚のクレゞット賌入が完了したした。

ChatGPT の API キヌを䜜成する

以䞋のように巊サむドメニュヌにあるAPI Keysをクリックしたす。

APIキヌのメニュヌ

以䞋のようにAPI Kyesのペヌゞが衚瀺されるので、Create new secret keyボタンをクリックしたす。

APIキヌの䜜成

以䞋のように API キヌの名前入力ダむアログが衚瀺されるので、適圓な名前を入力しおCreate new secretボタンをクリックしたす。ここではMy Test Keyずしたした。

APIキヌの名前入力ダむアログ

Create new secretボタンをクリックするず以䞋のように API キヌが衚瀺されるので、コピヌしおおきたす。この API キヌは再床衚瀺するこずができないため、最新の API キヌを確認する堎合は、再床䜜成する必芁がありたす。

䜜成したAPIキヌ

以䞊で API キヌの䜜成が完了です。

curl コマンドで動䜜確認する

公匏ドキュメントにあるように、詊しにcurlコマンドを䜿っお ChatGPT に質問を投げおみたす。以䞋のsk-***********************郚分は自分の API キヌに眮き換えおください。

curlコマンドで質問を投げる
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 秒ほどで以䞋のような応答が返っおきたした。

curlコマンドの応答
{
  "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はこれらの合蚈のトヌクン数です。

トヌクン数の料金は䜿甚するモデルによっお異なりたす。詳しくは以䞋の公匏ドキュメントを参照しおください。

Pricing

Simple and flexible. Only pay for what you use.

platform.openai.com

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が残っおいるか確認しおみおください。残っおいない堎合は远加のクレゞット賌入が必芁です。

䜿甚量ペヌゞ

invalid_request_error ゚ラヌが出る堎合

以䞋のようなinvalid_request_errorが出る堎合は、API キヌが間違いないか確認しおください。

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