本文主要介绍通过python实现tokens统计,避免重复调用openai等官方api,开源节流。
一、设计思路
- 初始化tokenizer
- 使用tokenizer将文本转换为tokens
- 计算token的数量
二、业务场景
2.1 首次加载依赖
2.2 执行业务逻辑
三、核心代码
from transformers import AutoTokenizer
import time
from datetime import datetime
# 获取开始时间,并格式化为"年-月-日 时:分:秒"
start_time = time.time()
start_datetime = datetime.fromtimestamp(start_time).strftime('%Y-%m-%d %H:%M:%S')
# 初始化tokenizer
tokenizer = AutoTokenizer.from_pretrained('bert-base-uncased')
# 示例文本
text = "ChatGPT is great!"
# 使用tokenizer将文本转换为tokens
tokens = tokenizer.tokenize(text)
# 计算token的数量
num_tokens = len(tokens)
# 获取结束时间,并格式化为"年-月-日 时:分:秒"
end_time = time.time()
end_datetime = datetime.fromtimestamp(end_time).strftime('%Y-%m-%d %H:%M:%S')
# 打印结果和格式化的时间戳
print(f"文本中的token数量为: {num_tokens}")
print(f"Token分解数组: {tokens}")
print(f"开始时间: {start_datetime}")
print(f"结束时间: {end_datetime}")
print(f"脚本运行时间: {end_time - start_time} 秒")