ragflow聊天助理参数设置探索(附案例)

写在前面

最近在使用ragflow做知识库,对聊天助理的一些参数做了一些探索,这里分享一下,欢迎讨论。

助理设置页面

也就是这个页面
在这里插入图片描述

空回复

如果设置了这个值,ragflow在知识库中没有检索到用户的问题,ragflow就直接将空回复的值作为回答,此时不去询问LLM,直接回复。
如果不设置这个值,ragflow在知识库中没有检索到用户的问题,就会去询问LLM这个问题
案例:
如下我们设置了空回复
在这里插入图片描述
可以看到AI直接回复,在知识库中没有找到
在这里插入图片描述
我们不设置空回复
ragflow如果没找到知识库的相关内容,就会去询问LLM我们的问题
在这里插入图片描述

Tavily API Key

开启后,ragflow回答问题,除了检索知识库,还会检索互联网,把检索到的内容输入LLM,注意此时互联网的内容同样会被当做知识库的内容
案例:
不使用Tavily
在这里插入图片描述
使用Tavily ,可以看到ragflow搜索了网上的内容
在这里插入图片描述

提示引擎设置页面

在这里插入图片描述

系统提示词

ragflow会将知识库搜索的知识放入提示词的 {knowledge}里,一同输入给LLM
案例:
当我们提示词为:
当所有知识库内容都与问题无关时,你的回答必须包括“知识库中未找到您要的答案!”
在这里插入图片描述
当我们提示词为:当所有知识库内容都与问题无关时,你可以根据你已有的知识进行回答。
可以看到AI会有自己的想法,这时就容易产生幻觉
在这里插入图片描述

推理

https://ragflow.io/docs/dev/implement_deep_research

一般会结合Tavily联网搜索使用
根据ragflow原文,启用后LLM集成Deep Research,Deep Research会将用户的问题拆分为多个子问题去多轮检索(模拟人的思考过程)
在这里插入图片描述
案例:
我们开启推理,问特朗普和马斯克谁的儿子更多?可以看到Deep Research会把问题分为特朗普有多少个儿子,马斯克有多少个儿子这两个问题去搜索,然后把搜索的知识给LLM
在这里插入图片描述
LLM会根据Deep Research搜索到的知识去回答
在这里插入图片描述
如果我们不开启推理,LLM就会根据自己已有的知识去回答
在这里插入图片描述

模型设置

在这里插入图片描述
温度和Top P是影响LLM输出的随机性。
存在处罚和频率惩罚就是影响LLM输出的多样性。

强烈建议看这篇文章。

https://blog.csdn.net/u012856866/article/details/140308083

我们需要明确的是模型输出的一个单词的概率,这几个变量本质都是影响模型输出单词的概率,从而影响最终的结果。
例如,
提问:我喜欢___。
模型预测:苹果概率70%,香蕉20%,西瓜%
模型回答:苹果
但通过调节温度、Top P、惩罚。就可能让模型回答:香蕉

温度

对于同一个问题,LLM输出的随机性
值越大,对于同一个问题LLM输出的答案越相似
案例:
如果温度设置为1,那你相同的问题,LLM回答的答案基本就没变化
在这里插入图片描述
在这里插入图片描述

Top P

Top P也是用来控制输出的随机性。
Top P值越大,同一个问题,AI的回答就越随机,相反值越小AI回答的内容就越相同
案例
我们设置Top P为1,可以看到同一个问题,两次回答AI的差别很大
在这里插入图片描述在这里插入图片描述

存在处罚

这会通过惩罚对话中已经出现的单词来阻止模型重复相同的信息。只要这个单词LLM说过,下次说就会受到乘法

频率处罚

与存在惩罚类似,这减少了模型频繁重复相同单词的倾向。这个单词出现的频率越多,处罚越严重。

一般来说,如果只存在一个正确答案,并且您只想问一次时,就应该将频率惩罚和存在惩罚的数值设为零。但如果存在多个正确答案(比如在文本摘要中),在这些参数上就可以进行灵活处理。

