当前位置:   article > 正文

LangChain的函数,工具和代理(六):Conversational agent_langchain agent调用函数

langchain agent调用函数

关于langchain的函数、工具、代理系列的博客我之前已经写了五篇,还没有看过的朋友请先看一下,这样便于对后续博客内容的理解:

LangChain的函数,工具和代理(一):OpenAI的函数调用

LangChain的函数,工具和代理(二):LangChain的表达式语言(LCEL)

LangChain的函数,工具和代理(三):LangChain中轻松实现OpenAI函数调用 

LangChain的函数,工具和代理(四):使用 OpenAI 函数进行标记(Tagging) & 提取(Extraction)

 LangChain的函数,工具和代理(五):Tools & Routing

 今天我们来介绍本系列博客中的最后一篇“对话代理(Conversational agent)”, 在上一篇博客“LangChain的函数,工具和代理(五):Tools & Routing”中,我们定义了两个外部函数get_current_temperature和search_wikipedia,其中get_current_temperature的功能是调用外部天气api来获取指定经纬度地区的温度,而search_wikipedia的功能是调用维基百科的api来获取相关的信息,最后我们还创建了一个带有route能力的chain, 这样我们就可以真正实现外部函数的调用功能,比如当我们向这个chain询问某地天气的时候,该chain会返回该地区的实际温度,再比如当我们向这个chain询问某些科普知识的时候,它会查询维基百科并将查询结果返回给用户,当我们向该chain打招呼的时候,它也能回复我们亲切的问候语,也就是说目前已经基本实现了让llm从上下文中自主判断是否需要调用外部函数,如需调用外部函数就通过langchain来实现自动调用外部函数并返回调用结果给到用户。目前看来自动调用外部函数的整体流程已基本打通,但结果其实并不完美,原因是外部函数调用结果都是格式化的,这对用户来说并不友好,今天我们就来解决如何让外部函数的调用结果变的对用户更加友好。我们会涉及到langchain中的agent的一些基本概念:

这里所谓的agent指大型语言模型(LLMs)与代码的一种组合,它具有推理能力和执行力。为了完成任务,agent还必须要有迭代能力(agent loop),比如agent在完成任务时可能会使用一些工具(tool),并观察工具的使用结果,如果结果不满意可以使用别的工具,直到出现满意的结果才停止。

接下来在正式“抠腚”

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/853606
推荐阅读
相关标签