Langchain-Chatchat icon indicating copy to clipboard operation
Langchain-Chatchat copied to clipboard

自定义对话选择agent模式,输入查询北京天气后台不能成功查询,后台打印> Entering new AgentExecutor chain... Action: ``` {"action": "Final Answer", "action_input": "I will use the weather_check tool to check the weather in Beijing.\n"} ``` > Finished chain.另外,如何通过api方式调用agent模式?

Open Andy1018 opened this issue 11 months ago • 2 comments

自定义对话选择agent模式,输入查询北京天气后台不能成功查询,后台打印

Entering new AgentExecutor chain... Action: {"action": "Final Answer", "action_input": "I will use the weather_check tool to check the weather in Beijing.\n"} > Finished chain. 另外,如何通过api方式调用agent模式?

Andy1018 avatar Mar 11 '24 14:03 Andy1018

嘿,@Andy1018,又见面啦!希望这次我们能一起解决新的挑战。🚀

您在自定义对话选择agent模式并输入"查询北京天气"时,后台无法成功查询,这是因为代码中并未包含在自定义对话agent模式部分处理天气查询或任何外部API调用的具体实现。自定义对话agent模式部分只准备了一个表示它正在"思考"的消息,并通过验证模型名称是否在SUPPORT_AGENT_MODEL列表中来检查模型是否与agent对齐。然而,它并未执行任何逻辑来执行实际的查询或调用外部API来获取天气信息。

通过API调用agent模式,通常需要向后端服务器发起API请求,传递必要的参数,如模式(agent模式)、查询(例如,"查询北京天气")以及其他必要的信息,如要使用的模型。然而,提供的代码并未显示直接通过外部API调用agent模式的方式。与agent模式的交互在dialogue_page函数内部处理,它依赖于用户在Streamlit UI中的选择。

要实现API调用触发agent模式,您需要在后端服务器上公开一个接受处理agent模式查询请求的端点。然后,这个端点需要处理处理查询的逻辑,可能需要通过集成外部服务或数据库来获取请求的信息(例如,天气数据)。提供的代码片段并未包含此类端点的实现或进行外部API调用以获取天气信息的逻辑。

参考源码:

Sources

About Dosu

This response is meant to be useful and save you time. It is not meant to be a precise solution, but rather a starting point for your own research.

Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.

If you want to continue the conversation, start your reply with @dosu-bot.

dosubot[bot] avatar Mar 11 '24 14:03 dosubot[bot]

这位北京的朋友,我在你前面刚刚问了这个问题,不过目前看起来,dosu并没有讲清楚,从问题,到判断意图,再到调用tools的代码逻辑,目前只是输出了意图,并没有执行tools。

dalunzi-dreamers avatar Mar 11 '24 14:03 dalunzi-dreamers

首先是北京的朋友,我在你前面刚刚问了这个问题,不过目前看来,dosu并没有讲清楚,从问题,到判断原理,再到调用工具的代码逻辑,目前只是输出了原理,并没有执行工具。

大神,这个问题解决了吗?

zgz757183190 avatar Apr 04 '24 15:04 zgz757183190

自定义对话选择代理模式,输入查询北京天气后台不能成功查询,后台打印

进入新的AgentExecutor链... Action: {"action": "Final Answer", "action_input": "I will use the weather_check tool to check the weather in Beijing.\n"} > 完成链。 另外,如何通过api方式调用agent模式?

大神,这个问题解决了吗?

zgz757183190 avatar Apr 04 '24 15:04 zgz757183190

嘿,@Andy1018,又见面啦!希望这次我们能一起解决新的挑战。🚀

您在自定义对话选择代理模式并输入“查询北京天气”时,后台无法成功查询,这是因为代码中蕴含在自定义对话代理模式部分处理天气查询或任何外部API调用的具体实现。定义对话代理模式部分只准备了一个表示它正在“思考”的消息,并通过验证模型名称是否在SUPPORT_AGENT_MODEL列表中来检查模型是否与代理对齐。然而,它会执行任何逻辑来执行实际的查询或调用外部API来获取天气信息。

通过API代理模式,通常需要向云端调用服务器发起API请求,提交需要的参数,如模式(agent模式)、查询(例如,“查询北京天气”)以及其他需要的信息,如要使用的模型。然而,通过外部 API 调用代理模式的方式提供直接显示的代码。与代理模式的交互在dialogue_page函数内部处理,它依赖于用户在 Streamlit UI 中的选择。

要实现API调用触发代理模式,您需要在报表服务器上公开一个接受处理代理模式查询请求的端点。然后,这个端点需要处理处理查询的逻辑,可能需要通过集成外部服务或数据库来获取请求的信息(例如,天气数据)。提供的代码片段包括此类端点的实现或进行外部API调用以获取信息的逻辑。

参考源码:

来源

关于多苏

此回复旨在有用并节省您的时间。它并不是一个精确的解决方案,而是您自己研究的起点。

帮助我变得更有用!如果这有帮助,请留下 👍;如果不相关,请留下 👎。

如果您想继续对话,请以以下方式开始回复@dosu-bot。

image

大神,他这个默认是有写了调用API接口的呀!为啥呢

zgz757183190 avatar Apr 04 '24 15:04 zgz757183190

请问 这个问题解决了吗 我也配置了api_key 但还是打印标题那句话,感觉没有进行天气工具的调用

HideOnBridge avatar Apr 12 '24 03:04 HideOnBridge

API调用接口也可以的,中间步骤都执行掉了只有结果

zRzRzRzRzRzRzR avatar May 07 '24 02:05 zRzRzRzRzRzRzR

API调用接口也可以的,中间步骤都执行掉了只有结果

你好,有办法判断是否执行了工具吗,从代码看和模型吐出的结构看“weather_check”这个工具词是对应上的,但是final answer的时候,还是要通过weather_check tool去查下,那是不是这就不是final answer,需要代码再做下一步工作,要判断是否模型answer里面是不是包含动作和tool匹配的工具名,然后再执行工具操作,然后再返回到前端?

weipoint avatar May 27 '24 08:05 weipoint

自定义对话选择agent模式,输入查询北京天气后台不能成功查询,后台打印

Entering new AgentExecutor chain... Action: {"action": "Final Answer", "action_input": "I will use the weather_check tool to check the weather in Beijing.\n"} > Finished chain. 另外,如何通过api方式调用agent模式?

楼主,请问问题有解决办法了吗?

weipoint avatar May 27 '24 08:05 weipoint