# Explore 报告:Lumina **项目类型:** 代码仓库 **完成阶段:** 5/5 **包含图示:** 是 **核心设计:** 3 个 **状态:** 完成 --- ## 阶段 1:定位 **是什么:** Lumina 是一个 AI 驱动的文章管理系统,采用全栈架构(FastAPI 后端 + Next.js 前端)。 **为什么值得学习:** - 完整的内容处理 AI Pipeline 架构 - 领域驱动分层设计,关注点分离清晰 - 支持多租户的内容管理,内置治理功能 **目标用户:** 需要构建自托管知识库或 AI 增强 CMS 的开发者。 --- ## 阶段 2:结构 ``` lumina-main/ ├── backend/ # FastAPI Python 后端 │ ├── app/ │ │ ├── api/routers/ # 16 个 REST 端点模块 │ │ ├── domain/ # 业务逻辑层 ⭐ │ │ ├── core/ # 配置与依赖 │ │ └── schemas/ # Pydantic 数据模型 │ ├── alembic/ # 数据库迁移 │ ├── ai_client.py # AI 客户端抽象 │ └── models.py # SQLAlchemy ORM 定义 └── frontend/ # Next.js React 前端 └── src/ ├── app/ # App Router 结构 └── components/ # 可复用 UI 组件 ``` **入口点:** - 后端:`backend/app/domain/` - 业务逻辑 - 前端:`frontend/src/app/(routes)/` - 页面路由 --- ## 阶段 3:流程 **核心流程:文章导入 → AI 处理 → 存储** ``` ┌─────────────┐ ┌──────────────────┐ ┌─────────────┐ │ URL 提交 │────▶│ ingest_service │────▶│ Router │ └─────────────┘ └──────────────────┘ └──────┬──────┘ │ ┌─────────────┐ ┌──────────────────┐ │ │ 响应 │◀────│ pipeline_service │◀──────────┘ └─────────────┘ └──────────────────┘ │ ▼ ┌─────────────┐ │ ORM │ └─────────────┘ ``` **关键文件:** `backend/app/domain/article_ai_pipeline_service.py` - 模块化 AI 处理链,支持可配置步骤(清洗 → 打标签 → 摘要 → 嵌入)。 --- ## 阶段 4:起步路径 **前置要求:** - Python 3.11+ - PostgreSQL **设置命令:** ```bash cd backend pip install -e . alembic upgrade head # 初始化数据库模式 uvicorn app.main:app --reload # 启动开发服务器 ``` **首个观察点:** 在 router 中查看 `article_ai_pipeline_service.py` 的调用链。 **安全的首个修改:** 修改 `core/settings.py` 中的 `AI_MODEL`,观察不同的 AI 行为。 ---kanyii ## 阶段 5:核心设计 | # | 设计 | 位置 | 重要性 | |---|------|------|--------| | 1 | **领域服务层** | `app/domain/*.py` | API 与数据库解耦;AI 集成可独立演进 | | 2 | **AI Pipeline 架构** | `article_ai_pipeline_service.py` | AI 处理不耦合 ORM;可配置、可追踪 | | 3 | **路由注册器** | `api/router_registry.py` | 集中注册;新增模块无需改动 main.py | --- ## 架构图示 **后端领域架构:** ``` ┌─────────────────────────────────────────┐ │ API 路由层 │ │ (article, ai_tasks, auth, settings...) │ └──────────────────┬──────────────────────┘ │ ┌──────────────────▼──────────────────────┐ │ 领域服务层 │ │ ┌──────────────┐ ┌──────────────────┐ │ │ │article_query │ │article_command │ │ │ └──────────────┘ └──────────────────┘ │ │ ┌──────────────┐ ┌──────────────────┐ │ │ │ai_pipeline │ │ingest_service │ │ │ └──────────────┘ └──────────────────┘ │ └──────────────────┬──────────────────────┘ │ ┌──────────────────▼──────────────────────┐ │ SQLAlchemy 模型层 │ └─────────────────────────────────────────┘ ``` --- ## 验证备注 - 按 v0.5.0 规范完成 5 个阶段 - 未进行 essence 级别的深度提取 - 未进行交互式教学 - 遵守边界规则