一、技术栈速览
核心技术组件
类别 | 技术选型 | 版本要求 | 关键作用 |
---|---|---|---|
后端框架 | FastAPI | >=0.95.0 | 高性能API开发,支持异步编程 |
LangChain | >=0.0.300 | LLM应用开发框架,提供工具链与工作流支持 | |
前端框架 | React + Next.js | React >=18.2, Next >=14 | 现代化Web应用开发,支持SSR/SSG |
Tailwind CSS | >=3.3 | 原子化CSS框架,提升UI开发效率 | |
数据库 | PostgreSQL | >=14 | 存储结构化数据(用户信息、项目配置等) |
Redis | >=7.0 | 缓存与会话管理,提升系统响应速度 | |
Chroma | >=0.4 | 向量数据库,支持语义检索与相似度匹配 | |
部署工具 | Docker | >=24.0 | 容器化部署,保证环境一致性 |
Kubernetes + Helm | K8s >=1.26, Helm >=3.12 | 生产环境容器编排与管理 | |
关键依赖 | OpenAI API | 最新版 | 提供基础大语言模型能力 |
Sentence-Transformers | >=2.2 | 文本向量化模型,支持多语言 |
二、开发环境搭建
1. 后端环境# 克隆仓库
git clone https://github.com/dify-ai/dify.git
cd dify/server
创建虚拟环境
python3 -m venv venv
source venv/bin/activate
安装依赖
pip install -r requirements.txt
配置环境变量
cp .env.example .env
修改.env中的配置(数据库连接、API密钥等)
启动服务
uvicorn main:app --reload
2. 前端环境cd dify/web
安装依赖
npm install
启动开发服务器
npm run dev
3. 数据库配置
PostgreSQL-- 创建数据库
CREATE DATABASE dify_db;
-- 创建用户
CREATE USER dify_user WITH PASSWORD 'your_password';
-- 授予权限
GRANT ALL PRIVILEGES ON DATABASE dify_db TO dify_user;
Redis# 启动Redis服务器(默认配置)
redis-server
Chroma# 启动Chroma服务(Docker方式)
docker run -d -p