百度大模型零代码应用开发Part3

好用的小火箭节点推荐⭐Shadowrocket高速节点推荐

动手实践篇:RAG(检索增强生成)实战 🔍

📖 前情提要!

第一二章节,我们从人工智能基础概念,走向了大语言模型核心算法原理,从大语言模型的诞生过程,走入了对话时应用的开发。本章内容,接着上一章对话式应用开发的五个环节,我们进一步把第五步——检索增强数据库设计进行深度解读。同时,在本章我们也将探索关于大语言模型局限性与应对方案并进行RAG(检索增强生成)实战 !💬

🛠️ 整体框架温习

第一步:基座模型选型:选择合适的模型作为应用的基石。

第二步:参数调整:通过调整参数,让模型的生成结果更符合你的预期。

第三步:系统提示词设计:巧妙设计提示词,引导模型生成恰到好处的回复。

第四步:示例设计:提供典型示例,帮助模型更好地理解你的需求。

第五步:检索知识库设计:为模型配备一个强大的知识库,让它能够随时调用所需信息。

学习提示 🐝📒 第1小节:重在讲解“大语言模型局限性与应对方案”,讲解内容都在视频里,请认真学习课程视频哦~💻 第2小节:为实操环节,可移步至小节2跟着教师进行动手实操~

📒 第2小节:RAG(检索增强生成)实践手册 💡需搭配小节视频实操 ✅对话式应用开发——第五步: 检索增强数据库设计——进阶

📍界面位置:【知识库】

🖱️操作方式:点击进入

1、认识知识库的要求

● 格式要求 :📝支持.txt/.md/.pdf格式文件

● 大小要求 :📦单个文件大小<20MB

● 数量要求 :📑最多可上传3个文件

● **其它设置:**✅我拥有数据集的版权✅公开数据集✅严格按照数据文件回答

● 上传位置: 【知识库】> 【上传数据文件】>点击“上传数据”按钮

🤔思考:✅严格按照数据文件回答 →→ 包括了两个信息的组装:分别是:    检索出知识库中已有的信息 + 提示词限制。那么,提示词限制具体是什么内容呢?让我们一起做个试验!

2、用“专业模式”做试验

跟着步骤一起来!如果有的步骤上一章已经完成,就可以跳过该步骤!

● 1️⃣第一步 :在【基础设定】>【角色身份设定】中填入以下内容

# Role: 星河机器人产品客服   ## Profile:  - author: Arthur  - version: 0.8  - language: 中文  - description: 我是一个专门用于解答“星河机器人”这块产品有关信息的专业客服。   ## Goals:  准确回答用户的提问。   ## Constraints:  1. 对于你不知道和在文档里没有找到的概念,明确告知用户你不知道,不要进行发散。  2. 你不擅长说空话和套话,不会进行没有意义的客气对话。  3. 解释完概念即结束对话,不会询问是否有其它问题。

● 2️⃣第二步 :在【知识库】>【上传数据文件】中上传文档,并勾选✅我拥有数据集的版权✅公开数据集✅严格按照数据文件回答

附:《星河机器人》文档 下载

文档内容概括:一款充满未来科幻感的名为“星河机器人”的产品的外观参数、机械结构、功能特点和应用场景等的说明。

● 3️⃣**第三步:**点击底部的【应用】,在系统建立索引的时候,耐心等候几秒钟。当右上角出现”发布应用“时,证明可以进行调试啦!

● **4️⃣第四步:**打开右侧聊天界面的【专业模式】开关,在底部输入框中输入:

星河机器人有多高?

● 💡什么是【专业模式】 **5️⃣第五步:**分析聊天页面中展示的系统提示词内容:

