功能介绍
快速入门
背景说明
企业中有大量知识和信息,包括政策、产品说明、流程文档和技术支持等。员工在日常工作中经常需要这些信息,以做出决策或解决问题。传统的查找方式(如手动搜索文档或向同事咨询)可能耗时且效率低下,可以借助OpsPilot,集中管理企业知识,并创建对外使用的机器人,结合大模型提供智能化回答,提升用户体验。
第一步:新建知识库
为了更好的使用机器人,需要对机器人引用的知识进行上传-存储-训练-检索,这些可在“OpsPilot-知识库”中实现。在“知识库”中创建一个知识库,以存储和管理机器人所需的所有信息和数据。
创建知识库
输入知识库的名称和描述,选择归属的组织(知识库的查看和操作权限和所属组织有关,可多选),选择Embed模型(用于知识库知识的存储,以便后续高效搜索)
进行知识库文档的上传
- 知识库文档的上传分为三类,每一类上传有其对应数据需- 1.在企业微信中创建应用
- 在网页中登录企业微信后台管理:https://work.weixin.qq.com/wework_admin
- 在应用管理中找到"自建",创建新的应用
- 本地文档(支持上传word、Excel、pdf等格式的文档)
- 网页文档(直接引用网站信息)
- 自定义文档(自行撰写的文档)
选择——提供知识本体
- 支持三种方式上传:本地文件、网页链接、自定义文本
- 本地文件:点击提示区域自动打开资源管理器,打开需要上传文件夹选取文件上传;或者提前打开文件夹,选取文件直接拖拽到有效区域内。
- 网页文档:为此文档定义名称方便理解,输入需要上传的网址链接,选择对于该网址需要跳转的网址数量(深度)。
- 自定义文本:一些零散或者自创的内容可通过手动输入创建。
提取——文档预处理1
上传的文件首先需要将文件内的文本提取出来,系统会根据文件类型初始匹配推荐方式,在配置操作中可修改。
一共4种提取方式,包括:全文提取、章节提取、工作表提取、行级提取,分别使用不同情况,可根据提取说明中的文字说明和示例图选取想要的提取方式。(全文提取中,pdf文件不可编辑的一类可启动OCR增强识别图像中的文字)
分块——文档预处理2
- 提取出文本之后,会进一步预处理知识内容,将文本分块以便后续检索能精准快速找到需要的内容。
- 提供4种分块方法,每种方法配备参数设置和分块示例以供调整。点击【查看块】可查看分块效果:
- 包括定长分块、循环分块、语义分块、不分块。
- 定长分块可设定固定的分块长度,循环分块在此基础上可设置分块之间可重叠的长度以保留前后文衔接;
- 语义分块启用Embed模型基于算法分析文字意思、逻辑分块。
- 完成阶段
- 训练状态:返回文档列表查看上传知识的状态。文档上传-切片完成后,会对所有的文档进行切片和训练,状态为“就绪”时,说明该文档可使用。
- 测试:文档创建好后,对该知识库的检索进行设置,并测试效果。
分块界面
分块界面增加“批量生成Q&A”和“批量删除”。
可编辑分块、单个生成问答对、单个删除。
卡片支持展示每个分块的对应问答对的数量和字符的数量。
支持对分块进行删除,支持单个/批量,可以仅删除分块、也可同时删除关联的问答对。
问答对——文档预处理3
生成问答对
问答对的生成方式主要为LLM大模型对分块数据智能生成问答对。并且在知识库的文档中,用户可自行选择文件或网页链接并通过LLM模型自动生成问答对。
查看问答对
在知识库中,用户可直观的查看所有问答对。问答对的信息包括名称,问答对数量,创建时间,创建者,操作等,同时可以点击查看每一份问答对拆解的详情问题和答案。
问答对界面:问答对要是关联了分块,在卡片标注“chunk”代表与原始分块关联,查看问答对详情时,也可以查看源分块的详情。
知识图谱——文档预处理4
生成知识图谱
知识图谱的生成方式主要为LLM大模型,重排模型,Embed模型智能生成知识图谱。(注意:这里的embed模型要选择与知识库创建的时候一样的embed模型)在知识库的文档中,用户可自行选择文件并通过LLM模型自动生成知识图谱。
查看知识图谱
选中的源文件汇总成知识图谱,图谱由节点和关联组成,节点分为实体,分块和社区。节点与节点之间的连线称为关联。在知识库中,用户可直观的查看所有知识图谱,同时可以点击具体查看知识图谱的节点,关系,总结等。
结果检索
用户提出问题时,智能运维OpsPilot会通过灵活路由,选择调用知识图谱,还是知识分块,问答对作为召回结果,确保用户始终能获得最优答案。
第二步:新建智能体
接下来,需要定义机器人的智能体,可以创建空白智能体,也可以直接选择内置好的模板创建智能体。根据需求设定智能体的逻辑和流程,以确保机器人能够有效地响应用户请求。
- 在配置机器人的智能体信息时,需要填写的参数如下:
- 基本信息:名称/分组/简介,可以进行修改
- LLM模型:支持选择内置的LLM大模型,大模型可以根据在知识库搜索到的结果,进行再次总结,并且回复。
- LLM的温度参数:默认为0.7,用于控制文本生成的随机性和创造性;低温度(比如0.2)会生成更确定的结果,而高温度(比如0.9)则会增加文本的多样性和随机性。通过调节温度,用户可以根据需求平衡生成内容的准确性和创新性。
- 提示:可以输入相关的提示语,引导模型生成特定的回复,通过提供上下文或问题以调节输出内容的方向和质量。
- 对话历史:默认是10:,聊天历史数量指的是系用户与机器人之间互动的对话轮次或消息总数。这一数量可以帮助机器人理解上下文,并增强回复的相关性和连贯性。
- RAG:RAG是一种将信息检索与生成模型结合的架构,先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。
- RAG来源:开启后,在对话时可以显示引用的知识来源
- 知识库:支持选择同一分组下的知识库作为知识来源,并为知识库调整阈值,从而提高回答的准确性和可靠性。
- 工具:给智能体获取外部数据或者执行操作的能力,具体调用哪个工具,由大模型自主决定。
完成设置后,用户可通过与智能体对话来测试和优化智能体效果。
第三步:新建应用机器人
当智能体创建完成后,我们需要在工作室正式创建应用机器人,并且把应用发布出去,以供大家使用。
应用需要填写名称、分组和介绍等信息,并且选择使用的模型(目前只用内置核心模型可使用),并选择这个应用使用的技能(智能体)以及发布的渠道。
应用的渠道目前支持四类,需要提前在通知(Channel)中设置好需要使用渠道的参数信息。
全部设置完后,点击“保存&发布”按钮,在配置好的渠道即可使用该应用。
第四步:使用应用
目前OpsPilOt支持 Web,企微和钉钉、网页四类通知渠道,可以按照设定的机器人域名/端口等信息,在此四类渠道上发布。
比如在企微工作台创建应用,并且接入机器人,即可实现对话。
第五步:查看对话情况
当用户对话完成后,可以在应用中查看所有用户的对话记录以及用户对机器人的使用和调用情况。
功能模块介绍
模型
在模型模块,可以对OpsPilot能够使用的相关模型进行管理和配置,目前已经内置常用模型,支持配置和新增模型。
模型管理前端展示优化:分为左右结构(llm、embed、rerank、ocr均已修改)
左侧:用树形图展示;分为全部和分组名,并备注好了每个分类模型总数;支持拖拽重新排序;支持模型分组的新增,但内置分组的不支持编辑和删除。
右侧:该分组下所有的模型,搜索和新增未变,但是模型分组的字段可进行动态获取。
LLM模型
LLM模型用于配置模型的基础配置,如凭据,方便后续的“技能”所使用
LLM模型支持编辑、开关、添加等操作:
LLM大模型的标签优化,顶部的搜索可以筛选类别的标签,一类是所属模型分组、一类是该模型的类别。
大模型编辑时,支持选择模型分组或者模型类别。
- 基础信息:包括名称、模型名称和类型,以供分组展示。
- 网址:用户可以通过配置特定的API URL来接入供应商的LLM模型,这样应用程序能够与模型进行通信,从而发送请求和接收响应。
- API密钥 :为了确保数据安全和访问控制,用户需要配置API密钥。这个密钥用于验证用户的身份,确保只有授权的用户能够访问和使用模型。
- 开启/关闭功能 :用户可以根据需要启用或禁用LLM模型,这样可以灵活使用相关模型。
- 分组:控制大模型的可见范围和使用,可多选,只有选择了的分组才可以看见该模型。
- 配额分配组:大模型的使用需要token,配额分配组用来控制大模型使用哪个分组的token,不一定要和分组的组相同,仅单选。
Embed模型
Embed模型为知识提供向量化的能力,是知识库能够进行语义检索的支撑功能,内置的这些模块可以在“知识库“中进行使用。
ReRank模型
ReRank模型可以对检索出来的知识进行重排序,让大模型在使用RAG能力的时候,知识检索效果更好。OpsPilot内置的这些模块可以在“知识库”中进行使用,用于知识库检索效果的优化。
OCR模型
OCR(光学字符识别)模型是一种用于将图像中的文本信息转化为可编辑文本数据的技术,广泛应用于文档数字化和信息提取。主要用于“知识库-知识上传”时,识别知识时使用。
工具
工具页面
OpsPilot采用 MCP 协议工具化数据接入工具,实现了异构系统间的数据贯通。通过这一技术,OpsPilot 能够将企业各个业务系统的真实数据接入平台,结合联网检索获取的实时外部知识与私域知识库沉淀的专业经验,形成立体化的知识网络。
Opspilot内置了一批通用的工具,包括k8s、Jenkins、节假日检索、联网检索等通用工具,Weops等业务专用的工具等。详见OpsPilot能力介绍文档【工具】介绍。
编辑、添加工具
MCP协议采用标准化接口设计,支持随时扩展工具类型,用户可根据实际需要添加新工具。其中变量类型下拉选择有2类:文本、密码,可选择是否为必填项,通过右边“+”即可增加变量。
- 编辑和添加的参数相同:
- 标签:为该工具标识分类,比如:运维工具、媒体工具、通用工具等,方便检索使用该工具;
- MCP链接:用户可在别的平台里开发工具,或者使用开源工具,使用MCP链接的统一接口接入,不需要单独为工具开发一个API接口,降低开发使用成本;
- 变量:支持用户为该工具定义使用时需要变更,传递给后台的变量。比如:可以通过jenkins_url(Jenkins 服务的访问地址)、jenkins_username (登录的用户名)和 jenkins_password (登录密码)这三个变量的值,来连接到不同的 Jenkins 服务并进行操作。
- 分组:控制能看见、使用该工具的分组。
工具检索
用户可以在搜索栏选择标签、输入工具名称对工具进行检索,支持多选。
知识库
知识管理模块提供了对知识库的管理,支持用户上传文件型知识、人工录入的知识、URL爬取的知识,由多个种类的知识聚合而成,并且利用各种算法提升知识索引的准确性。
知识库管理解决了以下问题
- 1、哪些知识组成了这个知识库:支持上传/爬取多种类型、多个领域的专业知识。
- 2、如何对知识使用怎么样的分块模式:内置
- 3、如何检索准确:使用混合检索+ReRank,让检索变得更加准确,混合搜索的时候,语义检索和文本检索的权重可以灵活分配
总的来说,在知识库这里对知识进行上传、管理和加工,进行精细化的配置,以供LLM技能使用。
知识库列表
知识库列表以卡片的形式展示用户有权限的知识库,普通用户可以查看/操作自己所在组织的所有知识库;超管可以查看/操作所有的知识库。知识库卡片右下角显示当前知识库的所有者和分组,方便管理。
知识库创建
- 名称:输入知识库名称
- 分组:选择该知识库所属的分组,其他用户只有在这个分组下,才能查看到该知识库
- Embed模型:主要用于词汇和数据的向量化,以便计算机更好的理解,目前内置两个模型,可以根据实际情况进行切换使用(对于已经训练好的知识库,切换模型后将会重新训练)。
- 简介 :输入该知识库的详细介绍。
知识库编辑/删除
知识库可以进行内容的重新编辑,包括重新更新名称/分组/简介,其中可以切换Embed模型,切换后整个知识库将会根据新选择的Embed模型进行所有知识的重新训练,训练的进度可在知识库详情中查看。
知识库文档管理
OpsPilot能够管理知识,包括 本地文件、网页链接、自定义文本,并供知识库使用。可以在文档列表里查看上传的知识的状态、提取方式、分块方式,不满需求的方式可以在设置里调整提取、分块方式后重新训练。
源文档重新训练时,会给二次提示:重新训练后,分块的id将会改变,所以请确定是否保留与源文档分块关联的问答对:如果删除,则与源文档分块关联的问答对均被删除;如果保留问答对,则会切断与分块的关联,但是问答对仍保存。
源文档删除时,会给二次提示:源文档删除后,分块将会被删除,则与源文档分块关联的问答对均被删除。
整个知识库切换embed模型的时候,也会给二次提示:在切换Embed模型后,需要重新训练知识库文档,所以请确定是都保留与源文档分块关联的问答对:如果删除,则与源文档分块关联的问答对均被删除;如果保留问答对,则会切断与分块的关联,但是问答对仍保存。
文本分块
文档上传
新增知识的第一步是知识上传,包括三类,文档类的知识可以直接上传、网页知识需要填写对应URL、自定义文本需要手动录入
本地文件
在日常运维过程中,会产生多种类型的知识,他们一般会以文件类型存在,这也是OpsPilot知识库中最主要的私域知识来源,根据需求自行上传多个本地文件。
网页知识
- 互联网上有非常多有用的知识,例如RabbitMQ的官方文档、Redis的官方文档,这些软件会因为对应版本的不一样,具备不一样的特性,或者具备不一样的命令行参数,可以使用网页知识,对他们进行快速、持续的知识捕获。
- 深度:输入的网址内部有多个可以进一步跳转的网址,以此类推深入,选择需要跳转多少次。1次——只打开输入的网址,获取此页面内容;2次——获取输入网址的页面内容,并打开此网址内可跳转的链接,打开这些链接去获取这些页面的内容。以此类推。
自定义文本
运维脚本的代码段、零散的碎片知识,都适合用手工录入的方式形成知识,让OpsPilot能够对其进行使用
文本提取
-
新增知识的第二步是将文件内的文本提取出来,系统会根据文件类型初始匹配推荐方式:
- 全文提取推荐格式:pdf、txt(包括自定义文本)、MD、网页链接;
- 章节提取:word;
- 工作表提取、行级提取:表格(xlsx、csv)。
一共4种提取方式,包括:全文提取、章节提取、工作表提取、行级提取,分别使用不同情况,可根据提取说明中的文字说明和示例图选取想要的提取方式。(全文提取中,pdf文件不可编辑的一类可启动OCR增强识别图像中的文字)
-
全文提取:
- 适用格式: PDF、Markdown(.md)、TXT(.txt)等
- 保留原始文本格式和段落结构,确保完整覆盖内容(PDF需OCR处理扫描内容,MD/TXT直接提取)。
- 可配置参数:OCR(Optical Character Recognition,光学字符识别)增强是指在图像或扫描文档中提取文本信息的过程。OCR增强不仅提高了文本识别的准确性,还可以结合其他处理技术,如图像预处理和后处理,以优化结果。
-
章节提取
- 适用格式: Word(.doc)等
- 利用文档的目录结构(如标题、分节符)提取内容,保持章节逻辑完整性,适合技术文档、论文等长文本。
-
工作表提取
- 适用格式: Excel(.xlsx/.csv)等
- 提取和解析Excel文档中的各个工作表,保留表格的完整结构和数据(如公式、合并单元格),会遍历每一个单元格,提取其中的所有数据,并根据需要重新组织或格式化。适合需要完整表格信息的场景。
-
行级提取
- 适用格式: Excel(.xlsx/.csv)等
- “Excel标题 + 行组合解析”提取Excel表格的标题(通常是第一行的列名),然后将后续的每一行数据与相应的标题进行组合。适配数据清洗、分析或机器学习需求,便于动态更新和关联操作。
四种文本分块方法
- 提取出文本之后,会进一步处理知识内容,对传入的知识进行分块处理。通过将知识进行分块,可以更有效地组织和存储数据,使得搜索引擎在查找相关信息时能够更快地定位目标数据,从而提高检索效率。
- 提供4种分块方法,每种方法配备参数设置和分块示例以供调整。点击**【查看块】可查看分块效果**,不满意分块效果可返回上一步重新调整配置。
- **定长分块:**将输入的文本或数据划分成较小的、易于处理的部分或“块”。可设定固定的分块长度,块大小决定了每个分块所包含的文本量,默认每块是256个字符。
- 适用格式: 文本文件(TXT)、PPT、PDF、Excel等
- 规则明确、处理高效,适合快速批量处理数据。但可能因机械分割导致语义断裂(如截断句子或表格),需权衡效率与内容完整性。
- **循环分块:**在定长分块的基础上,可设置分块之间的块重叠的长度以保留前后文衔接。块重叠是指在分块时,前一个块与下一个块之间的内容重叠部分,默认是0的,即相邻的两个分块之间不会有任何重叠部分。
- 适用格式: 长文本(PDF、TXT)。
- 通过重叠减少语义断裂,适合需要连续上下文的任务(如文本分析),但可能因重复内容导致存储冗余。
- **语义分块:**启用Embed模型,基于算法,可以进一步考虑文本或数据的上下文和意义。通过分析句子、段落或数据块的语义关系,该算法可以更准确地识别出相关内容,从而确保信息的一致性和逻辑性。
- 适用格式: 结构化文档(Word、Markdown)、技术文档(PDF 带目录)。
- 保留完整语义单元(如章节、段落、函数模块),适合需逻辑关联的长文本处理,但对文档结构或算法依赖性较高。
- 不分块:即不作任何分块处理,直接上传提取出来的全部文本。
- 适用格式: 短文本(邮件、摘要)、小型文件(单页 PPT、简单表格、短文 TXT)。
- 将整个文保留内容的全局关联性,适合需要整体理解的场景(如摘要生成、全文检索)。但对计算资源要求较高,长文本处理效率低。
完成阶段
训练状态:返回文档列表查看上传知识的状态。文档上传-切片完成后,会对所有的文档进行切片和训练,状态为“就绪”时,说明该文档可使用。
问答对
为了能够更加精准、专业地回答用户问题,我们还运用了问答对和知识图谱。用户提出问题时,智能运维OpsPilot会通过灵活路由,选择使用知识分块,问答对还是知识图谱作为召回结果,确保用户始终能获得最优答案。
生成问答对
问答对的生成方式主要为LLM大模型对分块数据智能生成问答对。并且在知识库的文档中,用户可自行选择文件或网页链接并通过LLM模型自动生成问答对。
查看问答对
在知识库中,用户可直观地查看所有问答对。问答对的信息包括名称,问答对数量,创建时间,创建者,操作等,同时可以点击查看每一份问答对拆解的详情问题和答案
在问答对的详情页面,可以多选问题再执行问题的单个/批量的生成,原来有答案的,覆盖原来答案,问答对详情页面可以筛选(全部问题、已生成答案、未生成答案)
检索问答对
用户提出问题时,OpsPilot会通过灵活路由,选择使用知识分块还是问答对作为召回结果,确保用户始终能获得最优答案。
问答对导入
问答对导入新增模板下载:json、csv。
问答对导出
问答对可进行导出。
问答对编辑
分块生成的问答对支持重新设置。
知识图谱
生成知识图谱
知识图谱的生成方式主要为LLM大模型,重排模型,Embed模型智能生成知识图谱。用户可通过点击“设置”自行选择文件并通过LLM模型自动生成知识图谱。
查看知识图谱
选中的源文件汇总成知识图谱,图谱由节点和关联组成,节点分为实体,分块和社区。节点与节点之间的连线称为关联。在知识库中,用户可直观的查看所有知识图谱,同时可以点击具体查看知识图谱的节点,关系,总结等。
检索知识图谱
用户提出问题时,OpsPilot会通过灵活路由,选择调用知识图谱,还是知识分块,问答对作为召回结果,确保用户始终能获得最优答案。
知识库设置
支持对知识库进行配置
-
知识库基础模型
- 知识库使用Embedding模型通过将文本转化为语义向量,为知识库赋予智能检索、语义关联与跨语言理解能力,实现精准匹配与隐含关系挖掘,使用的embed模型如下:FastEmbed、bce-embedding。
-
知识库的检索设置
- 返回类型分为三类,分别为知识分块,问答对,知识图谱。可同时选择多种返回类型。还可以自行选择召回数量,召回数量指检索返回块的数量,表示每次搜索后返回的块的数量的上限。
- 设置检索参数以优化搜索结果,支持如下三类检索模式
- 文本检索 :主要基于关键词匹配,可以调整文本检索的权重及匹配模式。
- 向量检索 :主要通过语义进行匹配,设置参数如检索权重、返回数量和候选数量。
- 混合检索:结合了文本检索和向量检索的优点,灵活配置两者的权重
- 设置检索参数以优化搜索结果,支持如下三类检索模式
- 返回类型分为三类,分别为知识分块,问答对,知识图谱。可同时选择多种返回类型。还可以自行选择召回数量,召回数量指检索返回块的数量,表示每次搜索后返回的块的数量的上限。
- 知识库检索:使用Elasticsearch数据库,基于倒排索引实现毫秒级响应,支持复杂查询(如全文搜索、模糊匹配、范围查询)
- 最后,还支持对知识库检索结果进行重排序,以提升搜索结果的相关性
知识库顶部菜单知识库顶部菜单栏增加“自定义文本”按钮,可进行自定义文本设置。
智能体
在OpsPilot里面,智能体是指应用机器人的能力,包括可以调用什么知识库、使用什么工具等,智能体创建完成后,可以被应用所使用。
智能体列表
- 智能体列表以卡片的形式展示用户有权限的技能,普通用户可以查看/操作自己所在组织的所有技能;超管可以查看/操作所有的技能。
- 每个智能体卡片左下角展示使用的LLM大模型和类别tab,右下角展示分组和所有者,方便选取智能体、通过类别检索智能体和分组别溯源管理。
智能体创建/编辑
- 可以创建空白智能体,也可以直接选择内置好的模板创建智能体。根据需求设定智能体的逻辑和流程,以确保机器人能够有效地响应用户请求。
- 智能体目前分为四类:
- **知识问答智能体:**结合检索与生成技术,能够从外部知识库中检索相关信息,并生成精准的问答内容,适用于开放领域的动态知识问答。
- **基础工具智能体:**将推理与行动结合,通过逻辑推导和工具调用来解决任务,适合需要实时交互与多步骤操作的场景。
- **计划分解智能体:**将任务分解为多个可执行步骤,逐步完成复杂任务,适合需要层次化规划的情境。
- **复杂决策智能体:**通过树搜索算法,模拟多步决策路径,适用于高复杂度、高不确定性的决策场景。
**创建空白智能体:**选择类型后,填写名称、分组、简介这三个基本信息,进一步的配置等新建完成后再进行。
**从模板新建智能体:**根据类型和用途,配置好各项参数,包括调用知识库、工具和提示词等等。
点击【使用该模板】即新建成功,进入该智能体可看到已经配置好基本信息,只需调整分组、知识库等。
智能体设置
基本信息
可以对智能体的基本信息进行配置
- 基本信息:名称/分组/简介,可以进行修改
- **LLM模型:**支持选择内置的LLM大模型,大模型可以根据在知识库搜索到的结果,进行再次总结,并且回复。
- **LLM的温度参数:**默认为0.7,用于控制文本生成的随机性和创造性;低温度(比如0.2)会生成更确定的结果,而高温度(比如0.9)则会增加文本的多样性和随机性。通过调节温度,用户可以根据需求平衡生成内容的准确性和创新性。
- **提示:**可以输入相关的提示语,引导模型生成特定的回复,通过提供上下文或问题以调节输出内容的方向和质量。
聊天增强
对于知识问答智能体,聊天增强包括【聊天历史】,【RAG】。聊天历史可以帮助机器人理解上下文,并增强回复的相关性和连贯性。RAG开启后先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。适用于企业知识库查询,专业问答等。
对于基础工具智能体,聊天增强包括【聊天历史】,【RAG】,【工具】。聊天历史可以帮助机器人理解上下文,并增强回复的相关性和连贯性。RAG开启后先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。工具给智能体获取外部数据或者执行操作的能力。适用于数据分析,自动化办公,问答增强等。
对于计划分解智能体,聊天增强包括【聊天历史】,【RAG】。聊天历史可以帮助机器人理解上下文,并增强回复的相关性和连贯性。RAG开启后先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。适用于项目管理,产品研发,日常规划等。
对于复杂决策智能体,聊天增强包括【聊天历史】,【RAG】。聊天历史可以帮助机器人理解上下文,并增强回复的相关性和连贯性。RAG开启后先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。适用于投资分析,战略规划等。
- 聊天历史:默认数量是10,聊天历史数量指的是系用户与机器人之间互动的对话轮次或消息总数。这一数量可以帮助机器人理解上下文,并增强回复的相关性和连贯性。
- RAG:RAG是一种将信息检索与生成模型结合的架构,先从知识库中检索相关信息,然后使用生成模型产生上下文相关的回答。
- RAG来源:开启后,在对话时可以显示引用的知识来源
- 知识库:支持选择同一分组下的知识库作为知识来源,每个知识库支持调整阈值,阈值通常表示知识库中匹配答案的相关性要求,数值越高代表匹配结果需要与用户问题更加相关,只有高相关的答案才会被选取出来作为来源。
- 添加知识库后点击它的编辑按钮,可直接跳转到该知识库进行修改。
- 工具:给智能体获取外部数据或者执行操作的能力,可以选取多个工具,具体调用哪个工具,由大模型自主决定。
- 支持在此处给该工具设置的变量赋值,实现传递参数设置控制,比如通过变更jenkins_url、jenkins_username 和 jenkins_password 这三个变量的值,来连接到不同的 Jenkins 服务并进行操作。
技能测试
当基础信息和对话增强设置好后,可以通过与机器人对话的方式,测试一下效果。
智能体规则
- 支持设定规则,以便为指定人员和用户提供个性化的服务。目前内置的规则设定为:
- 1、设定规则触发条件:
- 支持多条件,使用连接词AND、OR控制条件之间的关系;
- 通过使用途径(如企业微信)+特定内容(用户与应用的聊天中的关键词)触发下面的动作
- 2、动作:为触发规则的人群使用特定的的提示词(prompt)和特定知识库
- 1、设定规则触发条件:
智能体日志
可管理查看调用当前智能体的调用时间、客户端、状态和消息内容。
智能体API调用
提供智能体的对外接口,用户可以调用接口实现智能体的使用。
工作室
工作室模块主要用于对应用机器人进行管理,在这里可以对应用进行上线、下线,回复规则与对话记录管理等操作。为了适用不同的场景,比如服务台知识库问答,运维专门问答等场景,可以设置不同的应用。
应用机器人列表
应用机器人列表展示了所有创建的应用,支持对应用进行上线/下线。上线的应用可以正常运行,通过配置前端对话框响应与其交互的请求;下线的应用则停止工作,不再响应请求。
基础配置
对每个应用机器人进行基础模型和LLM技能的配置,让该应用具备对应能力
- 基本信息
- **描述:**针对每个应用机器人,可以设置其名称、描述等基本信息。基本信息有助于理解应用机器人的作用和状态,并且可以作为识别和搜索的条件。
- 模型:为该应用选择使用的Rasa小模型,进行简单问题的过滤和闭环,减少大模型的API调用和token消耗。
- **副本数量:**表示为AI应用运行的Pilot实例数量,通过增加实例数量提升应用的容错性和可用性,默认为1
- 技能:为该应用机器人选择智能体,比如WeOps问答等等,智能体是在基础模型上增加的技能包,可以提供更精细、更高级的语言理解和任务执行。只能选择一个。
- **渠道:**为对外提供应用的使用渠道,在【通知】已经配置好,配置好且开启的渠道可以在这里进行勾选。
- **保存和上线:**应用都设置好后,可以进行发布和上线,上线后,可以通过选择的渠道方式和应用进行对话。
通知
为了满足使用者多渠道的使用需求,应用支持设置与用户进行交互的通道,比如Web网站、企业微信、钉钉、公众号等通道配置,可以使应用更好地为用户提供服务。OpsPilot内置了多种消息通道,让应用能够与用户进行交流,支持的消息通道包含:
企业微信应用
- 参数配置:需要选择类型填写配置参数,所有参数需在企业微信的后台管理中查询到。
- 1.在企业微信中创建应用
- 在网页中登录企业微信后台管理:https://work.weixin.qq.com/wework_admin
- 在应用管理中找到”自建“,创建新的应用
- **2.**根据需求,自定义机器人的logo、命名、介绍,选择本企业微信中可见本应用的成员。
- 3.获取参数——agent id、secret
- AgentId即agent id,直接复制粘贴即可
- secret获取
- 点击查看后,在弹出的弹窗中点击发送
- 企业微信软件中收到该消息,在企业微信团队的聊天框中获取
- 4.参数获取——corp id
- 在”我的企业“中,找到企业ID。企业ID即corp id
- 在”我的企业“中,找到企业ID。企业ID即corp id
- 5.参数获取——token、aes key
- 回到”应用管理-应用-自建-刚刚建立的应用“中
- 在该应用的详情页找到”功能- 设置API接收”即可生成token和aes Key
- URL一栏填入:https://ops-pilot.canway.net/opspilot/studio,实现机器人和企业微信应用的双向交流
- token=Token 、aes key=EncodingAESKey,点击随机生成保存即可。
- token=Token 、aes key=EncodingAESKey,点击随机生成保存即可。
钉钉
- 1.需要填写参数如下
- 2.创建应用以提供与机器人的交流接口
- 进入钉钉的开发者后台,网址:https://open-dev.dingtalk.com/
- 登陆后,进入“应用开发”页,选择创建“H5微应用”,填写基础信息
- 3.参数获取client id、client secret
创建完成后,在“凭证与基础信息”中,可获得Client ID(即client id)、Client Secret (即client secret)
- 4.参数enable eventbus
- 此参数一般情况下默认为false,即仅与大模型AI进行交流,不需要更改设置。
- 在有进一步需求的情况下设置为true。
- 你希望 接收钉钉的事件 并自动处理(如智能回复、自动审批)。
- 你的大模型应用 需要监听用户消息、审批流、考勤等行为 并基于此做出智能响应。
Web
可以通过嵌入WebChat组件,在网页中与应用进行交流
公众号
- 1.需要填写参数如下:appid、secret、token、aes key
- 2.登录服务号后台(企业公众号)
- 访问微信公众平台:https://mp.weixin.qq.com/,登录企业账号
- 若无服务号,根据企业自身信息进行填写注册后再操作
- 若无服务号,根据企业自身信息进行填写注册后再操作
- 访问微信公众平台:https://mp.weixin.qq.com/,登录企业账号
- 3.参数获取:appid、secret
- 找到”设置与开发“-“开发接口管理”-"基本配置"
- 开发者ID(AppID)即appid,开发者密码(AppSecret)即secret
- 开发者ID(AppID)即appid,开发者密码(AppSecret)即secret
- 找到”设置与开发“-“开发接口管理”-"基本配置"
- 4.参数获取:token、aes key
- 找到”账户开发信息“下方的”服务器配置“
- 未启用服务器配置——修改配置
- URL填入我们的OpsPilot网址:https://opspilot-dev.deadgay.cn/
- token自定义一串英文/数字
- 随机生成AESKEY
- 点击”启用“即完成配置
- URL填入我们的OpsPilot网址:https://opspilot-dev.deadgay.cn/
- 未启用服务器配置——修改配置
- 找到”账户开发信息“下方的”服务器配置“
- 已启用配置:直接获取:令牌(Token)即token、消息加解密密钥 (EncodingAESKey)即aes key
应用日志
对话记录里面记录了应用与用户的对话记录,可以用于对话记录的审计等场景,点击详情可以查看每轮对话的细节。目前同一个渠道的同一个用户一天内的所有对话会聚合成一条记录。
应用统计
应用的运营统计,用于分析用户对应用的使用和调用情况。
设置
管理凭据
为了控制资源使用量,控制成本,支持对各个模块设置定额(包括知识库文件大小、Skil数量、Bot数量、Token量),超过设置的定额则无法继续使用。超级管理员可以在此界面为不同角色设置不同的配额。
- 针对分组:
- 目标:选择此次配置配额方案应用到哪些分组上;
- 规则:
- 统一配额:组织内每个个体均适用的配额;
- 共享配额:给定一个较大的配额,组织内个体共享此配额,不限定个人使用的配额大小;
- 统一配额:组织内每个个体均适用的配额;
- 机器人、技能:控制可以建立的机器人、技能的数量,添加的数量超过当前设置的数字;
- 知识库:限制可以上传到知识库的文件的大小,所有知识库共享此额度。单位有MB、GB,当上传资源的总大小超过额度,将会报错;
- Token数:控制当前对象对各个大模型的使用的额度,未分配到额度的大模型不可使用,每个大模型使用时消耗Token数,使用完额度之后不可再使用,需要续费等操作。支持对多个大模型设置Token。
- 规则:
- 目标:选择此次配置配额方案应用到哪些分组上;
我的凭据
- 显示我的总配额使用量,若有针对个人的配额管理方案则显示个人配额;
- 若无,则跟随当前所在分组的配额管理方案,会随着分组的改变而改变。
- 当配额不足时,可以联系管理员申请增加。
API密钥
用于身份验证和授权的安全凭证,允许用户访问特定的 API 服务。为了防止API滥用,请保护你的API密钥。