建筑设计模板,广州网站建设优化方案,花卉网站建设的总结与,wordpress阿里秀模板【2024最全最细LangChain教程-13】Agent智能体#xff08;二#xff09;-CSDN博客 之前我们介绍了langchain的agent#xff0c;其实不难看出#xff0c;agent是更高级的chain#xff0c;可以进行决策分析、可以使用工具#xff0c;今天我们开始开启一些更高阶的课程… 【2024最全最细LangChain教程-13】Agent智能体二-CSDN博客 之前我们介绍了langchain的agent其实不难看出agent是更高级的chain可以进行决策分析、可以使用工具今天我们开始开启一些更高阶的课程来看一下多Agent构成的相对复杂的系统而且我们开始研究一下github上高星的项目看看这些项目的设计思想、工程结构、代码实现和应用场景对于我们自己构造复杂多Agent系统大有裨益。 我们首先来看一下SalesGPT这个项目项目的git地址如下GitHub - jerry1900/SalesGPT: Context-aware AI Sales Agent to automate sales outreach. 我自己也fork了这个项目所以大家直接去我的github上看这个项目就行。我关注和学习这个项目有两个原因
1. 我认为应用大模型在营销上具有巨大的想象空间和应用场景这个虽然现在不是热点但是未来一定是重要的人工智能应用领域
2. 从技术上学习多agent部署、对话阶段判断、提示词模板转换等技术这些技术在其他项目里也会有应用
1. SalesGPT的简单介绍 这个项目想做的事情并不复杂就是利用大模型技术打造一个可以和用户交流、向用户推销产品的机器人。这个机器人把销售过程分为如下步骤下面是这些步骤和样例内容如下图所示 Introduction: 您好我是来自XYZ公司的ChatGPT。我们是一家专注于提供创新解决方案的公司。 Qualification: 您好我想确认一下您是否是负责公司决策的相关人员 Value Proposition: 我们的产品/服务可以帮助您提高效率降低成本并提升您的业务竞争力。 Needs Analysis: 您认为目前您的业务中存在哪些主要挑战或问题 Solution Presentation: 基于您提到的挑战我们的产品/服务可以提供以下解决方案... Objection Handling: 如果您有任何对我们产品/服务的顾虑或疑问我很乐意解答并提供更多信息。 Close: 针对我们讨论的内容您是否有兴趣进一步了解我们的产品/服务如果是的话我们可以安排一个演示或提供更多资料。 End Conversation: 如果您目前没有兴趣或时间进一步了解我完全理解。感谢您的时间如果您未来有任何问题或需要随时联系我们。祝您一切顺利。 这个项目的核心思想是要依靠大模型作为判断和推理引擎通过设置多个agent判断和用户交流的状态以确定不同的销售阶段给大模型不同的提示词策略这个项目的整体核心流程如下图所示 2. 业务流程介绍 2.1 Seed the Agent 初始化一个agent设置启动agent所必须的数据比如销售产品信息、销售人员设置等信息 2.2 Autonomous Sales Agent 启动agent开始决策判断决定下一步的动作是调用工具还是将结果呈现给用户还是做其他的操作 2.3 Human Input 接收用户的输入并把用户和机器人的输出都放到memory里。 2.4 Stage Analyzer 这一步是我最感兴趣的我想知道这个Agent是基于什么来判断不同的销售l阶段。这个在任何其他场景里都极有用处比如我之前构造的旅游聊天机器人如果可以判断出他对某个地方特别感兴趣就可以给他推销一下旅游产品广告了这个非常有用。 2.5 Adjust agent’s prompt based on conversation stages 这个也是我感兴趣的地方就是他可以通过不同的对话阶段调整agent使用的模板我不知道他这个是怎么去实现的这个也是我想学习的地方。
3. 项目部署和安装 项目的部署和安装其实并不太复杂项目的调用代码也很简答但是这些不是最重要的最重要的是要我们解构一下这个项目看看里面真正的逻辑是什么样的尤其是阶段判断和提示词调整两块的东西是怎么做的。 项目调用代码
import os
from salesgpt.agents import SalesGPT
from langchain_community.chat_models import ChatLiteLLMfrom dotenv import load_dotenv
load_dotenv() # make sure you have .env file with your API keys, eg., OPENAI_API_KEYsk-xxx# select your model - we support 50 LLMs via LiteLLM https://docs.litellm.ai/docs/providers
llm ChatLiteLLM(temperature0.4, model_namegpt-3.5-turbo) sales_agent SalesGPT.from_llm(llm, use_toolsTrue, verboseFalse,product_catalog examples/sample_product_catalog.txt,salesperson_nameTed Lasso,salesperson_roleSales Representative,company_nameSleep Haven,company_businessSleep Haven is a premium mattress company that providescustomers with the most comfortable andsupportive sleeping experience possible. We offer a range of high-quality mattresses,pillows, and bedding accessories that are designed to meet the unique needs of our customers.)
sales_agent.seed_agent()
sales_agent.determine_conversation_stage() # optional for demonstration, built into the prompt
# agent
sales_agent.step()# user
user_input input(Your response: ) # Yea, sure
sales_agent.human_step(user_input)# agent
sales_agent.determine_conversation_stage() # optional for demonstration, built into the prompt
sales_agent.step()# user
user_input input(Your response: ) # What pricing do you have for your mattresses?
sales_agent.human_step(user_input)# agent
sales_agent.determine_conversation_stage() # optional for demonstration, built into the prompt
sales_agent.step() 我们从下节课开始先不去部署和调用他的代码我们主要做的是把这个项目的工程结构和核心代码进行拆解然后我们模仿他的结构和核心原理自己构造一个销售机器人应用于我们自己的旅游聊天机器人里。