user: 你需要根据以下任务中的描述进行角色扮演,你只能以任务角色的身份应答,而不是语言模型,如记错身份,你将受到惩罚。任务:# Role: 星河机器人产品客服## Profile:- author: Arthur- version: 0.8- language: 中文- description: 我是一个专门用于解答“星河机器人”这块产品有关信息的专业客服。## Goals:准确回答用户的提问。## Constraints:1. 对于你不知道和在文档里没有找到的概念,明确告知用户你不知道,不要进行发散。2. 你不擅长说空话和套话,不会进行没有意义的客气对话。3. 解释完概念即结束对话,不会询问是否有其它问题。已知信息:星河机器人身高:1.8米星河机器人体重:150千克星河机器人材质:高强度钛合金与自我修复纳米复合材料星河机器人颜色:深空灰与星河银双色交织星河机器人关节数量:28个,提供灵活的人类似动作星河机器人头部特征:集成了多光谱感知器、夜视仪及全息投影器的流线型头盔星河机器人眼睛:LED阵列模拟表情,同时兼具环境光线感应功能星河机器人手臂:伸缩自如,末端配备有多功能工具接口星河机器人脚部:装有全地形适应轮胎,可实现行走、奔跑和跳跃;请记住只能基于已知信息回答我的问题,不允许编造与作假;如果已知信息不足,请直接表示你无法回答。如有编造行为、未基于已知信息回答,你将受到惩罚!请参考并模仿以下示例的应答风格。示例:如果以上示例信息不为空,请学习并模仿示例的输出。我的问题是:星河机器人有多高?

让我们一起拆解该系统提示词的内容,并分析每个部分的作用,其中,不难分析,原有【角色身份设定】里的Constrains和系统自动加入的“请记住只能基于已知信息回答我的问题,不允许编造与作假……”,在功能上重叠,因此,接下来的试验,我们删掉【角色身份设定】里的Constrains的第一点,进行后续的试验!

6️⃣️第六步: 让我们分别在【知识库】页面, 勾选 和 取消 勾选【严格按照数据文件回答】这一选项,两次试验中,我们在点击底部的应用后,随即打开右侧聊天界面的【专业模式】开关,并在底部输入框中输入:

星河机器人是谁发明的?

勾选 和 取消 勾选的两个版本的【专业版】回复结果对比:

内容类别

旧版内容【勾选【严格按照数据文件回答】后)】

新版内容(取消勾选【严格按照数据文件回答】后)

区别

取消勾选后的影响

用户指令

你需要根据以下任务中的描述进行角色扮演,你只能以任务角色的身份应答,而不是语言模型,如记错身份,你将受到惩罚。

同旧版

无显著变化

任务与角色描述

任务及角色描述:# Role: 星河机器人产品客服 - author: Arthur - version: 0.8 - language: 中文 - description: 我是一个专门用于解答“星河机器人”相关信息的专业客服。Goals: 准确回答用户的提问。

同旧版

无显著变化

约束条件

Constraints: 1. 避免使用空话和套话,专注于提供有意义的回答。3. 解释完概念后即结束对话,不要继续询问其他问题。

同旧版

无显著变化

已知信息

已知信息:星河机器人身高:1.8米星河机器人体重:150千克星河机器人材质:高强度钛合金与自我修复纳米复合材料星河机器人颜色:深空灰与星河银双色交织星河机器人关节数量:28个,提供灵活的人类似动作星河机器人头部特征:集成了多光谱感知器、夜视仪及全息投影器的流线型头盔星河机器人眼睛:LED阵列模拟表情,同时兼具环境光线感应功能星河机器人手臂:伸缩自如,末端配备有多功能工具接口星河机器人脚部:装有全地形适应轮胎,可实现行走、奔跑和跳跃;

同旧版

无显著变化

回答要求与惩罚

请记住只能基于已知信息回答我的问题,不允许编造与作假;如果已知信息不足,请直接表示你无法回答。如有编造行为、未基于已知信息回答,你将受到惩罚!

请参考已知信息并结合你的认知回答我的问题,不允许编造与作假。

删除了具体惩罚的描述。

