ChatGPTは、Webアプリケーションとしてだけでなく、APIとしても利用することができます。アプリケーション間の連携を可能にするもので、自社システムなどに導入することも可能です。
ChatGPT APIは知っているものの、
・ChatGPT APIの活用方法を悩んでいる…。
・実際に使うにはどうすればいいのかわかっていない…。
と悩まれている方も多いのではないでしょうか。そこでこの記事では、
・ChatGPT APIの利用料金やできること
・メリットデメリットを含めた開発初心者向けの情報
・ 実際にChatGPT APIを使用してチャットボットを開発する方法
についてわかりやすく解説します。
公開日:2024年2月2日
専門領域:ソフトウェアエンジニア
しま (大嶋勇樹)
IT企業からフリーランスエンジニアを経て会社を設立。現在はエンジニアのスキルアップをテーマに、勉強会の開催や教材作成の活動を実施。オンラインコースUdemyではベストセラー講座多数。AWSやDocker/Kubernetes、サーバレス技術などを扱う「野生」のクラウドネイティブ人材。勉強会コミュニティStudyCo運営。
…続きを読むINDEX
ChatGPT APIとはOpenAI社が提供するAPI
ChatGPT APIは、その名の通り「ChatGPTを利用するためのAPI」です。API(Application Programming Interface)はインタフェース(窓口)のことであり、外部からアプリケーションやツールを呼び出すことができます。
ここではChatGPTがアプリケーション・ツールとなり、ChatGPT APIがインタフェース(窓口)という関係になります。このChatGPT APIは、2023年3月1日にOpenAI社によって公開されました。
一般向けのChatGPTは、Webアプリケーションとして利用できます。WebサイトにアクセスしてAIに尋ねる文章(情報)を入力し、その後に回答を得ます。この場合ChatGPTに与える情報は、ChatGPTのWebアプリケーションを通じて手入力しなければなりません。
対して、ChatGPT APIは自身のWebアプリケーションなどに組み込み、APIの規則に従って自身のWebアプリケーションなどからChatGPTを使用できるようになります。簡単にいえば、プログラムからChatGPTを利用できるようにしたものであるとイメージするとわかりやすいでしょう。そのため、ChatGPT APIを利用すれば、自身のアプリケーションにChatGPTを組み込み、チャットボット開発を行うことができます。
\文字より動画で学びたいあなたへ/
Udemyで講座を探す >ChatGPT APIの利用料金は従量課金制
ChatGPTをWebアプリケーションから利用する場合、使用料は基本的に無料ですが、APIは従量課金制が採用されており、使用量に応じて料金を支払わなければなりません。
ただし、API利用のためにアカウントを開設すると5ドル分のクレジットがもらえます。クレジットの有効期限は開設から3か月あるため、5ドル分は無料枠として利用することが可能です。ChatGPT APIを試してみたい場合にはぜひ活用するとよいでしょう。
2024年1月現在、GPT-3.5 Turboであれば出力1,000トークンあたり0.002ドルで利用することができます。下記は、使用量に応じて従量課金が記録されていく、実際の画面の画像です。
1トークンは、英語の場合、約4文字または0.75単語に相当します。例えば、『Open』という単語で1トークンになります。『OpenAI』や『Hello World』は2トークンです。一方、日本語は漢字やひらがな、漢字やひらがなの種類によってトークンの数え方が異なります。例えば、『料』という1字は2トークン、『料金』は全部で4トークンです。また、ひらがなは『を』が1トークン、『み』は2トークンとなります。このように、文字によって数え方が異なるため、日本語で利用を検討している人は、想定よりも使用量が多くなる可能性があるでしょう。
しかし、既存のチャットボットサービスの中では非常に安価であり、個人開発者でも利用しやすくなっています。従量課金制であるため、料金が変動することに不安を覚える方もいますが、管理画面から『Usage limits(使用量の制限)』を行うこともできるため、そのような設定を利用すればプログラムからでも安心して利用できるように工夫することが可能です。
ChatGPT APIでできること
ChatGPT APIを利用することで、外部からChatGPTを活用できるようになります。外部と連携できるようになることで、次のようなことができるようになります。
- チャットボットの開発
- 自動応答システム
- 質問応答システム
- 文章の作成や要約
- 言語翻訳
- プログラミングコード作成
基本的にChatGPTのWebアプリケーションを通じてできることは、ChatGPT APIを通じてもできます。ChatGPT APIを用いることで、自社のWebサービスとも連携してさらにできることの幅が広がるイメージです。加えて、自社のWebサービスなどに特化した特定の内容を学習させれば、より専門的な内容や自社サービスに特化した質疑応答も実現できます。
そのためには、自社で特定の機能を開発したり、学習データを用意したりする必要がありますが、ChatGPTをツールのひとつとして拡張できるという点は、ChatGPT APIを活用する大きなメリットといえるでしょう。
ChatGPT API活用のメリット
ここからはより具体的にChatGPT APIを活用するメリットを解説します。活用するメリットとしては、大きく次の3つ挙げられます。
UX(ユーザーエクスペリエンス)の向上
UX(ユーザエクスペリエンス)とは、製品やサービスを通して得られるユーザー体験のことです。ChatGPT APIを活用すると、従来の決められた内容でしか対応できなかったチャットボットとは異なり、学習次第で複雑な質問や問い合わせに対応できるようになります。
ChatGPTを活用したカスタマーサポートを導入すれば、24時間対応可能な優秀な自動オペレーターが構築可能です。人間の場合は24時間対応することは難しいですが、ChatGPTであれば問題ありません。ユーザーは時間に縛られることなく、サポートを受けられるためChatGPT APIを活用する大きなメリットとなります。
加えて、多言語化にも対応可能で言語による問題も解決できます。従来のチャットボットのような機械的な会話ではなく、自然な言葉で会話できるため、UXの向上が期待できるというわけです。
開発期間の短縮、業務の効率化
自社でオリジナルのAIを開発しようとした場合、多大な開発期間とコストが必要です。しかし、ChatGPT APIを活用すれば「AIを開発する」というフェーズが不要になります。ChatGPTは学習済みのAIサービスであるため、すぐに利用できます。もちろん、自社のサービスに特化した内容を学習させる場合はその限りではありませんが、大幅な開発期間の短縮につながることは確実です。
システム開発にかかる工数を短縮できれば、サービス本来の開発に専念できるようになります。AI開発に特化した開発者がいなくとも、AIを自社サービスに実装できる点は大きなメリットのひとつでしょう。
また、自社サービスに組み込むだけでなく、自社の業務を効率化させるためにChatGPT APIを活用することも可能です。自社サービスのコンテンツ制作もChatGPTによって効率化できれば、業務全体の効率化が期待できます。
拡張性と柔軟性の高さを利用してより便利に
ChatGPT APIを用いれば、新しく開発するシステムだけでなく市販のアプリケーションなどにも組み込むことが可能です。上手に使えば、元のサービスやアプリケーションをより便利に利用できます。例えば、これまで利用していた既存のシステムやアプリケーションとChatGPTを組み合わせて業務を効率化する、といったことが可能です。
また、ChatGPTは多種多様な情報を学習しています。ChatGPTが持つ豊富な情報や知識は幅広い分野で多様なサービスに活用できるでしょう。加えて、特定の分野や専門性の高い分野に関しては、追加学習させることでより自社サービスなどに適したAIにすることができます。ChatGPT APIが持つ拡張性と柔軟性の高さは、使い方の幅を広げ、あらゆるシステムやアプリケーションをより便利に、より機能的にすることが可能です。
ChatGPT API活用のデメリット、注意点
ChatGPT APIは、さまざまなメリットをもたらしますが、一方で覚えておかなければならないデメリットや注意点も存在します。
情報漏えいリスク(セキュリティ)
ChatGPT APIを通じて入力された情報は、原則ChatGPTの学習データとしては利用されないとされています。しかし、APIによってChatGPTという他社のシステムを利用している以上、万全とは言い切れないでしょう。そのため、ChatGPT APIを用いたシステムでは個人情報などの機密情報を入力しないようにすることが重要です。
また、サービス提供側が気をつけていても、利用者が悪意を持って個人情報を学習させて回答に使用されるケースも考えられます。その他にも、ChatGPT APIを利用するシステムがサイバー攻撃を受けて、連携するシステムに保存されている機密情報を抜き取られる可能性も考えられます。 ChatGPT APIを活用するシステムの多くは、公開されるシステムになると考えられるため、サイバー攻撃などの可能性も考慮した上でしっかりとセキュリティ対策を行わなければなりません。
不適切、不確実な情報の発信
ChatGPTは「正しい情報」を生成するAIではありません。あくまでもChatGPTが学習した内容に基づいて、質問内容に対して適切と考えられる答えを返答しているに過ぎません。つまり、ChatGPTが出力する情報は「間違っている可能性がある」という点は忘れてはならない、ということです。
ChatGPTが生成する文章は違和感が少なく、一見すると正しいように見えても、内容が間違っている場合があります。そのため、生成された文章を公開する場合には、必ず人の手で事実確認しなければなりません。そのまま公開してしまうと、不適切・不確実な情報を発信してしまうことになりかねないからです。
特に、インターネット上に情報が少ないものや、専門性が高い情報は学習データが足りておらず、間違っている可能性が高いため入念にチェックしましょう。ChatGPTが生成する文章の精度は向上し続けていますが、間違っている可能性がある点は必ず頭に入れておかねばなりません。
ChatGPT APIの利用手順
早速、ChatGPT APIの利用手順を開始します。まだアカウントを作成したことがない人やAPIキー発行の仕方がわからないという方はぜひ参考にしてください。
公式サイトからアカウント作成
ChatGPT APIを使用するためには、まずアカウント作成が必要です。そのため、はじめて利用する方は下記の手順からアカウントを作成してください。ここでは、メールアドレスを直接入力する場合の手順を解説しています。Googleアカウントなどと連携する場合は、多少手順が異なりますが基本的な流れは同じです。
1.はじめに、下記の「OpenAI公式ページ」にアクセスします。
2.『Sign up』をクリックしてください。もし、アカウントがあるなら、『Log in』からアクセスできます。
3.“Email address”の中にご自身のメールアドレスを入力します。また、GoogleアカウントもしくはMicrosoftアカウント、Apple IDをお持ちの方は、下部のボタンからアカウント作成することが可能です。
4.次に、パスワードを入力し、『Continue』ボタンをクリックします。ちなみに、パスワードは、7文字以上で設定する必要があります。
5.メールアドレスの確認を促されますので、届いたメールから認証をしてください。
6.次に、名前と誕生日を入力します。
7.電話番号を入力してください。
8.以上でアカウントの作成は完了です。
ログインしてAPIキーを発行
APIキーの取得は、OpenAIの公式ページから行います。発行する手順は下記の通りです。
1.「OpenAIの公式ページ」にアクセスします。
2.先ほど作成したアカウントでログインを行ってください。
3.公式ページにアクセスすることができました。
4.画面左ペインから『API Keys』を選択します
5.画面中央部にある『+ Create new secret key』のボタンをクリックします。
6.Create new secret keyのポップアップが表示されるので、APIキーの名前を入力し、作成してください。
今回のチュートリアルでは、Udemyという名前でAPIを作成しました。作成後、すぐにAPIが表示されるので、それをコピーします。ちなみに、APIキーをコピーできるのはこの画面のみです。再度確認することはできませんので、注意が必要です。また、表示されたAPIキーを第三者に知られてしまうと使い放題になってしまうため、必ず安全な場所で保存するようにしてください。
7.APIキーの作成は以上です。
【実践】Pythonでチャットボット開発
実際に、ChatGPT APIをPythonで使用し、チャットボットを開発します。今回は、Python+VSCode環境で構築を行います。また、使用するPCはWindows10です。まだ環境が整っていないという方は、『Pythonの開発環境の構築方法!最適な統合開発環境(IDE)を解説』を参照してください。
ライブラリをインストール
はじめにOpenAIライブラリをインストールする必要があります。下記の手順に沿ってインストールをしてください。
1.コマンドプロンプトを起動し、下記のコマンドを実行します。Macの場合は、ターミナルを開いてください。
1 |
pip install openai |
2.下記のように表示されれば、ライブラリのインストールは完了です。
APIキーの入力と関数の作成
APIキーの設定及び、モデルの設定を行います。今回はVSCodeでmain.pyを作成し、その中にChatGPT APIを実装していきます。
1.ChatGPT APIを使用するためには、ファイルの中でOpenAIライブラリをインポートする必要があります。下記のように記述してインポートを行ってください。
1 |
Import openai |
2. 次に、APIキーの設定を行います。変数openai.api_keyに取得したAPIキーを入力します。
1 2 3 4 5 6 7 8 9 |
response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[ {"role": "system", "content": "あなたは学校の先生です。"}, {"role": "user", "content": "おはようございます"}, ] ) openai.api_key = "先ほど取得したAPIキーを入力" |
3.次に、モデルの設定を行います。モデルの設定はChatCompletion.create関数を使用します。roleにはチャットボットの役割、contentにはチャットボットの特徴や質問を入力します。
以上でAPIの設定及びモデルの作成は終了です。
AIの設定をしてオリジナルのボットに
AIの設定を行うことでオリジナルボットにすることが可能です。AIの設定は、ChatCompletion.create関数で行います。チュートリアルでは、学校の先生として回答するように設定しています。また、おはようございますという文章をAIに送信しています。ちなみに、『語尾を〇〇にしてください』というように設定することも可能です。
1 2 3 4 5 6 7 8 |
response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[ {"role": "system", "content": "あなたは学校の先生です。"}, {"role": "user", "content": "おはようございます"}, ] ) |
また、出力する際は、ptint関数を使用してください。
1 2 3 4 |
print(f"ChatGPT: {response['choices'][0]['message']['content']}") print(response['usage']) |
今回は、ChatGPT APIを使用してチャットボットを作成する手順について解説しました。今回のチュートリアルでは、Pythonを使用しましたが、そのほかにもChatGPTは下記のプログラミング言語に対応することができます。
- Python
- Node.js (JavaScript)
- Ruby
- Go
- PHP
- Java
- C#
- Swift
Swiftなどにも対応しているため、Webアプリケーションだけでなく、モバイルアプリでも OpenAIのライブラリは使用可能です。
ChatGPT APIを使用することで、ご自身のアプリケーションに組み込むことができるため、チャットボットをそのまま取り入れることができます。しかし、ChatGPT APIは従量課金制になるため、Usage limitsなどをうまく活用し、予算内で使うように工夫をしてください。
チャットボットは今後、さまざまなシステムに組み込まれることが予想されるため、この機会に覚えておくことをおすすめします。
これからChatGPTのAPIについて学びたい方には、下記の講座がおすすめです。
ChatGPTのAPIで5つのアプリを作ってみよう!JSON生成、属性抽出、独自文書Q&A、SQL生成、AIエージェント
チャットボットだけじゃない!ChatGPTのAPIで何ができるのか、5つのアプリを作りながら学ぼう!レシピ生成アプリ/ブログ記事への自動タグ付け/PDFへのQ&A/自然言語からSQLを生成・実行/スケジュール管理のAIアシスタント
\無料でプレビューをチェック!/
講座を見てみる評価:★★★★★
ChatGPT の基礎知識で取り上げられていた Function calling の説明が分かりやすくアプリケーションを開発するにあたって良い参考になりました。
評価:★★★★★
ハンズオンのための開発環境構築をステップごとに丁寧に解説してくれるので、高度な作業ながら素人でもなんとかついていけて、プログラミングを体験できる。
ChatGPT APIを使用したチャットボット開発を進めよう!
最新情報・キャンペーン情報発信中