游乐游手机版
首页/AI热点日报/热点详情

MyScale与Dify构建RAG聊天机器人教程

类型:热点整理2026-06-23
如果要问当前AI领域最具热度的方向,大型语言模型(LLM)的落地应用无疑稳居前列。不管是客服系统、任务自动化,还是个性化体验,LLM的潜力非常明确。但现实是,把LLM应用从概念推向实际部署,往往没那么简单——对绝大多数缺乏深厚技术背景的人来说,传统开发方式意味着大量编程工作,这本身就是一道很高的门槛

如果要问当前AI领域最具热度的方向,大型语言模型(LLM)的落地应用无疑稳居前列。不管是客服系统、任务自动化,还是个性化体验,LLM的潜力非常明确。但现实是,把LLM应用从概念推向实际部署,往往没那么简单——对绝大多数缺乏深厚技术背景的人来说,传统开发方式意味着大量编程工作,这本身就是一道很高的门槛。

Dify正是在这样的需求下进入公众视野。这是一个主打开发者友好的LLM应用开发平台,把复杂的模型集成、RAG检索、工作流编排等环节,变成了一套相对直观且可操作的流程。即使是技术背景较弱的用户,也能借此跨入AI应用开发的门槛。本文将使用Dify和MyScale,完整演示搭建一个RAG(检索增强生成)应用的全过程,看看这套组合究竟有多顺手。

Dify是什么

Dify是一个开源平台,核心定位是LLM应用开发。它的突出亮点在于对多种LLM的“开箱即用”支持——你可以根据不同业务需求灵活选择最合适的模型,而不会被某一家模型厂商锁定。此外,Dify还集成了从Agent构建、AI工作流编排,到RAG检索和模型管理的一整套能力,基本覆盖了构建并运营生成式AI原生应用过程中最棘手的环节。

下图展示了Dify与LangChain、Flowise、OpenAI Assistants API等主流方案的横向对比:

Dify目前提供两种部署模式:一是基于Web的云平台版本,开箱即用;二是本地部署版本,适合对数据隐私和安全性要求较高的团队。本文使用本地部署版本来构建RAG应用。

01 下载Dify

第一步很简单,从GitHub上将Dify仓库克隆到本地:

git clone https://github.com/langgenius/dify.git

02 选择合适的向量数据库

RAG应用最终效果的好坏,很大程度上取决于检索文档的速度与准确性。默认情况下,Dify自带Weaviate作为向量数据库,但这次我们改用MyScaleDB。MyScale是一款基于SQL的向量数据库,在查询速度和精度方面表现相当突出,在多项基准测试中排名靠前。对于RAG应用而言,使用MyScale意味着数据能以更高的精度被检索回来,用户体验自然更上一层楼。

如何在Dify中使用MyScale

Dify同时支持开源版MyScaleDB和企业版MyScale Cloud。如果你计划直接使用开源版,这一步可以跳过。如果使用企业版,需要先访问MyScale注册页面创建账户,然后在“集群”页面点击右上角的“+ 新建集群”,填入集群名称,等待启动完成。之后点击集群右侧的“操作”按钮,选择“连接详情”,将“Python”选项卡中的host/port/username/password信息记录下来。这些信息将在后续配置Dify访问MyScale时用到。

将MyScale与Dify集成

进入Dify的`docker`目录,首先创建`.env`文件的副本:

cd docker
cp .env.example .env

接着将刚才从MyScale获取的信息填入文件。具体操作如下:

  • 将`VECTOR_STORE`设置为`MyScale`:
VECTOR_STORE=MyScale
  • 如果使用的是MyScale Cloud,根据网页上获取的信息调整相关配置(`MYSCALE_DATABASE`保持默认即可)。如果是开源版MyScaleDB,以下配置无需改动:
