tiktoken を使った埋め込みコストの見積もり
Netflix の映画やTV番組を保存するためのデータベースとコレクションを作成できたので、データの埋め込みを始めましょう。
大規模なデータセットを埋め込む前に、予算を超えないようコスト見積もりを行うことが大切です。OpenAI のモデルは入力トークン数に基づいて料金が決まるため、OpenAI の tiktoken ライブラリを使ってトークン数を数え、ドル建てのコストに変換します。
すでに、埋め込むすべてのデータを含むリスト documents が用意されています。リストを反復処理して各ドキュメントをエンコードし、トークンの総数を数えます。最後に、モデルの料金を使ってコストに換算します。
この演習はコースの一部です
OpenAI API ではじめる Embeddings 入門
演習の手順
text-embedding-3-smallモデル用のエンコーダーを読み込みます。documentsの各テキストをエンコードし、その結果を合計してデータセット全体のトークン総数total_tokensを求めます。- モデル用に定義済みの
cost_per_1k_tokensを使って、トークン総数とそのコストを出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Load the encoder for the OpenAI text-embedding-3-small model
enc = tiktoken.encoding_for_model("____")
# Encode each text in documents and calculate the total tokens
total_tokens = ____(____(____) for ____ in documents)
cost_per_1k_tokens = 0.00002
# Display number of tokens and cost
print('Total tokens:', ____)
print('Cost:', ____)