ChatGPTのAPIの使い方 インストールから回答取得まで
2023年3月1日に公開されたChatGPT API、AI界隈は大きく盛り上がり様々な使い方やプロダクトが期待されています。
今回は実際に使い始めるまでの手順などを実際に試しながら記事にしてみました。これからChatGPTのAPIを利用して何かサービスやプロダクトを創りたいという方は是非ご覧ください。
そもそもAPIについて知りたいという方は種類や特徴、価格「Chat GPT APIの基本。モデル、価格、トークンの数え方まで」という記事をまとめていますので、まずは基本を知りたいという方はこちらも合わせてどうぞ。
ChatGPT APIのAPIキーを発行する
まずは、Open AIのAPIキーを手に入れる必要があります。
以下のサイトにアクセスしてOpen AIアカウントでログインして、「+create new secret key」をクリックするとAPIキーが発行されます。
API keys
https://platform.openai.com/account/api-keys
発行したAPIキーはあとから見直せると思って控えていませんでしたが、一度出力されたAPIキーは管理画面から省略形しか見ることができません。あとから見られると油断してコピペせず、再発行などをすることになってしまったので、発行時に必ずにコピーしましょう。コピーし忘れてしまったら、もう一度ボタンを押して再発行してください。
キーが発行されると、編集ボタンを押せるようになり、APIに名前をつけることができます。テスト用、本番用など分かりやすい名前をつけておきましょう。また、2つ以上のキーが発行されている場合、APIキーは削除できるようになっています。
Google ColabでChatGPTを試す。
今回は、まずはテストということで、レンタルサーバーなどを準備せず、ブラウザ上でPython を実行できるサービスGoogle Colabを使ってChatGPTのAPIを動かしていきたいと思います。
APIは優良なので、決済手続きしなければと頭よぎりましたが、API申請時、初回は無料分のクレジットが付与されるみたいで、Free trial usageとして、CREDIT GRANTEDの欄に18ドル分クレジットが付与されています。
フリートライアルから切り替えるには右上のUpgrade画面から支払い用のアカウント設定ができるようになっていますが、今回はテストのため割愛します。
まずはOpenAIをインストール
!pip install openai
その後open AIをインポートしAPIキーを入力します。
import openai
openai.api_key = "ここに発行したAPIキーを入力"
これだけで準備完了です。
早速、gpt-3.5-turboに質問を投げかけてみましょう。以下のコードのrole、user contentsに続く部分に質問したい項目を入れて実行してみます。
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": "OpenAIってすごいよね"}])
print(response['choices'][0]['message']['content'])
以下のようにフィードバックがありました。
はい、OpenAIは、人工知能の開発に取り組む世界的な研究機関であり、自然言語処理や画像認識などの分野で非常に高い成果を上げています。特に、自然言語処理の分野では、GPT-3と呼ばれる言語モデルを開発し、人間に近い自然な文章を生成することに成功しました。また、OpenAIは、AI技術の民主化と社会貢献を目的として、AIのエシックスや安全性を考慮した研究開発を進めていることでも注目されています。
ChatGPT APIからの回答
色々とオプションがあるようで、ロール(役割)は公式によると「システム」「ユーザー」「アシスタント」の3人がいるそうで、システムに値を渡すと、アシスタントの性格を付与ができるとのことで試してみたいと思います。
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "悲観的で謙虚なAI"},
{"role": "user", "content":"OpenAIってすごいよね"}])
print(response['choices'][0]['message']['content'])
はい、OpenAIは非常に印象的なAI研究組織です。彼らは、自然言語処理、強化学習、画像認識などの分野で革新的な成果を達成しています。しかし、彼らは同時に、AIの可能性やリスクについて非常に慎重な姿勢をとっています。彼らは、人工知能の発展は世界の利益になることを望んでいますが、同時に、人工知能によって引き起こされる可能性のあるリスクを認識し、それを予防するための取り組みを積極的に行っています。このような、悲観的で謙虚なアプローチは、AI技術の発展をより安全に進めるために必要なものであると言えます。
ChatGPT APIから回答
少しだけですが、与えられたシステムの影響があった気がします。
ローカライズされたAIプロダクトに期待
APIが気軽に利用できるようになったことから、爆発的にChatGPTのAPIAプロダクトがリリースされています。
tazikuもこれらを利用して、日本独自の面白いプロダクトを目指していきます。