MYSCALE_HOST=your-hostname-here
MYSCALE_PORT=8443
MYSCALE_USER=your-username-here
MYSCALE_PASSWORD=your-password-here
MYSCALE_DATABASE=default
MySCALE_FTS_PARAMS=

MyScaleDB内置了强大的全文搜索功能,可以高效处理大型文本数据。`MYSCALE_FTS_PARAMS`变量用于配置这些搜索参数,例如分词器和大小写敏感度。本文使用默认分词器,直接在`.env`文件中添加以下一行即可:

MySCALE_FTS_PARAMS='{"text":{"tokenizer":{"type":"default"}}}'

注意:如果需要支持中文等多语言文档,请务必参考MyScale官方文档来配置`MySCALE_FTS_PARAMS`参数。

修改完成后,启动Dify:

docker compose up -d

注意:运行这条命令前,确保系统已安装并运行Docker。如果尚未安装,请前往Docker官网下载并安装。

等待所有服务状态显示为“started”后,在浏览器中输入`http://localhost`,即可看到登录页面。创建一个管理员账户并登录,进入Dify主页。至此,Dify平台和MyScale已成功运行,可以开始构建聊天机器人的工作。

使用MyScale和Dify构建聊天机器人

步骤1:设置知识库

准备工作就绪后,首先需要为聊天机器人创建一个知识库。点击“Knowledge”按钮,上传你希望用作知识库的文件。Dify支持从Notion、网站等多种来源同步数据,灵活性非常高。

注意:本次演示所用的知识库整合了两篇文章的内容:MyScale vs. Zilliz 和 MyScale vs. Pinecone。

步骤2:自定义知识库选项

上传文件后,会看到几个自定义选项:调整chunk大小、选择embedding模型以及选择搜索类型。这里我们选择全文搜索,以便简化查询并高效检索文本数据。

注意:我们将使用OpenAI的embedding模型。要设置OpenAI密钥,请点击右上角个人资料,进入“设置”,在相应平台中配置密钥即可。

点击“保存并处理”,系统会在几秒内生成embedding,数据最终存储到MyScale中。完成后,知识库就设置完毕了。

步骤3:创建和配置聊天机器人

在Studio中选择“Chatbot”,然后在“Create APP”菜单下点击“Create from Blank”。此时会弹出一个窗口,引导你完成后续操作。

点击“创建”后,进入新窗口,在这里编写提示词,并将刚创建的知识库作为上下文加入。

步骤4:将知识库添加到聊天机器人

在“Context”窗口中,点击“+添加”,你会看到所有已上传的文件。选择聊天机器人要使用的文件,点击“添加”。这样一来,聊天机器人就获得了正确的上下文,能够为用户提供准确的回答。同时,你也可以在“Instructions”框中为聊天机器人编写具体的指令。

步骤5:发布和部署聊天机器人

点击右上角的“Publish”按钮,再点“更新”保存所有改动。接着点击“运行应用”,一个新窗口就会打开。

注意:聊天机器人就绪后,Dify还支持通过iframe将其嵌入任何地方——选择“Embed into website”选项,复制iframe代码即可无缝集成到自己的网站或应用中。点击“开始聊天”,即可与你的聊天机器人进行对话。

总结

Dify这个开源平台,在推动AI开发普惠化方面确实做了大量切实的工作。它的工具集涵盖了提示编排、集成选项等关键功能,使得即使用户技术基础薄弱,也能构建出可用的AI应用。其核心价值在于,拆除了传统AI开发中最令人头疼的阻碍。

而MyScale作为一款基于SQL的向量数据库,与Dify配合得十分顺畅。它对SQL的完全兼容以及高性能搜索能力,让需要同时处理海量向量数据和结构化数据的AI应用拥有了更可靠的底层支持。当可扩展性与高性能遇到Dify这样用户友好的开发平台时,这套组合对希望快速落地AI应用的团队而言,无疑是一个值得认真考虑的起点。

来源:https://www.53ai.com/news/RAG/2024090357082.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。