deepseek+dify本地知识库
1. 安装docker容器
1.1 为什么要用docker
dify需要用docker来部署。
注意事项:安装完docker后,要注意配置国内镜像源。
2.安装ollama
2.1 什么是ollama
Ollama是一款跨平台的大模型运行管理框架
2.2 为什么要用Ollama
-
跨平台支持:Ollama兼容Windows、macOS和Linux操作系统,满足不同用户的需求。
-
简化的安装流程:通过简单的命令即可完成安装和配置,降低了技术门槛。
-
高效的模型管理:Ollama提供了便捷的模型下载、运行和管理功能,用户可以轻松切换和更新模型版本。
-
数据隐私保障:所有数据均保存在本地,确保了用户数据的安全性和隐私性。
3.安装deepseek-r1
ollama run deepseek-r1
4.安装dify
github上下载后解压,修改文件夹名dify-mian为dify,进入dify/docker目录下,修改.env.example为.env。打开,env文件,文末添加
# 启用自定义模型 CUSTOM_MODEL_ENABLED=true # 指定ollama的API地址(根据部署环境设置IP) OLLAMA_API_BASE_URL=host.docker.internal:11434
5.配置dify
5.1.进入dify配置页
5.2.添加模型供应商ollama(需要联网)
需要联网,不然刷新不出来供应商页面。刷新出来后,安装即可。
若安装不了,可选择本地上传ollama插件
下载ollama插件
【WORKSPACE】页面进入【插件】,【安装插件】-【本地插件】,选择下载好的插件,等待上传安装完成即可。
5.3.添加deepseek-r1模型
- 模型类型:LLM
- 模型名称:deepseek-r1
- 基础URL:http://host.docker.internal:11434
注意事项:①模型名称与ollama中的要一致。②基础URL与.env文件中指定的ollama的api地址一致。
5.4.创建知识库
【WORKSPACE】页面进入【知识库】-【创建知识库】-【选择文件】-【下一步】
注意事项:无法选择【索引方式】。
5.5添加bge-m3模型
5.5.1.什么是bge-m3模型
BGE-M3 是一种用于创建学习型稀疏嵌入的 ML 模型,它将精度和语义丰富度相结合,用于高级自然语言处理。
选择 LLM 检索方法时,可使用稀疏嵌入或密集嵌入。
稀疏嵌入适合关键字匹配过程。
5.5.2.安装bge-m3模型
ollama run bge-m3
5.5.3.配置bge-m3模型
- 模型类型:Text Embedding
- 模型名称:bge-m3
- 基础URL:http://host.docker.internal:11434
注意事项:①模型名称与ollama中的要一致。②基础URL与.env文件中指定的ollama的api地址一致。
5.5.3.1.Embedding是什么
Embedding 是一种让机器理解数据的手段,将语言或其他形式的数据转换为数值,这些数值以高维空间中的点的形式表示,使得计算机能够通过数据操作捕捉语义关系,其关键作用:
- 1增强问题回答(QA)性能:Embedding 将用户问题和文档内容表示为向量,通过计算语义相似度,快速找到与问题最相关的信息块。
- 2提升对话生成的语境感知能力:Embedding 能够表示动态的对话上下文,确保 RAG 系统在生成回答时考虑到前后语义关系,生成更连贯的响应。
- 3支持 In-Context Learning(ICL):Embedding 帮助动态检索最相关的示例作为少样本学习的参考,提高模型生成能力的灵活性和准确性。
- 4优化工具调用(Tool Fetching):Embedding 能够匹配用户需求与工具资源的语义关系,为用户提供更精准的工具或资源推荐。