[Agent]-----MRKLAgentForChatModels组件开发

news/2024/12/26 20:25:44/

参考资料:

https://python.langchain.com/docs/modules/agents/agent_types/react
https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent
https://python.langchain.com/docs/modules/agents/how_to/mrkl

该agent主要使用ReAct框架来决定操作的代理,从而优化聊天模型。
agent需要的组件:tools,chatmodels
实现步骤:
第一步:定义一个tool,这里采用计算器

llm_math_chain = LLMMathChain(llm=llm, verbose=True)
tool =  Tool(name="Calculator",func=llm_math_chain.run,description="useful for when you need to answer questions about math")

第二步,定义agent方法,这里的AgentType采用的是Mrkl的chatReAct模型,使用聊天模型来代替llm去调用ReAct代理

param_dict = {"tools":[tool],"model":llm}from langchain.agents import initialize_agent,AgentTypeagentExcutor = initialize_agent(llm=param_dict.get("model"),tools=param_dict.get("tools"),agent=AgentType.CHAT_ZERO_SHOT_REACT_DESCRIPTION,verbose=True)
resp = agentExcutor.run("写一个芒果的故事 ")
print(resp)

http://www.ppmy.cn/news/1073806.html

相关文章

代码随想录第四十九天|121. 买卖股票的最佳时机 、122.买卖股票的最佳时机II

121. 买卖股票的最佳时机 题目链接/文章讲解/视频讲解&#xff1a;https://programmercarl.com/0121.%E4%B9%B0%E5%8D%96%E8%82%A1%E7%A5%A8%E7%9A%84%E6%9C%80%E4%BD%B3%E6%97%B6%E6%9C%BA.html 1.代码展示 //121.股票的最佳买卖时机 int maxProfit(vector<int>& p…

Node 使用 WebStorm 打开文件

Node 使用 WebStorm 打开文件 Node 脚本中, 打开文件. 如果有 WebStorm 就用 WebStorm 打开, 如果有 VSCode 就用 VSCode 打开, 否则 打开 目录 import { exec } from "child_process"; import fs from "fs-extra"; import open from "open";…

开源软件合集(Docker)

Docker安装 1.安装命令&#xff1a;curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun2.启动&#xff1a;systemctl start docker3.停止&#xff1a;systemctl stop docker4.重启&#xff1a;systemctl restart docker5.开机启动&#xff1a;systemctl enab…

【SpringBoot】最基础的项目架构(SpringBoot+Mybatis-plus+lombok+knife4j+hutool)

汝之观览&#xff0c;吾之幸也&#xff01; 从本文开始讲下项目中用到的一些框架和技术&#xff0c;最基本的框架使用的是SpringBoot(2.5.10)Mybatis-plus(3.5.3.2)lombok(1.18.28)knife4j(3.0.3)hutool(5.8.21),可以做到代码自动生成&#xff0c;满足最基本的增删查改。 一、新…

空时自适应处理用于机载雷达——额外的性能结果(Matla代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

js判断对象是否为空对象的方法总结

js判断对象是否为空对象的方法总结 方法1&#xff1a;JSON.stringify()方法方法2&#xff1a;for in方法方法3&#xff1a;Object.keys()方法方法4&#xff1a;Object.getOwnPropertyNames()方法方法5&#xff1a;jquery 的 isEmptyObject()方法 在面试或者开发过程中&#xff…

异或^实现数据加密

异或是一种二进制的位运算&#xff0c;符号以 XOR 或 ^ 表示。 1.1运算规则 相同为0&#xff0c;不同为1&#xff0c;即 1 ^ 1 0 0 ^ 0 0 1 ^ 0 1 由运算规则可知&#xff0c;任何二进制数与零异或&#xff0c;都会等于其本身&#xff0c;即 A ^ 0 A。 1.2 异或性质 …

linux使用不同的工具和命令来查看和放通允许访问的IP地址

在Linux系统中&#xff0c;您可以使用不同的工具和命令来查看和放通允许访问的IP地址。下面是一些常用的命令和方法&#xff1a; 查看当前开放的端口和规则&#xff1a; 使用 netstat 命令查看当前打开的端口和连接&#xff1a; Copy code netstat -tuln 使用 ss 命令也可以查…