打印agent 使用token量

langchain_openai 库中,invokecreate 方法都是用于与 OpenAI 模型进行交互,但它们有一些区别:

  1. 功能不同

    • invoke:用于生成文本或执行代码。

    • create:创建对话上下文。

  2. 返回值

    • invoke:返回一个响应对象。

    • create:返回一个包含多个选择(choices)的对象。

  3. 用法

    • invoke:通常用于生成单次请求,如生成文本或执行代码。

    • create:用于创建一个对话上下文,可以进行多次请求,如聊天。

在你的场景中,analyze_cs_floor 函数需要生成一个 prompt 并获取响应,所以使用 create 方法。如果你想直接获取生成文本,可以使用 invoke 方法。

下面是使用 invoke 方法的示例:

response = self.llm.invoke(prompt)
print(">>> tokens:", response.response_metadata.get("token_usage"))
return response.content.strip()

在 langchain_openai 库中,ChatOpenAI 类的 chat_completions 方法用于创建一个对话上下文,该方法接受一个 messages 参数,它是一个列表,其中每个元素是一个字典,包含两个键:role 和 content。
role 键指定了消息的角色,可以是 "system" 或 "user"。
`"system" 角色通常用于系统消息,这些消息包含上下文信息或提示。
`"user" 角色用于用户消息,这些消息是用户发送给模型的输入。
在你的代码中:
Python
复制
messages=[
    {"role": "system", "content": prompt},
    {"role": "user", "content": f"请分析 {func_name} 函数"}
]
第一个字典中的 "role": "system" 和 content: prompt` 指定了一个系统消息,提示 AI 分析函数。
第二个字典中的 "role": "user" 和 content: f"请分析 {func_name} 函数" 指定了一个用户消息,请求 AI 分析指定的函数。
这样,AI 模型就知道它需要根据系统提示和用户请求来生成相应的响应
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值