MaxKB = Max Knowledge Base,是一款基于大语言模型和 RAG 的开源知识库问答系统,广泛应用于智能客服、企业内部知识库、学术研究与教育等场景。
一、LLM 大语言模型
大语言模型(Large Language Model,LLM)是指基于深度学习框架构建而成,能够处理大规模文本数据的模型。这些模型通过对海量文本的学习,具备理解和生成自然语言的能力,可应用于多种自然语言处理任务,如文本生成、问答系统、机器翻译等。例如 OpenAI 的 GPT-4 就是一款知名的大语言模型,它能够根据输入的文本指令,生成连贯、逻辑清晰且富有信息量的文本回复,无论是撰写文章、回答复杂问题,还是进行创意写作,都能表现出色。
二、RAG(检索增强生成)
RAG 是 Retrieval-Augmented Generation 的缩写,它将信息检索与文本生成相结合。在知识库问答系统中,先从外部知识库或文档库中检索与问题相关的信息,然后将这些信息输入到大语言模型中,辅助模型生成更准确、更有依据的回答。比如在一个企业内部知识库问答系统中,当员工询问关于公司特定项目的流程时,RAG 系统会先在项目相关的文档资料中检索出关键信息,如项目的各个阶段、负责人、时间节点等,再利用大语言模型将这些信息整合并生成详细的回答,而不是仅依靠模型自身有限的预训练知识。
三、大模型幻觉
大模型幻觉是指大语言模型生成的文本看似合理,但实际上与事实不符或在逻辑上存在错误的现象。这是由于模型在训练过程中学习到的知识可能存在偏差、不完整或过度概括等问题。例如,当询问关于某历史事件的具体时间,大模型可能会生成一个错误的年份,尽管其生成的回答在语法和表述上较为流畅,但内容却是虚构的。在 MaxKB 系统中,通过与可靠的知识库结合以及严格的信息验证机制,可以有效减少大模型幻觉的出现,确保回答的准确性。
四、多模态
多模态指的是系统能够处理多种类型的数据模态,如文本、图像、音频、视频等。在知识库问答系统中,多模态功能允许用户以多种形式提出问题,系统也能整合不同模态的信息来生成回答。例如,在一个旅游知识库问答系统中,用户可以上传一张风景图片并询问 “这是哪里”,系统会对图片进行分析识别出地点特征,再结合文本知识库中关于该地点的介绍,如景点名称、旅游攻略等信息,生成综合的回答,为用户提供更全面、直观的信息服务。
五、大模型温度
大模型温度是一个用于控制文本生成随机性的参数。较低的温度值(如 0.2)会使模型生成的文本更倾向于确定性和保守性,即生成的回答更符合常见的、大概率的语言模式,结果较为稳定和可预测;较高的温度值(如 0.8)则会增加文本生成的随机性,模型可能会生成一些更具创意、不太常见但也可能存在一定风险的回答。例如,在写诗的应用场景中,较高温度可能会创作出风格独特、富有想象力的诗句,但也可能出现一些不太符合常规语法或语义逻辑的表述;而在撰写严谨的技术文档时,较低温度可确保生成的文本准确、规范。
六、问答相似度
问答相似度用于衡量用户提出的问题与知识库中已有问题或答案之间的相似程度。在 MaxKB 系统中,通过先进的文本相似度算法,如余弦相似度算法等,计算用户问题与知识库内容的匹配度。例如,用户询问 “如何办理公司离职手续”,系统会在知识库中查找与之相似度较高的问题,如 “公司员工离职流程是什么”,如果相似度超过设定阈值,就会将对应的答案进行调整后返回给用户,以提高问答的准确性和效率。
七、引用分段数
引用分段数是指在回答问题时,从知识库中引用相关文本段落的数量。当系统检索知识库以生成回答时,会根据问题的需求和相关性确定引用的段落数量。例如,在回答一个关于某个法律条款详细解释的问题时,可能需要引用多段相关的法律条文及解释说明,此时引用分段数可能会设置得较高,以确保回答的完整性和准确性;而对于一些简单的概念性问题,可能只需要引用一到两段关键信息即可。
八、token 设置
token 是大语言模型处理文本的基本单位,类似于单词或字符片段。在 MaxKB 系统中,token 设置涉及到多个方面,如输入问题的 token 长度限制以及生成回答的 token 长度限制等。例如,如果用户输入的问题过长,超过了系统设定的输入 token 长度限制,可能需要对问题进行截断或优化处理;同样,为了控制回答的长度和详略程度,也会对生成回答的 token 数量进行设置,以避免生成过于冗长或简略的回答,确保回答既能完整地回答问题,又具有较好的可读性。
九、重排模型
重排模型用于对检索到的多个候选答案进行重新排序,以确定最终呈现给用户的最佳答案。在 MaxKB 系统中,重排模型会综合考虑多个因素,如答案与问题的相关性、答案的质量、可信度等。例如,当系统从知识库中检索到多个与用户问题相关的答案片段时,重排模型会根据这些片段与问题关键词的匹配程度、来源的权威性以及在上下文中的连贯性等因素进行打分,然后按照分数高低对答案进行排序,将最优质的答案排在前面呈现给用户。
十、多路召回功能
多路召回功能是指在检索知识库时,采用多种不同的检索策略或渠道来获取与问题相关的信息。例如,MaxKB 系统可能同时采用基于关键词的检索、基于语义的检索以及基于知识图谱的检索等多种方式。当用户提出一个问题时,系统会通过这些不同的召回路径在知识库中查找相关信息,然后将各个路径召回的结果进行整合和筛选。比如在回答一个关于某科技产品的问题时,基于关键词的召回可能找到产品的名称、型号等相关文档,基于语义的召回可能找到关于产品功能、使用场景的描述,基于知识图谱的召回则可能找到该产品与其他相关产品或技术的关联信息,通过多路召回功能可以提高检索的全面性和准确性。
十一、问题优化功能
问题优化功能旨在对用户提出的原始问题进行预处理和优化,以提高后续检索和回答的质量。MaxKB 系统可能会对问题进行词法分析、句法分析,去除停用词、纠正错别字、扩展关键词等操作。例如,用户输入 “苹果手鸡怎么用”,系统会识别出 “手鸡” 可能是 “手机” 的错别字,并进行纠正,同时可能会对 “苹果手机” 这个关键词进行扩展,如添加相关的品牌型号、操作系统等关键词,将问题优化为 “苹果手机(如 iPhone 14)如何使用”,这样可以使检索更精准,提高找到合适答案的概率。
十二、上下文历史记录携带功能
上下文历史记录携带功能允许系统在处理用户连续提问时,考虑之前的问答交互信息。在多轮对话中,这一功能尤为重要。例如,用户先询问 “某公司的主要产品有哪些”,系统回答后,用户接着问 “这些产品的市场占有率如何”,系统会根据之前回答中提到的产品信息,理解用户在第二轮问题中的 “这些产品” 指代内容,从而更精准地在知识库中检索并生成关于产品市场占有率的回答,提供更连贯、个性化的问答体验。
十三、向量化
向量化是将文本数据转换为向量表示的过程。在 MaxKB 系统中,无论是问题还是知识库中的文本内容,都要进行向量化处理。通过特定的向量表示模型,如 Word2Vec、BERT 等,将文本中的词语、句子映射到低维向量空间。例如,将 “今天天气真好” 这句话向量化后,会得到一个数值向量,这个向量能够捕捉到文本的语义和语法特征。在检索时,通过计算问题向量与知识库中文本向量的相似度,来快速定位相关信息,提高检索效率。
十四、全文检索
全文检索是一种在整个文本数据集中搜索特定关键词或短语的技术。在 MaxKB 知识库中,全文检索会对知识库中的所有文档、文章等进行逐字逐句的扫描,查找与用户问题中的关键词匹配的内容。例如,用户询问 “关于人工智能的发展趋势”,全文检索会在知识库中所有涉及人工智能的文档里查找包含 “发展趋势” 这个短语的段落,并将这些段落作为候选信息进行进一步处理,它能够快速定位到可能包含答案的文本范围,但可能会因为缺乏语义理解而检索出一些相关性不高的结果。
十五、向量检索
向量检索是基于文本的向量表示进行检索的方法。它利用向量化后的文本向量之间的相似度计算来查找与问题向量最相似的知识库文本向量。与全文检索相比,向量检索更注重语义层面的匹配。例如,对于 “如何提高员工工作效率的方法” 这个问题,向量检索会在向量空间中找到与表示该问题语义的向量最接近的知识库向量对应的文本,这些文本可能没有直接包含问题中的关键词,但在语义上高度相关,如 “提升职场生产力的有效策略” 这样的文本,从而提高检索结果的质量和相关性。
十六、混合检索
混合检索结合了全文检索和向量检索的优势。在 MaxKB 系统中,首先利用向量检索快速定位到语义相近的文本范围,然后在这个范围内再进行全文检索,进一步筛选出更精准的信息。例如,在回答 “某历史人物在特定时期的政治成就” 这个问题时,向量检索先找到与该历史人物和特定时期相关的语义相近的文本簇,然后全文检索在这个簇中查找明确提及 “政治成就” 的段落,这样既能够利用向量检索的语义理解能力,又能通过全文检索的精确匹配来提高最终检索结果的准确性和完整性,为用户提供更优质的问答服务。
飞致云 MaxKB 知识库问答系统为用户提供了高效、准确、智能的知识库问答服务,无论是在企业知识管理、智能客服,还是在其他众多需要知识问答的场景中都有着广泛的应用前景。