如何通过本地部署的DIFY辅助学习算法(PS可以辅助帮你学习任何想学习的资料)

一 提升知识库的大小容量

1.1 调大知识库的基础配置修改.env文件

如果想通过借助大模型帮你去学习一些素材,这里就需要解决DIFY 原先只能部署的文件大小限制15M的突破,往往你的学习素材一般都在几百M,根据自己的实际情况判定。
所以这里第一件事是调整.env 文件的一些配置,调整的信息如下:

vim .env

编辑如下几个参数:

# 上传文件大小限制,默认15M。
UPLOAD_FILE_SIZE_LIMIT=500M

# 每次上传文件数上限,默认5个。
UPLOAD_FILE_BATCH_LIMIT=10

UPLOAD_IMAGE_FILE_SIZE_LIMIT=100 

UPLOAD_VIDEO_FILE_SIZE_LIMIT=100 

UPLOAD_AUDIO_FILE_SIZE_LIMIT=100

NGINX_CLIENT_MAX_BODY_SIZE=100M


1.2 通过docker compose 重启加载最新配置


docker compose down
docker compose up -d

1.3 重新上传知识库

在这里插入图片描述
在这里插入图片描述

二 搭建算法知识库的学习助手

因为涉及到文本embedding,所以这里需要通过ollama部署一个比较好的text embedding模型。

2.1 text embedding 模型对比

2.1.1 如何选择合适的 Embedding 模型 ?

选择合适的 Embedding 模型对于文本分析、语义搜索、问答系统等应用至关重要。Ollama 提供了一系列专业的 Embedding 模型,每种模型都有其特定的优势和应用场景。以下是选择合适 Embedding 模型的一些关键因素:

  1. 应用场景

确定您的应用是否需要特定领域的优化或多语言支持。例如,shaw/dmeta-embedding-zh 适合中文场景。
2. 模型性能

考虑模型在相关基准测试(如 MTEB)上的表现,选择性能最优的模型。
3. 参数大小与推理成本

根据可用的计算资源,选择合适大小的模型。较小的模型(如 shaw/dmeta-embedding-zh-small)可能具有更快的推理速度。
4. 上下文窗口长度

对于需要处理长文本的应用,选择支持较长上下文窗口的模型。
5. 社区反馈与支持

选择有良好社区支持和详细文档的模型,以便快速解决问题并获取帮助。

2.1.2 推荐的 Embedding 模型

以下我们选择了几个专业的 Embedding 的模型,用于进行 文本嵌入(Embeddings)的学习

  1. 模型概览
  • shaw/dmeta-embedding-zh:小型中文 Embedding 模型,适合多种场景,特别是在语义检索和 RAG 应用中表现出色。参数大小仅 400MB,支持上下文窗口长度达到 1024,推理成本较低。
  • mxbai-embed-large:截至 2024 年 3 月,在 MTEB 上创下了 Bert-large 尺寸模型的 SOTA 性能记录,具有很好的泛化能力。
  • nomic-embed-text:大上下文长度文本编码器,超越了 OpenAI text-embedding-ada-002,在短上下文和长上下文任务上表现优异。
  • snowflake-arctic-embed:专注于性能优化的高质量检索模型,提供不同参数大小的版本以适应不同的性能和资源需求。
  • bge-m3:BGE-M3 是 BAAI 推出的一款新机型,以多功能性、多语言性和多粒度的多功能性而著称。
  • bge-large:专注于性能优化的高质量检索模型,提供不同参数大小的版本以适应不同的性能和资源需求。
  1. 注意事项
  • 访问 Embedding 服务时无需运行 ollama run,仅在需要 chat 功能时才需启动大模型。

2.2 安装并使用mxbai-embed-large 模型

  • 安装mxbai-embed-large
    安装命令

ollama pull mxbai-embed-large

在这里插入图片描述
在这里插入图片描述

  • dify 上架ollama mxbai-embed-large 模型
    在这里插入图片描述
    在这里插入图片描述
  • 在DIFY 设置text embedding模型
    在这里插入图片描述

2.3 针对知识库进行embedding

  • 检查上传的知识库是否可用
    在这里插入图片描述

  • 基于知识库创建聊天助手
    在这里插入图片描述

### 如何在本地环境中部署 Dify #### 使用 Docker Compose 部署 Dify 社区版 为了简化部署过程并确保一致性,推荐使用 Docker Compose 来部署 Dify 社区版。这不仅能够快速启动服务,还能轻松管理依赖关系。 ```yaml version: '3' services: dify: image: dify/community:latest ports: - "8000:8000" environment: - DATABASE_URL=sqlite:///./test.db volumes: - ./data:/app/data ``` 此配置文件定义了一个名为 `dify` 的服务,它基于最新的社区版本镜像运行,并映射端口以便可以从主机访问应用[^2]。 #### MAC 上搭建 Dify 环境 对于 macOS 用户来说,在 Mac 上创建专门用于开发和测试的虚拟环境是一个不错的选择。具体操作如下: 1. 安装 Miniconda 或 Anaconda; 2. 创建一个新的 Python 3.10 虚拟环境命名为 `dify`: ```bash conda create --name dify python=3.10 ``` 3. 激活该环境: ```bash conda activate dify ``` 完成上述设置之后就可以继续按照官方文档中的指示来安装其他必要的库和支持软件[^4]。 #### 同步 `.env` 文件 无论采用哪种方式进行部署,都需要注意保持项目根目录下的 `.env.example` 和实际使用的 `.env` 文件之间的一致性。如果有任何更改,则应相应地调整后者的内容以反映这些变化[^1]。 #### 访问已部署的应用程序 一旦成功完成了所有前期准备工作并且应用程序已经正常启动,可以通过浏览器或其他 HTTP 客户端工具连接到指定 IP 地址及端口号来进行初步验证。如果是在本机上执行的话,默认情况下应该是 http://localhost:8000/ 可供访问[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值