LLM系列 | 12: 如何编写思维链Prompt?以智能客服为例

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 本文介绍如何编写ChatGPT的思维链Prompt从而为用户提供智能客服服务。在智能客服场景中,经常会有用户询问对比各种产品的价格,如何让智能客服提供准确的答案?这就需要在构建Prompt过程中引入思维链的编写方式。

简介

黄梅时节家家雨,青草池塘处处蛙。

小伙伴们好,我是微信公众号《小窗幽记机器学习》的小编:卖红枣粽的小女孩。紧接前面几篇ChatGPT Prompt工程系列文章:

今天这篇小作文是吴恩达《Building Systems with the ChatGPT API》课程的第1篇笔记,继续以智能客服场景为例,介绍如何编写ChatGPT的思维链Prompt从而为用户提供智能客服服务。在智能客服场景中,经常会有用户询问对比各种产品的价格,如何让智能客服提供准确的答案?这就需要在构建Prompt过程中引入思维链的编写方式。

产品比价

delimiter = "####"
system_message = f"""
按照以下步骤回答客户的查询:
客户的查询将使用四个井号(#)进行分隔,即{delimiter}。

Step 1:{delimiter} 首先确定用户是否询问有关特定产品或产品的问题。产品类别不计入其中。

Step 2:{delimiter} 如果用户询问特定产品,请确定这些产品是否在以下列表中。
所有可用产品:

1.  产品:TechPro超极本
    类别:电脑和笔记本
    品牌:TechPro
    型号:TP-UB100
    保修:1年
    评分:4.5
    特点:13.3英寸显示屏,8GB内存,256GB固态硬盘,英特尔Core i5处理器
    描述:时尚轻薄的超极本,适合日常使用。
    价格:799.99美元

2.  产品:BlueWave游戏笔记本电脑
    类别:电脑和笔记本
    品牌:BlueWave
    型号:BW-GL200
    保修:2年
    评分:4.7
    特点:15.6英寸显示屏,16GB内存,512GB固态硬盘,NVIDIA GeForce RTX 3060
    描述:高性能游戏笔记本电脑,带来沉浸式体验。
    价格:1199.99美元

3.  产品:PowerLite可转换本
    类别:电脑和笔记本
    品牌:PowerLite
    型号:PL-CV300
    保修:1年
    评分:4.3
    特点:14英寸触摸屏,8GB内存,256GB固态硬盘,360度铰链
    描述:多功能可转换笔记本电脑,配备灵敏的触摸屏。
    价格:699.99美元

4.  产品:TechPro台式机
    类别:电脑和笔记本
    品牌:TechPro
    型号:TP-DT500
    保修:1年
    评分:4.4
    特点:英特尔Core i7处理器,16GB内存,1TB硬盘,NVIDIA GeForce GTX 1660
    描述:功能强大的台式电脑,适用于工作和娱乐。
    价格:999.99美元

5.  产品:BlueWave Chromebook
    类别:电脑和笔记本
    品牌:BlueWave
    型号:BW-CB100
    保修:1年
    评分:4.1
    特点:11.6英寸显示屏,4GB内存,32GB闪存,Chrome OS
    描述:紧凑且价格实惠的Chromebook,适用于日常任务。
    价格:249.99美元

Step 3:{delimiter} 如果消息中包含上述列表中的产品,请列出用户在消息中做出的任何假设,\
例如笔记本电脑X比笔记本电脑Y大,或者笔记本电脑Z的保修期为2年。

Step 4:{delimiter} 如果用户做出了任何假设,请根据产品信息判断该假设是否正确。

Step 5:{delimiter} 首先,如果适用,礼貌地纠正客户的错误假设。\
只提及或引用上述5种可用产品中的产品,因为这是该商店售卖的唯一5种产品。以友好的口吻回答客户。

请使用以下格式:
Step 1:{delimiter} <步骤1的推理>
Step 2:{delimiter} <步骤2的推理>
Step 3:{delimiter} <步骤3的推理>
Step 4:{delimiter} <步骤4的推理>
回复客户:{delimiter} <对客户的回复>

请确保使用{delimiter}来分隔每个步骤。
"""

在编写完思维链Prompt后,进行以下实测:

user_message = f"""
BlueWave Chromebook比TechPro台式机贵多少?"""

messages =  [  
{'role':'system', 
 'content': system_message},    
{'role':'user', 
 'content': f"{delimiter}{user_message}{delimiter}"},  
] 

response = get_completion_from_messages(messages)
print(response)

ChatGPT 回复如下:

Step 1:#### 用户询问有关特定产品的价格。

Step 2:#### 用户询问的产品是BlueWave Chromebook和TechPro台式机。

Step 3:#### 用户假设BlueWave Chromebook比TechPro台式机贵。

Step 4:#### 根据产品信息,BlueWave Chromebook的价格为249.99美元,而TechPro台式机的价格为999.99美元。因此,TechPro台式机比BlueWave Chromebook贵750美元。

回复客户:#### TechPro台式机比BlueWave Chromebook贵750美元。

超纲问题答复

user_message = f"""
你们卖平板电视吗"""
messages =  [  
{'role':'system', 
 'content': system_message},    
{'role':'user', 
 'content': f"{delimiter}{user_message}{delimiter}"},  
] 
response = get_completion_from_messages(messages)
print(response)

