OpenAIのAPIを使い始める

# はじめに

ゼロからOpenAIのAPIを使ってみたので備忘録です。

アカウントの作成から、Pythonライブラリのテスト、クレジットの追加購入までを実施しました。

# 手順

## アカウントの作成

公式ページにアクセスします。

https://openai.com/

「Log in」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/a426775c-ec36-cd85-eefa-aa931de94712.png)

今回は、「Googleで続ける」でGoogleアカウントとの連携を行いました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/d28905a2-ad59-963a-c723-24cb6a884406.png)

氏名,組織名,誕生日の情報を入力して「Agree」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/75bfbffc-d4d3-407f-bee0-b86f4876b61b.png)

使いたいサービスを聞かれるので「API」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/bfc232c6-aa94-476c-7616-3c107b8b2155.png)

プラットフォームにアクセスすることができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/df40b254-7746-ab1f-d8b8-b3b95480de4e.png)

## APIキーを設定

プラットフォームの左側のメニューより「API keys」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/f52107fa-b510-4b26-c88a-1690f8debfd9.png)

API keysの画面が表示されます。

電話番号での認証がまだの場合はAPIキーの生成前に認証が必要です。
「Start verification」より認証します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/72faea72-dcc6-5b1a-c118-72a1f20bd3cc.png)

認証に利用した電話番号が他のアカウント等で利用している場合は、無料のAPIを利用することができないので、次のようなメッセージが表示されます。
この場合はクレジットカードを登録する必要がありますが、先にAPIキーを発行することはできます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/528e0433-1a3e-c737-55ea-c3784693b56f.png)

電話番号が認証できたら、「Create new secret key」よりAPIキーを生成できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/8d44afce-7eae-c9e3-7c95-e28670a38e59.png)

名前と権限を設定して「Create secrert key」を選択して、APIキーを取得します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/e747cebd-1a7f-a443-cd39-5f5723f90cad.png)

APIキーが発行されます。
ここに表示されるAPIキーはこの画面を閉じてしまうともう見ることはできません。その場合にAPIを使うためにはAPIキーを再発行する必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/9f23a38a-9f0d-c77a-5c10-0eae26b2a13e.png)

APIキーが発行されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/9974c74e-6177-cd18-b3e5-21c6f9fc65e6.png)

## Pythonライブラリを利用してテスト

下記のライブラリを利用してテストします。

https://github.com/openai/openai-python

テストは Google Colab で実施しました。

まずライブラリをインストールします。

```
!pip install openai
```

次に、先ほど作成したAPIキーを利用してAPIを叩きます

```python
import os
from openai import OpenAI

client = OpenAI(
    api_key="ここに作成したキーを入力する",
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "こんにちは",
        }
    ],
    model="gpt-3.5-turbo",
)
```

結果は`chat_completion`に保存されているので、確認します。

```python
print(chat_completion.choices[0].message.content)
```

> こんにちは！お困りのことがあればお知らせください。どういたしまして、お手伝いできることがあればお知らせください。


## クレジットカードの登録してクレジットを購入

アカウント発行次に５＄のクレジットをもらっているので、クレジットカードを登録する前に５＄分はAPIを利用することができます。
その後の利用にはクレジットカードの登録が必要です。

現在の支払い状況や残りのクレジットは、OpenAI APIのページにログインし、「Settings」→「Billing」から選択可能です。

下記の内容では、フリートライアル中で$5のクレジットが残っていることがわかります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/198d354c-d286-cb85-0f0e-1f9cd57366c1.png)


クレジットカードを登録する前に、料金プランを選択します。
そのためにBilling画面にて、「Add payment details」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/4953e0b3-f85d-4fbb-9c7a-fd47b5489c9f.png)

個人か会社かを聞かれるので、選択します。
私は「会社」を選択しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/e0eceeed-2863-d935-6b21-d2f03fb0cbca.png)

カード情報を入力する画面が表示されるので、適宜情報を入力します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/03b3fe27-d85f-90d9-6aca-fb42569f3149.png)

追加するクレジットを聞かれるので、入力します。
自動リチャージをオンにすることで、残高が少なくなった時にチャージするクレジットや、常に残しておきたいクレジットを指定できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/8b037e62-6bf6-53c7-a207-de6af18537da.png)

確認画面が表示されるので、金額等を確認して、「Confirm　payment」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/e84b24cb-0923-54a9-f6d1-866f730864db.png)

クレジットを購入することができました

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3575176/5015f8a8-bfab-ef42-d394-2bb199740e93.png)