OpenAI
หน้านี้แปลด้วยระบบอัตโนมัติ ดูต้นฉบับภาษาอังกฤษ.

ฉันจะรู้ได้อย่างไรว่าสตริงหนึ่งจะมี Token กี่ตัวก่อนลองทำ embedding?

การคำนวณ/ประมาณจำนวน Token สำหรับ embedding

อัปเดตล่าสุด: 11 days ago

ก่อนส่งสตริงสำหรับ embedding คุณสามารถประมาณจำนวน Token ที่จะใช้ได้โดยใช้ไลบรารี tokenizer tiktoken ของ OpenAI

สิ่งนี้มีประโยชน์เป็นพิเศษ เพราะโมเดล embedding (เช่น text-embedding-3-small) มีขีดจำกัด Token สูงสุดที่คุณต้องไม่เกิน

---

วิธีนับ Token ด้วย Tiktoken

คุณสามารถใช้แพ็กเกจ Python tiktoken เพื่อคำนวณจำนวน Token ที่สตริงจะสร้างขึ้น

นี่คือตัวอย่างโค้ด:

import tiktoken

def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""คืนค่าจำนวน Token ในสตริงข้อความ"""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens

# ตัวอย่างการใช้งาน
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)

สำคัญ:

  • สำหรับโมเดล embedding รุ่นที่สาม (เช่น text-embedding-3-small หรือ text-embedding-3-large) คุณควรใช้การเข้ารหัส "cl100k_base"

  • โมเดลต่าง ๆ อาจต้องใช้การเข้ารหัสที่ต่างกัน — หากไม่แน่ใจ โปรดดูเอกสารประกอบของโมเดลเสมอ

---

เหตุใดการนับ Token จึงสำคัญ

  • หากสตริงของคุณเกินขนาดอินพุตสูงสุดของโมเดล คำขอ API ของคุณจะล้มเหลว

  • การนับ Token ล่วงหน้าอย่างแม่นยำช่วยให้เวิร์กโฟลว์ embedding ราบรื่นขึ้น และป้องกันข้อผิดพลาดระหว่างการประมวลผล

---

บทความนี้มีประโยชน์หรือไม่