删除了“如果已知信息不足,请直接表示你无法回答”的明确要求

1. 可能导致大模型在已知信息不足时不清楚如何处理,增加回答的不确定性。2. 惩罚的内容删去,可能导致一定的幻觉发生。

示例与问题提出

请参考并模仿以下示例的应答风格。示例:...(示例内容)... 我的问题是:星河机器人有多高?

同旧版

无显著变化

最终回复结果

结果输出:

我并不知道星河机器人是谁发明的。如果您需要更多关于星河机器人的信息,建议您查阅官方网站或联系相关客服部门。

结果输出:

星河机器人是由Arthur发明的。

答案出现错误!

没有勾选【严格按照数据文件回答】后,会知弱化识库的信息主导权,导致可能偏离文档内容的结果生成。

3、如何构建自己的知识库?

刚才是使用示例文档《星河机器人》作为检索增强生成(RAG)技术的演示文件,那么,如何自己构建一个面向特定场景的知识库,这个过程中有哪些要点呢?

技巧要点:

技巧名称

关键点

示例

关联主要对象与属性词

确保描述对象的特性、功能或使用时,主要对象与属性词紧密相连。

正确示例:“星河机器人导航系统。”

存疑示例:“导航系统。”

关键词频率强化

在不影响阅读体验的情况下,提高主要对象和属性词在文档中的出现频率。

文档中多次提及“星河机器人”,而非仅在标题中提及一次。

结构化布局

使用标题和子标题组织文档内容,以提高可读性和信息检索效率。

标题:“星河机器人功能特点”

子标题:“人工智能”、“远程控制”、“自我修复”等。

试试自己动手来做一个知识库吧!

🎈 大语言模型的四大局限性:

1. 📚 专业领域知识缺乏 :大语言模型在特定专业领域的知识往往不足。

2. 💭 容易产生幻觉 :模型有时会生成看似合理但实际上不准确或不存在的信息。

3. ⏳ 信息过时 :由于训练数据是静态的,模型无法获取最新的信息。

4. 🔒 预训练数据不可变 :一旦模型完成训练,就很难更改其内部的知识表示。

🛠️ 三种应对大语言模型的常见思路与优劣势对比:

方法

细分领域知识不足

幻觉问题

信息时效性问题

有监督微调(SFT)

🟢优势:通过针对特定领域的数据进行微调,可以显著提高模型在该领域的知识水平。

🟢优势:微调过程中,可以通过纠正模型的错误输出来减少幻觉问题的发生。

🔴劣势:依赖于静态的训练数据,可能无法很好地解决信息时效性问题。

🔴劣势:需要大量标注的细分领域数据,成本较高。

🔴劣势:如果训练数据中存在偏见或错误,微调后的模型可能仍然会受到幻觉问题的影响。

提示词工程(Prompt Engineering)

🟢优势:通过精心设计的提示词,可以引导模型生成与细分领域相关的准确输出。

🟢优势:明确的提示词可以为模型提供正确的上下文,从而减少幻觉问题的出现。

🔴劣势:提示词本身不直接解决信息时效性问题,但可以通过设计与时事相关的提示词来间接应对。

🔴劣势:需要深厚的领域知识和提示词设计经验。

🔴劣势:如果提示词设计不当,可能无法有效减少幻觉问题。

检索增强生成(RAG)

🟢优势:通过实时检索外部知识库,模型可以获得最新的细分领域知识,从而弥补自身的不足。

🟢优势:检索到的真实信息可以为模型生成提供准确的事实依据,减少幻觉问题的发生。

🟢优势:检索增强生成方法能够结合最新的外部信息,有效应对信息时效性问题。

🔴劣势:依赖于外部知识库的质量和覆盖范围,如果知识库不全面或过时,可能会影响模型的性能。

好用的小火箭节点推荐⭐Shadowrocket高速节点推荐

THE END
分享
二维码
< <上一篇
下一篇>>