我正试图为调用OPENAI时使用的代币定价。我有一个上传到Qdrant的纯文本txt文件。当我问以下问题时:
迈克尔·乔丹是谁?
并使用
get_openai_callback
跟踪令牌数量和操作价格的函数,输出中的信息键之一对我来说没有意义。
Tokens Used: 85
Prompt Tokens: 68
Completion Tokens: 17
Successful Requests: 1
Total Cost (USD): $0.00013600000000000003
为什么
提示令牌
值与输入值不同?输入文本中的令牌数量(即我所理解的Prompt Token)为:
query = 'Who is Michael Jordan'
encoding = tiktoken.encoding_for_model('gpt-3.5-turbo-instruct')
print(f"Tokens: {len(encoding.encode(query))}")
4
,但响应中的输出类似于68。我认为Prompt Tokens是添加到问题令牌中的基本令牌(txt文件)的总和,但数学并不合适。
txt文件中的令牌数量:
17
Arquivo文本:
迈克尔·杰弗里·乔丹是一位美国商人,前篮球运动员,曾担任得分后卫
查询+文件令牌
: 21 (4+17)
有人能帮我理解定价计算吗?
我试图搜索OPENAI自己的文档、github和其他论坛,但我认为很难找到信息,也不认为它对公众开放。我想知道我是否遗漏了什么,或者这是用户无法访问的计算。
更新
对于其他用户将来的任何问题:
import langchain
langchain.debug = True
跑吧
get_openai_callback()
功能,并看到整个日志显示在屏幕上。的价值
“提示”
key是一个包含字符串的列表,该字符串是关于如何给出响应的指令。此提示的令牌数是提示令牌中显示的值。