Docs Menu
Docs Home
/

トークン化

入力がある場合、埋め込みと再ランク付けプロセスの最初のステップは、それを トークンのリストに分裂することです。 APIを呼び出すと、サーバーはこのトークン化ステップを自動的に実行します。 Pythonクライアントには、 APIを呼び出す前にトークナイザを試行できるメソッドが含まれています。

特定のモデルのテキストのリストをトークン化するには、tokenize メソッドを使用します。

import voyageai
# Initialize client (uses VOYAGE_API_KEY environment variable)
vo = voyageai.Client()
texts = [
"The Mediterranean diet emphasizes fish, olive oil, and vegetables, believed to reduce chronic diseases.",
"Photosynthesis in plants converts light energy into glucose and produces essential oxygen."
]
# Tokenize the texts
tokenized = vo.tokenize(texts, model="voyage-4-large")
for i in range(len(texts)):
print(tokenized[i].tokens)
['The', 'ĠMediterranean', 'Ġdiet', 'Ġemphasizes', 'Ġfish', ',', 'Ġolive', 'Ġoil', ',', 'Ġand', 'Ġvegetables', ',', 'Ġbelieved', 'Ġto', 'Ġreduce', 'Ġchronic', 'Ġdiseases', '.']
['Photos', 'ynthesis', 'Ġin', 'Ġplants', 'Ġconverts', 'Ġlight', 'Ġenergy', 'Ġinto', 'Ġglucose', 'Ġand', 'Ġproduces', 'Ġessential', 'Ġoxygen', '.']

特定のモデルのテキストリスト内のトークンの数をカウントするには、count_tokens メソッドを使用します。

import voyageai
# Initialize client (uses VOYAGE_API_KEY environment variable)
vo = voyageai.Client()
texts = [
"The Mediterranean diet emphasizes fish, olive oil, and vegetables, believed to reduce chronic diseases.",
"Photosynthesis in plants converts light energy into glucose and produces essential oxygen."
]
# Count total tokens
total_tokens = vo.count_tokens(texts, model="voyage-4-large")
print(total_tokens)
32

特定のモデルの入力リスト内のトークンとドットの数をカウントするには、 count_usage メソッドを使用します。

注意

埋め込みモデルにはコンテキストの長さ制限があります。テキストが制限を超える場合は、 APIを呼び出す前にテキストを切り捨てるか、truncation へのTrue 引数を指定します。

import voyageai
import PIL
# Initialize client (uses VOYAGE_API_KEY environment variable)
vo = voyageai.Client()
# Create input with text and image
inputs = [
["This is a banana.", PIL.Image.open('banana.jpg')]
]
# Count tokens and pixels
usage = vo.count_usage(inputs, model="voyage-multimodal-3.5")
print(usage)
{'text_tokens': 5, 'image_pixels': 2000000, 'total_tokens': 3576}

トークナイザを使用する場合は、次の点を考慮してください。

  • 最新の NHP モデルは通常、テキスト string をトークンのリストに変換します。 「自分」や「Apple」などの使用頻度の高い単語は、単独でトークンになります。対照的に、まれに使われる単語や長い単語は複数のトークンに分割されます。例、「un characters」は 4 つのトークンに分割され、"un"、" characters"、"list"、" イベントで" となります。 11.2 単語は、ドメインの複雑度に応じて、平均1.5 から トークンにほぼ対応します。

    トークナイザによって生成されたトークンの平均は 5 文字であり、テキスト string の文字数を 5 で割るとトークン数をおおよそ推定できます。トークンの正確な数を判別するには、count_tokens() メソッドを使用します。

  • Boyage のトークナイザは、Hugingface でも利用できます。次のコードを使用して、特定のモデルに関連付けられているトークナイザにアクセスできます。

    from transformers import AutoTokenizer
    tokenizer = AutoTokenizer.from_pretrained('voyageai/voyage-4-large')
  • tiktoken は、一般的なオープンソーストークナイザです。投票モデルでは異なるトークナイザが使用されます。そのため、トークナイザは、特定のテキストに対して、tiktoken とは異なるトークンのリストを生成します。統計的に、当社のトークナイザが生成するトークンの数は平均1.1 1.2tiktokenから の 1 倍であり、トークンの正確な数を判別するには、count_tokens() メソッドを使用します。

戻る

RAG

項目一覧