ChatGPT-Next-Web/docs/rag-cn.md
2024-07-07 15:41:58 +08:00

2.0 KiB
Raw Blame History

RAG 功能配置说明

Warning

新版本将向量库从 qdrant 变更为 supabase请注意相关参数变更

效果图

image-20240707152914436

原理

以下为早期实现原理,部分逻辑与最新版本存在差异,仅供参考

example

使用须知

  • 由于接口中使用 nodejs 运行时,在 vercel 环境下接口可能会超时,建议使用 docker 部署
  • 由于其他插件会影响到模型对 RAG 检索插件的调用,所以目前的做法是上传文件后默认只保留 RAG 插件的开启,其他插件将被禁用
  • 已创建的向量数据不会删除
  • 同一聊天窗口内即使“清除聊天”也可以访问已经上传的文件内容

支持的文件类型

  • txt
  • md
  • pdf
  • docx
  • csv
  • json
  • srt
  • mp3 (基于OpenAIWhisper)

配置

  1. 登录 https://supabase.com 并创建一个账户
  2. 在控制面板中创建一个项目
  3. Project Settings API Settings 中获取 URLservice_role secret
  4. 完善下面的环境变量配置后即可使用

环境变量

ENABLE_RAG

如果你想启用 RAG 功能,将此环境变量设置为 1 即可。

SUPABASE_URL

supabase 项目 url。

SUPABASE_PRIVATE_KEY

supabase 项目 service_role secret。

RAG_CHUNK_SIZE (可选)

分割后文档的最大大小按字符数计算默认2000。

RAG_CHUNK_OVERLAP (可选)

分割文档时块重叠数量默认200。

RAG_RETURN_COUNT (可选)

检索时返回的文档数量默认4。

RAG_EMBEDDING_MODEL (可选)

向量化时使用的向量模型默认text-embedding-3-large。 可选项:

  • text-embedding-3-small
  • text-embedding-3-large
  • text-embedding-ada-002

OLLAMA_BASE_URL (可选)

新增支持 ollama embedding 模型支持。

此处配置为 ollama 服务地址,如:http://localhost:11434

配置后请修改参数 RAG_EMBEDDING_MODEL 为 ollama 的 embedding 模型名。