- 新增 .agents/summary/ 完整文档(架构、组件、接口、数据模型、流程、依赖) - 新增 AGENTS.md(AI 助手导航) - 更新 README.md - 修复 dashboard.html 租户模态框多余 </div> 导致保存按钮失效 - 更新 .gitignore 排除虚拟环境文件
52 lines
1.9 KiB
Markdown
52 lines
1.9 KiB
Markdown
# Codebase Info
|
||
|
||
## 基本信息
|
||
|
||
- **项目名称**: TSP 智能助手 (TSP Assistant)
|
||
- **语言**: Python 3.11+
|
||
- **框架**: Flask 3.x + SQLAlchemy 2.x + WebSocket
|
||
- **代码风格**: 变量名英文,注释/UI/日志中文
|
||
- **数据库**: SQLAlchemy ORM(开发用 SQLite,生产用 MySQL via PyMySQL)
|
||
- **入口文件**: `start_dashboard.py`
|
||
|
||
## 技术栈
|
||
|
||
| 层级 | 技术 |
|
||
|---|---|
|
||
| Web | Flask 3.x + Flask-CORS |
|
||
| ORM | SQLAlchemy 2.x |
|
||
| 实时通信 | `websockets` (port 8765) |
|
||
| 缓存 | Redis 5.x + hiredis |
|
||
| LLM | OpenAI-compatible API (Qwen/通义千问 via DashScope) |
|
||
| Embedding | `sentence-transformers` + `BAAI/bge-small-zh-v1.5` (可选) |
|
||
| NLP | jieba (分词) + scikit-learn (TF-IDF) |
|
||
| 飞书 SDK | `lark-oapi` 1.3.x (长连接模式) |
|
||
| 认证 | JWT (`pyjwt`) + SHA-256 |
|
||
| 监控 | psutil |
|
||
|
||
## 目录结构概览
|
||
|
||
```
|
||
src/
|
||
├── config/ # UnifiedConfig 单例,从 .env 加载
|
||
├── core/ # 数据库、LLM、缓存、认证、ORM 模型
|
||
├── dialogue/ # 对话管理、实时聊天
|
||
├── knowledge_base/ # 知识库 CRUD、搜索、导入
|
||
├── analytics/ # 监控、预警、Token 统计
|
||
├── integrations/ # 飞书客户端、工单同步
|
||
├── agent/ # ReAct Agent(工具调度)
|
||
├── vehicle/ # 车辆数据管理
|
||
├── utils/ # 通用工具
|
||
└── web/ # Flask 应用层
|
||
├── app.py # 应用工厂 + 中间件
|
||
├── service_manager.py # 懒加载服务注册
|
||
├── decorators.py # 通用装饰器
|
||
├── blueprints/ # 按领域划分的 API 蓝图 (16 个)
|
||
├── static/ # 前端资源
|
||
└── templates/ # Jinja2 模板
|
||
```
|
||
|
||
## 启动流程
|
||
|
||
`start_dashboard.py` → 设置日志 → 检查数据库 → 启动 WebSocket 线程 → 启动飞书长连接线程 → 启动 Flask 应用
|