写在后面

还没想好

<think>好的,我现在要帮用户解决如何配置RAGFlow参数来创建数据集和对话式AI助手的问题。首先,我需要回忆一下用户提供的参考信息,特别是引用[1]和引用[2]。引用[1]提到了DeepSeek+RAGFlow在企业级知识库中的应用,而引用[2]详细介绍了RAGFlow的Agent功能,包括知识检索、生成回答等节点的使用,特别是对话节点和循环路径的功能。 用户的问题是关于参数配置的,我需要分两部分回答:创建数据集和配置对话助手。首先,创建数据集需要处理数据源、预处理、索引参数等。根据引用[1],可能涉及到文档解析、分块策略、嵌入模型选择等参数。比如分块大小、重叠窗口、元数据设置这些都需要详细说明。然后,索引参数可能包括向量数据库类型、索引算法选择,比如HNSW或IVF-Flat,这些会影响检索效率和准确性。 接下来是对话助手配置部分,引用[2]提到了使用Agent功能,包括知识检索节点、生成回答节点、对话节点等。这里需要解释每个节点的参数,比如知识检索的相似度阈值、返回结果数量,生成回答的模型选择(比如DeepSeek-R1-Lite-Preview),以及对话节点中的上下文轮次和回复风格。还要提到如何设置循环路径来优化流程,减少重复工作。 需要注意的是,用户可能希望具体的步骤和参数示例,所以应该给出实际例子,比如分块大小设置为512,重叠窗口128,使用HNSW算法等。同时,要强调根据实际需求调整参数,比如数据复杂度高可能需要更小的分块,或者更高的相似度阈值来过滤结果。 另外,用户可能关心如何确保回答的准确性和流畅性,所以需要提到引用中的节点组合使用,比如先检索知识再生成回答,并且通过对话节点管理上下文。还要提醒用户参考官方文档,因为具体参数可能随版本更新而变化。 最后,生成相关问题时要围绕参数配置、优化、常见问题、性能影响和上下文管理等方面,确保覆盖用户可能进一步询问的方向。</think>在RAGFlow配置参数创建数据集和对话式AI助手需要分步骤进行设置,以下从系统参数配置和技术实现两个层面进行说明: 一、数据集创建参数配置 1. 数据源参数 - 文档解析参数:设置PDF解析精度$dpi \geq 300$,支持自动识别表格和公式结构 - 分块策略:设置滑动窗口大小为$w=512$token,重叠窗口$o=128$token - 元数据配置:定义文档来源、更新时间等字段$metadata=\{source, timestamp\}$ 2. 索引参数 - 向量化模型:选择text2vec-large-chinese或multilingual-e5-large - 索引类型:设置HNSW算法参数$ef\_construction=200$,$M=16$ - 混合检索:配置BM25权重$\alpha=0.4$,向量相似度权重$\beta=0.6$ 二、对话助手参数配置 1. 知识检索节点 - 设置相似度阈值$threshold=0.65$[^1] - 配置最大返回结果$top\_k=5$ - 定义查询扩展参数$expansion\_ratio=0.3$ 2. 生成回答节点 - 选择LLM模型:DeepSeek-R1-Lite-Preview(默认) - 设置temperature=0.7,max_tokens=1024 - 启用引用标注功能$enable\_citation=true$ 3. 对话节点 - 配置上下文轮次$context\_window=3$ - 设置回复风格参数$tone=formal$ - 定义敏感词过滤列表$filter\_list=[...]$ 示例参数配置文件片段: ```yaml retrieval_params: chunk_size: 512 chunk_overlap: 128 embedding_model: text2vec-large-chinese index_type: HNSW dialog_params: temperature: 0.7 max_history: 5 similarity_threshold: 0.65 ``` 建议根据实际业务需求调整以下参数: 1. 数据复杂度高时减小chunk_size至256 2. 领域专业性强时提升similarity_threshold至0.75 3. 需要长文本生成时增大max_tokens至2048
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值