OpenAI Platformことはじめ 〜Organizationメンバーに招待されたら

OpenAI Platform Organizationのメンバーに招待してもらい、その後OpenAI APIを試すところまでのチュートリアルを紹介します。
2023.03.07

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ども、大瀧です。

社員総出でOpenAI/ChatGPTのブログを書きまくるクラスメソッド社内ムーブメントがスタートし、このビッグウェーブに乗るべくOrganizationのメンバー招待を受けました。その後OpenAI APIを試すところまでのチュートリアルをブログとして残しておきます。

同じように「組織でビッグウェーブが起きたけど波の乗り方がわからん」という方のお役に立てたら嬉しいです。

必要なもの/動作確認環境

  • PCやMacbook
  • Node.jsもしくはPythonのランタイムをインストールしておくこと

1. OpenAI Platformのサインアップ

まずは招待メール記載の[Create account]リンクからOpenAI Platformのサインアップを行います。

リンクをクリックするとアカウント作成画面が表示されます。Eメールアドレスを入力する代わりにGoogle WorkspaceもしくはMicrosoftアカウントを利用できるので、今回はGoogle Workspaceを利用しました。

Google Workspaceのアカウント選択画面になるので認証するアカウントを選択します。Google Workspaceアカウントから氏名情報などがセットされるようで、特に入力画面が表示されること無く何度かCAPTCHAの確認ボタンをクリックすればアカウント作成が完了します。

ちなみにCloudflare Zero Trustが有効なセッションの場合、CAPTCHAの代わりにTurnstileが表示されることがあり、イマドキだなぁという月並みな感想を持ちました。

Welcome to OpenAIの画面が表示され、画面右上のアカウント欄に認証したGoogle Workspaceアカウントの情報が表示されたらアカウント作成は完了です。

2. APIキーの取得

続いて、OpenAI APIを利用する為のAPIキーを発行します。画面右上のアカウントをクリックしPersonalではないOrganization名(画面ではClassmethod)を選択、[View API keys]をクリックしAPI keys画面を表示します。

API keys画面では、Default orgnanization設定でOrganization名を選択し、[+Create new secret key]ボタンをクリックしAPIキーを生成します。

sk-から始まる文字列のAPIキーが表示されるので環境変数OPENAI_API_KEYにセットしておきましょう。手元のMacbookはzshなので、~/.zshrcに以下を追記しました。

~/.zshrc

export OPENAI_API_KEY='sk-<YOUR_API_KEY>'

3. サンプルスクリプトの動作確認

では、OpenAI APIを呼んでみましょう。今回は手元のMacbookにNode.jsがインストール済みだったのでNode.js libraryのドキュメントをお手本にします。以下のコマンドでOpenAIのNode.jsライブラリをインストールします。

$ mkdir openai-sample
$ cd openai-sample
$ npm install openai

以下のサンプルスクリプトindex.jsを作成します。

index.js

const { Configuration, OpenAIApi } = require("openai");

const start = async function() {
  const configuration = new Configuration({
    apiKey: process.env.OPENAI_API_KEY,
  });
  const openai = new OpenAIApi(configuration);
  const response = await openai.createCompletion({
    model: "text-davinci-003",
    prompt: "Say this is a test",
    temperature: 0,
    max_tokens: 7,
  });
  console.log(response.data.choices[0].text)
};

start();

ファイルを作成したら、実行します。

$ node index.js


This is indeed a test

お、文章が表示されました。このサンプルで呼び出しているのはテキスト補完のAPIで、コードの9〜12行目のパラメータで指定しています。詳しいパラメータは以下のドキュメントを参照してください。

Say this is a testという命令に対してThis is indeed a testとレスポンスを返しているわけですね。ひとまずOpenAI APIを呼び出して結果を得ることは確認できました。他にどんなことができるのか、APIをどう使うのかについてドキュメントに豊富な説明があるのでGUIDESやAPI REFERENCE辺りを読み込んでいくのが良さそうです。

料金

OpenAI APIはトークンによる従量課金です。

今回試した範囲だと、リクエストで指定するモデルによって料金が変わるようです。アプリやWebページに組み込む場合、ユーザーがどの程度の頻度で呼び出すのか、トークンを消費するのかを設計していくことになると思います。

まとめ

OpenAI Platform Organizationのメンバーに招待されたときに、アカウントを作成してサンプルスクリプトでOpenAI APIを試すところまでをチュートリアル形式でご紹介しました。OpenAI Platformを始めるとっかかりになれば幸いです。

参考