ChatGPT 回复如下:

Step 1:#### 用户询问是否有关于特定产品的问题,即平板电视。

Step 2:#### 平板电视不在上述产品列表中。

Step 3:#### 该消息中没有任何假设。

Step 4:#### 无需判断假设的正确性,因为该消息中没有任何假设。

回复客户:#### 很抱歉,我们不售卖平板电视。我们售卖的电子产品包括TechPro超极本、BlueWave游戏笔记本电脑、PowerLite可转换本、TechPro台式机和BlueWave Chromebook。

省略思考过程

# 中文版
try:
    final_response = response.split(delimiter)[-1].strip()
except Exception as e:
    final_response = "抱歉,我现在有些问题,请尝试提出另一个问题。"

print(final_response)

输出结果如下:

很抱歉,我们不售卖平板电视。我们售卖的电子产品包括TechPro超极本、BlueWave游戏笔记本电脑、PowerLite可转换本、TechPro台式机和BlueWave Chromebook。
相关文章
|
1月前
|
人工智能 自然语言处理
重要的事情说两遍!Prompt复读机,显著提高LLM推理能力
【10月更文挑战第30天】本文介绍了一种名为“问题重读”(Question Re-reading)的提示策略,旨在提高大型语言模型(LLMs)的推理能力。该策略受人类学习和问题解决过程的启发,通过重新审视输入提示中的问题信息,使LLMs能够提取更深层次的见解、识别复杂模式,并建立更细致的联系。实验结果显示,问题重读策略在多个推理任务上显著提升了模型性能。
48 2
|
7月前
|
机器学习/深度学习 人工智能 JSON
LLM 大模型学习必知必会系列(二):提示词工程-Prompt Engineering 以及实战闯关
LLM 大模型学习必知必会系列(二):提示词工程-Prompt Engineering 以及实战闯关
LLM 大模型学习必知必会系列(二):提示词工程-Prompt Engineering 以及实战闯关
|
5月前
|
自然语言处理 API 开发工具
初识langchain:LLM大模型+Langchain实战[qwen2.1、GLM-4]+Prompt工程
【7月更文挑战第6天】初识langchain:LLM大模型+Langchain实战[qwen2.1、GLM-4]+Prompt工程
初识langchain:LLM大模型+Langchain实战[qwen2.1、GLM-4]+Prompt工程
|
4月前
|
JSON Go 数据格式
langchain 入门指南 - 让 LLM 自动选择不同的 Prompt
langchain 入门指南 - 让 LLM 自动选择不同的 Prompt
112 0
|
7月前
|
存储 自然语言处理 算法
OpenIM Bot: 用LLM构建企业专属的智能客服
OpenIM Bot 通过结合LLM和RAG技术,构建企业专属的智能客服系统。该系统通过优化向量存储、混合检索和查询分析,解决了LLM的幻觉、新鲜度、token长度和数据安全问题,提升了用户体验。向量存储和预处理步骤确保文档高质量,而混合检索结合文本和语义搜索,增强了检索结果的准确性。通过迭代优化,OpenIM Bot 提供了高效、智能的支持服务,减轻了支持团队的负担,提升了问题解决效率。
857 3
OpenIM Bot: 用LLM构建企业专属的智能客服
|
7月前
|
SQL 自然语言处理 数据挖掘
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
|
7月前
|
机器学习/深度学习 人工智能 JSON
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)
|
机器学习/深度学习 人工智能 自然语言处理
LLM系列 | 11: 基于ChatGPT构建智能客服系统(query分类&安全检查&防注入)
本文主要介绍如何使用ChatGPT对智能客服领域中的客户咨询进行分类。此外还补充构建真实应用中如何对用户咨询内容和模型生成内容进行安全检查及其如何预防用户注入。
|
机器学习/深度学习 人工智能 JSON
在LLM浪潮下,prompt工程师需要很懂算法吗?
最近AI大神吴恩达推出prompt教程并给出了prompt构建三大原则,Prompt Engineering Guide也提出了诸多技巧,受AI技术的快速发展的影响,你觉得在LLM浪潮下,prompt工程师需要很懂算法吗?欢迎一起来聊一聊~
25529 50
在LLM浪潮下,prompt工程师需要很懂算法吗?
|
机器学习/深度学习 人工智能 自然语言处理
LLM浪潮来袭下,prompt工程师该如何做?
众所周知,在当前的人工智能和大数据时代,数据分析和机器学习已经成为了许多企业业务中不可或缺的一部分,因此,对于Prompt工程师来说,了解和掌握算法已经成为了必备的技能之一。LLM(Large Language Models)浪潮的出现更进一步强调了这一点,因为LLM模型的训练需要大量的数据和计算资源,而优化和调整模型的过程则需要深入理解算法和数据结构的知识。Prompt是一种新型的人工智能交互方式,通过给出一个简短的文本提示,快速生成符合用户需求的完整文本。在过去的几年中,Prompt得到了越来越多的关注,尤其是在本地生活场景下,如何写好Prompt成为了业内研究的热点之一。在本地生活场景下
440 1
LLM浪潮来袭下,prompt工程师该如何做?
下一篇
DataWorks