Mencantumkan dan menghitung token

Vertex AI SDK untuk Python (1.60.0 dan yang lebih baru) menyertakan tokenizer terintegrasi, yang memungkinkan Anda mencantumkan dan menghitung token perintah secara lokal tanpa harus melakukan panggilan API. Halaman ini menunjukkan cara mencantumkan token dan ID tokennya dari sebuah perintah dan cara mendapatkan jumlah total token dari sebuah perintah menggunakan Vertex AI SDK untuk Python.

Token dan pentingnya listingan dan penghitungan token

Model AI generatif menguraikan teks dan data lainnya dalam perintah menjadi unit yang disebut token untuk diproses. Cara data dikonversi menjadi token bergantung pada tokenizer yang digunakan. Token dapat berupa karakter, kata, atau frasa.

Setiap model memiliki jumlah maksimum token yang dapat ditanganinya dalam perintah dan respons. Mengetahui jumlah token perintah akan memberi tahu Anda apakah Anda telah melampaui batas ini atau tidak. Selain itu, token penghitungan juga menampilkan karakter yang dapat ditagih untuk perintah, yang membantu Anda memperkirakan biaya.

Mencantumkan token akan menampilkan daftar token yang menjadi bagian perintah Anda. Setiap token yang tercantum dikaitkan dengan ID token, yang membantu Anda melakukan pemecahan masalah dan menganalisis perilaku model.

Model yang didukung

Tabel berikut menunjukkan model yang mendukung listingan token dan penghitungan token:

Mencantumkan token Menghitung token
gemini-1.5-flash-002 gemini-1.5-flash-002
gemini-1.5-pro-002 gemini-1.5-pro-002
gemini-1.0-pro-002
gemini-1.0-pro-vision-001

Mendapatkan daftar token dan ID token untuk perintah

Contoh kode berikut menunjukkan cara mendapatkan daftar token dan ID token untuk perintah. Perintah hanya boleh berisi teks. Dialog multimodal tidak didukung.

Gen AI SDK untuk Python

Pelajari cara menginstal atau mengupdate Google Gen AI SDK untuk Python.
Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Gen AI SDK untuk Python API atau repositori GitHub python-genai.
Tetapkan variabel lingkungan untuk menggunakan Gen AI SDK dengan Vertex AI:

# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=True

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))
response = client.models.compute_tokens(
    model="gemini-2.0-flash-001",
    contents="What's the longest word in the English language?",
)
print(response)

# Example output:
# tokens_info=[TokensInfo(
#    role='user',
#    token_ids=[1841, 235303, 235256, 573, 32514, 2204, 575, 573, 4645, 5255, 235336],
#    tokens=[b'What', b"'", b's', b' the', b' longest', b' word', b' in', b' the', b' English', b' language', b'?']
#  )]

Vertex AI SDK untuk Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Vertex AI SDK untuk Python.

from vertexai.preview.tokenization import get_tokenizer_for_model

# init local tokenzier
tokenizer = get_tokenizer_for_model("gemini-1.5-flash-001")

# Count Tokens
prompt = "why is the sky blue?"
response = tokenizer.count_tokens(prompt)
print(f"Tokens count: {response.total_tokens}")
# Example response:
#       Tokens count: 6

# Compute Tokens
response = tokenizer.compute_tokens(prompt)
print(f"Tokens list: {response.tokens_info}")
# Example response:
#     Tokens list: [TokensInfo(token_ids=[18177, 603, 573, 8203, 3868, 235336],
#          tokens=[b'why', b' is', b' the', b' sky', b' blue', b'?'], role='user')]

Mendapatkan jumlah token dan karakter yang dapat ditagih dari sebuah perintah

Contoh kode berikut menunjukkan cara Mendapatkan jumlah token dan jumlah karakter yang dapat ditagih dari sebuah perintah. Perintah khusus teks dan multimodal didukung.

Gen AI SDK untuk Python

Pelajari cara menginstal atau mengupdate Google Gen AI SDK untuk Python.
Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Gen AI SDK untuk Python API atau repositori GitHub python-genai.
Tetapkan variabel lingkungan untuk menggunakan Gen AI SDK dengan Vertex AI:

# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=True

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

prompt = "Why is the sky blue?"

# Send text to Gemini
response = client.models.generate_content(
    model="gemini-2.0-flash-001", contents=prompt
)

# Prompt and response tokens count
print(response.usage_metadata)

# Example output:
#  cached_content_token_count=None
#  candidates_token_count=311
#  prompt_token_count=6
#  total_token_count=317

Vertex AI SDK untuk Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Vertex AI SDK untuk Python.

from vertexai.preview.tokenization import get_tokenizer_for_model

# Using local tokenzier
tokenizer = get_tokenizer_for_model("gemini-1.5-flash-002")

prompt = "hello world"
response = tokenizer.count_tokens(prompt)
print(f"Prompt Token Count: {response.total_tokens}")
# Example response:
# Prompt Token Count: 2

prompt = ["hello world", "what's the weather today"]
response = tokenizer.count_tokens(prompt)
print(f"Prompt Token Count: {response.total_tokens}")
# Example response:
# Prompt Token Count: 8