gpt4 book ai didi

python - 尝试跟踪 Langchain 中的代币使用情况时出现 ValueError

转载 作者:行者123 更新时间:2023-12-02 22:47:38 25 4
gpt4 key购买 nike

我正在关注langchain官方文档here中的本教程我是否尝试在使用时跟踪 token 的数量。但是,我想使用 gpt-3.5-turbo 而不是 text-davinci-003,因此我将使用的 LLM 类从 OpenAI 更改为 ChatOpenAI,但这是不支持的消息类型的值错误

这是代码片段:

from langchain.chat_models import ChatOpenAI
from langchain.callbacks import get_openai_callback

os.environ['OPENAI_API_KEY'] = "OPENAI-API-KEY"

llm = ChatOpenAI(
model_name='gpt-3.5-turbo-16k',
temperature=0.0
)

with get_openai_callback() as cb:
result = llm("Tell me a joke")
print(cb)

出现此错误:ValueError:得到不支持的消息类型:T

为什么将类从 OpenAI 更改为 ChatOpenAI 会出现此错误?怎么解决?

最佳答案

您收到该错误是因为您已完成一半。如果您直接在 ChatOpenAI 实例中输入问题/查询/提示 - 在您的情况下为 llm - 您将收到错误。

试试这个,基于LangChain的example :

from langchain.chat_models import ChatOpenAI
from langchain.callbacks import get_openai_callback
from langchain.schema import AIMessage, HumanMessage, SystemMessage


os.environ['OPENAI_API_KEY'] = "OPENAI-API-KEY"

chat = ChatOpenAI(
model_name='gpt-3.5-turbo', #Opinion: no need to use the -16k model
temperature=0.0
)

with get_openai_callback() as cb:
result = chat([HumanMessage(content="Tell me a joke.")]
print(f"\n Total Tokens: {cb.total_tokens}")
print(f" Prompt Tokens: {cb.prompt_tokens}")
print(f" Completion Tokens: {cb.completion_tokens}")
print(f" Total Cost (USD): ${round(cb.total_cost, 2)}")

看浪链的Python documentationChatOpenAI 引用。

PS:使用temperature=0.0,您可能会得到一个非常无聊的笑话。

关于python - 尝试跟踪 Langchain 中的代币使用情况时出现 ValueError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77082429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com