【Python】GPT4-Turboをとりあえず使う

備忘録

GPT4-Turboとかいう、128Kものトークンを扱えるにもかかわらず、かつてのGPT4-8kよりも安いという、とんでもないものが出てきました。
ものは試しとPlay Groundで使おうとすると、マックス出力(MAXトークン)が4095までしか設定できない。

これじゃ128Kトークン扱える意味ないだろ怒

追記
:馬鹿なので公式の「Returns a maximum of 4,096 output tokens. 」を見落としてました。なので、触れるだけならPlay Groundからでいいです。

以下バカの戯言

仕方がないので直接PythonからAPIを叩こうとしたが、なんか少しだけ前と使い方が変わってたので、手っ取り早くGPT4-Turboを試せるようなコードを備忘録気味に残しておきます。
※2023/11/07時点
※公式ドキュメント(https://platform.openai.com/docs/guides/text-generation/chat-completions-api)のコードを少し書き換えただけです。

PythonおよびOpenAIのライブラリはインストール済、API Keyも取得済みかつ、環境変数に設定済みの前提です。

from openai import OpenAI
import os

# osモジュールを利用して、環境変数からAPIキーを取得
api_key = os.environ.get('OPENAI_API_KEY')

# APIキーが設定されていない場合、エラーメッセージを表示してプログラムを終了
if not api_key:
    raise ValueError(
        "OPENAI_API_KEYが環境変数に設定されていません。\n"
        "Windows (コマンドプロンプト): setx OPENAI_API_KEY \"your-openai-api-key\"\n"
        "Windows (PowerShell): $env:OPENAI_API_KEY=\"your-openai-api-key\"\n"
        "Mac/Linux: export OPENAI_API_KEY=\"your-openai-api-key\""
    )

# 取得したAPIキーをopenaiライブラリに設定
openai.api_key = api_key

client = OpenAI()


# プロンプトの変数を定義する(手っ取り早く試したいときはuser_prompt内を任意のプロンプトに書き換えてください。)
system_prompt = """You are a helpful assistant."""
user_prompt = """こんにちは。"""

#APIリクエスト
completion = client.chat.completions.create(
  model="gpt-4-1106-preview",
  messages=[
    {"role": "system", "content": system_prompt},
    {"role": "user", "content": user_prompt}
  ]
)

print(completion.choices[0].message)

追伸
なんかマックストークンを設定しなくても、出力トークンが少ない気がする。
あくまで128Kの入力を扱えるだけであって、出力は4095トークンがマックスなのだろうか?

コメント

タイトルとURLをコピーしました