見出し画像

OpenAIのAPIを使ってみた

昨年11月に公開されたChatGPT。AIが提案したものがどんなに優れた内容でも最後に選ぶのは人間なのでコピーライターや作家など文章を書く人は是非とも有効活用した方が良いサービスだと思ってます。
プロンプトに入力する形の対話形式でのチャットやコードの補完など日々の業務に取り入れることにもある程度慣れてきたのでこのテキスト補完機能を是非自社サービスにも実装してみたいと考えました。
大変ありがたいことにOpenAIが作成した学習モデルをAPIを通して利用できるため、まず第一歩としてチュートリアルを通してAPIを使ってみました。

アカウント作成

まずは以下のWebサイトにアクセスしてアカウントを作成します。

APIキーの発行

ダッシュボードからAPIキーを取得できます。ログイン後、以下のURLで取得できます。

Python用のQuickStartをGitHubから取得

APIをテストするためのサンプルコードをOpenAIが準備してくれていますので、今回はテスト用としてそれを使ってみました。
Pythonは事前にインストールしておくと良いと思います。
2023/2/4の段階ではQuickStart用のライブラリの中に最新のPython 3.11と互換がないものがあったので、Pythonのバージョンはpyenvを使って3.9.6を使用しました。

今いるディレクトリにCloneするには以下をターミナルにコピペします。

git clone https://github.com/openai/openai-quickstart-python.git

QuickStartのセットアップ

CloneしてきたQuickStartのディレクトリに移動します。

$ cd openai-quickstart-python

仮想環境を作成します。

$ python -m venv venv
$ . venv/bin/activate

QuickStartに必要なライブラリをインストールします。

$ pip install -r requirements.txt

.envファイルに発行したAPIキーを入力します。

QuickStart用のflaskアプリを起動します。

$ flask run

flaskが起動したのちに以下にlocalhost:5000にアクセスすると「Name my pet」というWebアプリが立ち上がります。
本サンプルアプリでは動物の名前をテキストボックスに入力するといくつかのペットの名前の提案が返ってきます。
サンプルでは日本語入力はできませんのでChatGPTほどの驚きはありませんが、ChatGPTでも利用されている学習モデルを使用してオリジナルのサービスを作成できるというのは大きいと思います。

立ち上がるWebアプリ

OpenAIではAPIを利用するたびに「モデル」に応じた利用単価と「トークン」と呼ばれる文章のセグメント単位に応じて利用クレジットが消費されます。「トークン」は長い単語によっては複数に分割されるとのことで3-4文字で構成されているようです。
サイト内の情報によるとサービスは適宜変更されうるとのことですが、現時点ではアカウント作成時に18USDの無料クレジットが発行されていますので、色々と試してみたいと思います。以下のように今回のテストでは0.2USDとごく僅かに消費しました。無料クレジットの範囲でも多くのことが試せそうです。


QuickStart内のapp.py、staticやtemplates内のファイルを書き換えると色々とカスタマイズできるので次回はそれを試してみたいと思います。



この記事が気に入ったらサポートをしてみませんか?