From 620ef64e60de18a8ef4617a255413972da6e55fb Mon Sep 17 00:00:00 2001 From: xieke Date: Sat, 6 Jun 2026 01:47:19 +0800 Subject: [PATCH] =?UTF-8?q?init:=20=E9=A1=B9=E7=9B=AE=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=EF=BC=8C=E5=88=9B=E5=BB=BA=E4=BB=BB=E5=8A=A1=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E5=92=8C=E7=9B=AE=E5=BD=95=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 28 +++++++++ README.md | 53 +++++++++++++++++ tasks.md | 169 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 250 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 tasks.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..da6dcb7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,28 @@ +# Environment +.env +.env.local +*.key + +# OS +.DS_Store +Thumbs.db +desktop.ini + +# IDE +.idea/ +.vscode/ +*.swp +*.swo + +# Python +__pycache__/ +*.pyc +venv/ +.venv/ + +# Node +node_modules/ + +# Temp +*.tmp +*.bak diff --git a/README.md b/README.md new file mode 100644 index 0000000..85a7c1a --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +# 企业知识库 - Dify 应用 + +> 西安云美电子科技有限公司 企业知识库系统 + +## 项目概述 + +基于 Dify 平台自部署的企业知识库,使用 DeepSeek 模型驱动,支持公司内部文档的智能检索和问答。 + +## 技术栈 + +- **平台**: Dify 社区版(Docker 自部署) +- **模型**: DeepSeek +- **检索**: 混合检索(向量 + 全文) + +## 快速开始 + +### 1. 部署 Dify + +```bash +cd docker +cp .env.example .env +# 编辑 .env 填入实际配置 +docker compose up -d +``` + +### 2. 配置模型 + +登录 Dify 后台 → 设置 → 模型供应商 → 添加 DeepSeek API Key + +### 3. 导入知识库 + +按 `docs/knowledge-base-structure.md` 的分类创建知识库,上传文档。 + +### 4. 创建应用 + +参考 `prompts/system-prompt.md` 配置 Chatflow 应用。 + +## 目录结构 + +``` +dify-app/ +├── docker/ # Docker 部署配置 +├── prompts/ # Prompt 模板 +├── knowledge/ # 示例文档 +├── dsl/ # Dify 应用配置导出 +├── tests/ # 测试用例 +├── docs/ # 项目文档 +└── tasks.md # 任务清单 +``` + +## 仓库 + +http://git.xayunmei.com/yunmei/dify-app diff --git a/tasks.md b/tasks.md new file mode 100644 index 0000000..db35dc1 --- /dev/null +++ b/tasks.md @@ -0,0 +1,169 @@ +# 企业知识库 - Dify 应用开发任务清单 + +> **项目**: 云美电子科技 企业知识库 +> **技术栈**: Dify (自部署 Docker) + DeepSeek +> **仓库**: http://git.xayunmei.com/yunmei/dify-app +> **PM/QA**: Agent-PMQA +> **Dev**: Agent-Dev + +--- + +## M1: 环境搭建(Day 1) + +### M1.1 Dify Docker 部署 +- [ ] 1.1.1 确认部署服务器(IP/配置)及 Docker 环境 +- [ ] 1.1.2 编写 `docker-compose.yml`(Dify 社区版) +- [ ] 1.1.3 配置 `.env` 环境变量(端口、密钥、存储路径) +- [ ] 1.1.4 启动 Dify 全套服务并验证可访问 +- [ ] 1.1.5 初始化管理员账号 + +### M1.2 DeepSeek 模型接入 +- [ ] 1.2.1 在 Dify 后台配置 DeepSeek API Key +- [ ] 1.2.2 验证模型调用正常(测试对话) +- [ ] 1.2.3 配置模型参数(temperature、max_tokens 等) + +### M1.3 Git 项目初始化 +- [ ] 1.3.1 创建项目目录结构 +- [ ] 1.3.2 编写 `.gitignore` +- [ ] 1.3.3 编写 `README.md`(项目说明) +- [ ] 1.3.4 首次 push 到远程仓库 + +--- + +## M2: 知识库搭建(Day 2) + +### M2.1 知识库规划 +- [ ] 2.1.1 定义知识库分类体系(技术文档/管理制度/项目资料) +- [ ] 2.1.2 编写知识库分类说明文档 `docs/knowledge-base-structure.md` +- [ ] 2.1.3 定义文档命名规范和元数据标准 + +### M2.2 Dify 知识库配置 +- [ ] 2.2.1 在 Dify 中创建知识库(按分类) +- [ ] 2.2.2 配置分段策略(自动/自定义分段规则) +- [ ] 2.2.3 配置索引模式(高质量模式 - Embedding) +- [ ] 2.2.4 配置检索方式(混合检索:向量+全文) +- [ ] 2.2.5 选择 Embedding 模型并验证 + +### M2.3 示例文档导入 +- [ ] 2.3.1 准备测试文档集(每个分类 3-5 份) +- [ ] 2.3.2 上传文档到 Dify 知识库 +- [ ] 2.3.3 验证分段结果和检索质量 + +--- + +## M3: 应用开发(Day 3-4) + +### M3.1 Chatbot 应用创建 +- [ ] 3.1.1 在 Dify 中创建 Chatflow 类型应用 +- [ ] 3.1.2 配置系统提示词(角色定义、回答规范、语气风格) +- [ ] 3.1.3 绑定知识库并配置检索策略 +- [ ] 3.1.4 配置引用溯源(显示文档来源) + +### M3.2 Prompt 工程 +- [ ] 3.2.1 编写系统 Prompt `prompts/system-prompt.md` +- [ ] 3.2.2 定义回答格式(结构化输出模板) +- [ ] 3.2.3 定义边界场景处理(不知道/超出范围/敏感信息) +- [ ] 3.2.4 定义多轮对话策略(上下文窗口管理) + +### M3.3 高级功能 +- [ ] 3.3.1 配置敏感词过滤(如适用) +- [ ] 3.3.2 配置对话开场白和推荐问题 +- [ ] 3.3.3 配置引用归属显示 +- [ ] 3.3.4 设置 citations(引用来源卡片) + +--- + +## M4: 测试优化(Day 5) + +### M4.1 功能测试 +- [ ] 4.1.1 编写测试用例 `tests/test-cases.md` +- [ ] 4.1.2 基础问答测试(10+ 问题覆盖各知识库) +- [ ] 4.1.3 多轮对话测试(上下文连贯性) +- [ ] 4.1.4 边界测试(无关问题/错误提问/长文本) +- [ ] 4.1.5 检索准确率评估(Top-5 召回率) + +### M4.2 调优 +- [ ] 4.2.1 根据测试结果优化 Prompt +- [ ] 4.2.2 调整分段策略(如召回不准) +- [ ] 4.2.3 调整检索参数(TopK、Score 阈值、Rerank) +- [ ] 4.2.4 调整模型参数(temperature 等) + +### M4.3 性能测试 +- [ ] 4.3.1 响应时间测试(首 token / 完整回答) +- [ ] 4.3.2 并发测试(多用户同时访问) +- [ ] 4.3.3 记录性能基线 `docs/performance-baseline.md` + +--- + +## M5: 用户接入(Day 6) + +### M5.1 嵌入式 WebApp +- [ ] 5.1.1 配置 Dify 内置 WebApp(主题/Logo/品牌色) +- [ ] 5.1.2 嵌入到公司内部网站(iframe 方案) +- [ ] 5.1.3 测试嵌入页面的可用性 + +### M5.2 API 集成(可选) +- [ ] 5.2.1 生成 API Key +- [ ] 5.2.2 编写 API 调用示例 `docs/api-integration.md` +- [ ] 5.2.3 如需对接企业微信/飞书,编写对接方案 + +### M5.3 权限与安全 +- [ ] 5.3.1 配置 Dify 应用访问权限 +- [ ] 5.3.2 检查 API Key 安全存储 +- [ ] 5.3.3 数据隐私合规检查 + +--- + +## M6: 文档交付(Day 7) + +### M6.1 项目文档 +- [ ] 6.1.1 更新 `README.md`(部署说明、使用指南) +- [ ] 6.1.2 编写运维手册 `docs/ops-guide.md`(备份、升级、排障) +- [ ] 6.1.3 编写用户使用手册 `docs/user-guide.md` +- [ ] 6.1.4 编写知识库维护指南 `docs/kb-maintenance.md` + +### M6.2 Dify 配置导出 +- [ ] 6.2.1 导出应用 DSL 配置(YAML) +- [ ] 6.2.2 导出知识库配置 +- [ ] 6.2.3 版本打 Tag,push 最终版本 + +--- + +## 项目目录结构 + +``` +dify-app/ +├── README.md # 项目说明 +├── .gitignore +├── docker/ +│ ├── docker-compose.yml # Dify 部署配置 +│ └── .env.example # 环境变量模板 +├── prompts/ +│ └── system-prompt.md # 系统 Prompt +├── knowledge/ +│ └── sample-docs/ # 示例文档 +│ ├── technical/ # 技术文档 +│ ├── management/ # 管理制度 +│ └── project/ # 项目资料 +├── dsl/ +│ └── app-config.yaml # Dify 应用 DSL 导出 +├── tests/ +│ └── test-cases.md # 测试用例 +└── docs/ + ├── knowledge-base-structure.md # 知识库结构说明 + ├── api-integration.md # API 对接文档 + ├── performance-baseline.md # 性能基线 + ├── ops-guide.md # 运维手册 + ├── user-guide.md # 用户手册 + └── kb-maintenance.md # 知识库维护指南 +``` + +--- + +## 审核标准(QA Checklist) + +每个 PR 需检查: +- [ ] 安全:无 API Key 泄露、无硬编码密码 +- [ ] 逻辑:Prompt 合理、分段策略正确 +- [ ] 性能:检索配置最优、无冗余依赖 +- [ ] 规范:文件命名统一、文档完整