使用Lindorm AI引擎构建私域数据知识问答AIGC业务 本文介绍了如何利用Lindorm AI引擎构建私域数据知识问答AIGC业务,探讨了基于向量检索和Prompt Engineering的解决方案,提供了详细的操作步骤和示例代码,旨在帮助用户简化知识问答应用的开发过程。
• 主要观点 1
深入探讨了私域数据知识问答的构建方法
2
提供了详细的操作步骤和示例代码
3
结合了最新的AI技术和实践
• 独特见解 • 实际应用 • 关键主题 1
Lindorm AI引擎
2
私域数据知识问答
3
向量检索与Prompt Engineering
• 核心洞察 1
提供一站式解决方案,简化应用开发
2
结合多种AI模型,提升知识问答的准确性
3
详细的操作指南和代码示例
• 学习成果
示例
教程
代码示例
可视化内容
基础知识
高级内容
实用技巧
最佳实践
“ Lindorm AI引擎在知识问答中的应用介绍Lindorm AI引擎提供了一站式解决方案,用于构建私域数据知识问答AIGC应用。通过将Lindorm AI引擎与内置的向量搜索能力集成,用户只需一条SQL语句即可轻松构建知识问答功能,极大地简化了应用开发。这消除了传统方法中涉及的复杂性,例如微调大型语言模型(LLM)或单独管理向量数据库。
“ 背景:构建私域数据知识问答系统基于大型语言模型(LLM)的私域数据知识问答系统的需求日益增长。目标是使在公共语料库上训练的LLM能够利用专用知识库中的知识来回答问题,适用于企业内部场景,如智能工单问答。现有解决方案包括在特定数据集上微调LLM,或使用向量检索来补充用户提示,从数据集中提取相关文档。后者基于‘向量检索+Prompt Engineering’,由于微调成本高且时效性差,因此更受欢迎。这种方法涉及文档切片、提取嵌入以及管理文档更新,而Lindorm AI引擎简化了所有这些过程。
“ 使用Lindorm AI引擎的先决条件在开始之前,请确保Lindorm AI引擎已激活。同时,请验证您的宽表引擎版本是否为2.5.4.3或更高版本。如果您使用的是早期版本,请考虑升级或联系Lindorm支持寻求帮助。此外,请确认已启用S3协议兼容性功能和非结构化数据向量检索功能。这些先决条件可确保Lindorm AI引擎的无缝集成和最佳性能。
“ 所用AI模型概述私域数据知识问答解决方案涉及多个AI模型。本示例使用ModelScope的BERT文本分割模型进行文本切片,使用Hugging Face的text2vec-base-chinese模型进行文本向量化,并使用Hugging Face的ChatGLM-6B-int4模型作为LLM。需要注意的是,阿里云不保证第三方模型的合法性、安全性或准确性,用户有责任遵守使用条款和相关法律法规。
“ 数据准备:创建和填充知识库首先,使用Lindorm-cli等工具连接到宽表引擎。然后,创建一个表来存储知识库文档。例如:
```sql
CREATE TABLE doc_table (
id VARCHAR,
doc_field VARCHAR,
PRIMARY KEY(id)
);
```
接下来,向表中插入数据。这些数据将作为问答系统的知识库。示例数据包括有关Lindorm功能、更新和能力的信息。
“ 全量检索问答实现要实现全量检索问答,请使用`CREATE MODEL`语句创建一个模型,指定源表、目标字段、任务、算法和设置。例如:
```sql
CREATE MODEL rqa_model
FROM doc_table
TARGET doc_field
TASK RETRIEVAL_QA
ALGORITHM CHATGLM3_6B
SETTINGS (doc_id_column 'id');
```
然后,使用`ai_infer`函数执行检索问答:
```sql
SELECT ai_infer('rqa_model', 'Lindorm是什么');
```
结果将是LLM基于知识库生成的答案。
“ 增量检索问答实现要启用增量处理,该功能可自动处理知识库中新增、修改或删除的文档,您需要激活流引擎和数据订阅。通过LTS以Pull模式创建数据订阅通道,指定Lindorm表名和Kafka主题名。然后,创建一个增量检索问答模型:
```sql
CREATE MODEL rqa_model
FROM doc_table
TARGET doc_field
TASK RETRIEVAL_QA
ALGORITHM CHATGLM3_6B
SETTINGS (doc_id_column 'id',
incremental_train 'on',
lts_topic 'rqa_xxx_topic' );
```
像往常一样执行检索问答:
```sql
SELECT ai_infer('rqa_model', 'Lindorm是什么');
```
结果将反映更新后的知识库。
“ 语义检索(可选)如果您需要与其他LLM集成,可以创建一个语义检索模型,使Lindorm仅执行知识库语义检索功能(包括文档切片、向量化和向量检索)。创建一个仅处理全量文档的语义检索模型:
```sql
CREATE MODEL sr_model
FROM doc_table
TARGET doc_field
TASK SEMANTIC_RETRIEVAL
ALGORITHM TEXT2VEC_BASE_CHINESE
SETTINGS (doc_id_column 'id');
```
执行语义检索:
```sql
SELECT ai_infer('sr_model', 'Lindorm是什么');
```
您可以选择设置`score`参数来返回语义相似度分数。
“ 总结:使用Lindorm AI引擎简化知识问答Lindorm AI引擎提供了一个全面而高效的解决方案,用于构建私域数据知识问答AIGC应用。通过利用其内置的向量搜索能力和简化的SQL接口,开发人员可以轻松创建智能问答系统,从而减少开发时间和复杂性。无论您需要全量检索、增量更新还是语义搜索,Lindorm AI引擎都提供了满足您需求的工具和灵活性。
原始链接:https://help.aliyun.com/document_detail/2401799.html
评论(0)