什么是智能体
可以在一种流程中,最大限度的保持用户自由度的情况下,帮助用户完成某些任务.
区别于传统的"自助业务机",它最大的优势是通过用户的自然语言,自动获取相关信息并完成任务处理.
官网对智能体的定义
智能体和RAG是互补的技术,彼此增强对方在业务中的能力.在ragflow中是从0.8.0引入的.
前端配置了无代码工作流编辑器,后端全面采用基于图的任务编排框架.
该机制建立在ragflow现有的rag解决方案上,旨在协调查询意图分类,对话引导和查询重写等搜索技术,实现: 提供高检索率 , 适应复杂情景.
RagFlow的具体使用
当前以邮件发送为例子,先有一个认识
从用户的自然语言中获取到相关参数之后,就要对接发送邮箱的组件了
组件中要配置上,模型提出的参数
邮件组件只是一个执行组件,并不携带模型,发送结果有true和false
接下来就是根据邮件是否发送成功来回复用户消息
智能体支持的组件有哪些?
Begin组件
工作流程中的起始组件。
组件负责设置开场问候语 或 接受用户的输入,该组件默认填入,工作流程中只能有一个开始组件
场景:
开始组件在所有的场景下都必不可少,每一个智能体都要有开始组件,无法删除
配置:
有对话势
任务势
网络钩子????
这个请求的api是定死的 http://49.233.122.143/api/v1/webhook/508d3c26ef6211f0bb590242ac130006 但具体不知道是做什么的
变量:
变量名称:可以是中文
变量类型:
单行文本\段落文本\下拉选项值\文件上传\数字\布尔
变量关键:
唯一变量名
可选
注意事项:
文件上传:
上传到代理的输入文件不会存储在数据集中,因此不会使用RAGFlow内置的OCR、DLR或TSR模型进行处理,也不会使用RAGFlow内置的分块方法进行分块处理。
文件大小限制:
上传给代理的文件没有具体的文件大小限制。但请注意,模型提供者通常有一个默认或显式的最大令牌设置,范围为8196到128k:上传文件的纯文本部分会作为键值传入,但如果文件的令牌数超过该限制,字符串将被截断且不完整。
智能体组件
具备推理、工具使用和多代理协作能力。
组件对LLM进行微调并设置提示符。从v0.20.5起,组件能够独立工作,并具备以下功能:
基于环境反馈的自主推理,并结合反思和调整。
使用工具或子代理完成任务。
场景:
当你需要LLM协助总结、翻译或控制各种任务时,代理组件是必不可少的。
配置:
选模型
模型配置
自定义配置
温度:模型输出的随机性水平
温度越低,越精确,越高,输出的内容越发散
温度为0时,同一个提示词输出是相同的
Top P:核采样
该参数也称为“核心采样”,它设置一个阈值来选择较小的单词集进行采样。 它专注于最可能的单词,剔除不太可能的单词。
存在处罚:鼓励模型在响应中包含更多样的token
这会通过惩罚对话中已经出现的单词来阻止模型重复相同的信息。
更高的存在惩罚值意味着模型更可能生成尚未包含在生成文本中的标记。
频率惩罚:与存在惩罚类似,这减少了模型频繁重复相同单词的倾向。
更高的惩罚值意味着模型在重复令牌的使用上更为保守。
最大token数:这设置了模型输出的最大长度,以标记(单词或单词片段)的数量来衡量。
默认情况下,它被禁用,允许模型确定其回答中的token数量。
自由度:
分为精确、平衡、自定义,除了自定义之外,其他的都是对温度、Top P这些参数的默认配置。
系统提示词设置
描述任务,指定对输出的要求
用户提示词设置
这个提示词是自动填充的,紧贴变量的内容
工具
对于MCP类型的工具,如果系统提示词中没有描述,那么模型会根据情况进行调用。
MCP是一个模型上下文协议,其他的平台通过对接mcp协议,为大模型提供数据。
除了mcp之外,还可以向外发送邮件和执行相关的代码