mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-21 21:22:11 -03:00
3.0 KiB
3.0 KiB
ComfyUI LoRA Manager - iFlow 上下文
项目概述
ComfyUI LoRA Manager 是一个全面的工具集,用于简化 ComfyUI 中 LoRA 模型的组织、下载和应用。它提供了强大的功能,如配方管理、检查点组织和一键工作流集成,使模型操作更快、更流畅、更简单。
该项目是一个 Python 后端与 JavaScript 前端结合的 Web 应用程序,既可以作为 ComfyUI 的自定义节点运行,也可以作为独立应用程序运行。
项目结构
D:\Workspace\ComfyUI\custom_nodes\ComfyUI-Lora-Manager\
├── py/ # Python 后端代码
│ ├── config.py # 全局配置
│ ├── lora_manager.py # 主入口点
│ ├── controllers/ # 控制器
│ ├── metadata_collector/ # 元数据收集器
│ ├── middleware/ # 中间件
│ ├── nodes/ # ComfyUI 节点
│ ├── recipes/ # 配方相关
│ ├── routes/ # API 路由
│ ├── services/ # 业务逻辑服务
│ ├── utils/ # 工具函数
│ └── validators/ # 验证器
├── static/ # 静态资源 (CSS, JS, 图片)
├── templates/ # HTML 模板
├── locales/ # 国际化文件
├── tests/ # 测试代码
├── standalone.py # 独立模式入口
├── requirements.txt # Python 依赖
├── package.json # Node.js 依赖和脚本
└── README.md # 项目说明
核心组件
后端 (Python)
- 主入口:
py/lora_manager.py和standalone.py - 配置:
py/config.py管理全局配置和路径 - 路由:
py/routes/目录下包含各种 API 路由 - 服务:
py/services/目录下包含业务逻辑,如模型扫描、下载管理等 - 模型管理: 使用
ModelServiceFactory来管理不同类型的模型 (LoRA, Checkpoint, Embedding)
前端 (JavaScript)
- 构建工具: 使用 Node.js 和 npm 进行依赖管理和测试
- 测试: 使用 Vitest 进行前端测试
构建和运行
安装依赖
# Python 依赖
pip install -r requirements.txt
# Node.js 依赖 (用于测试)
npm install
运行 (ComfyUI 模式)
作为 ComfyUI 的自定义节点安装后,在 ComfyUI 中启动即可。
运行 (独立模式)
# 使用默认配置运行
python standalone.py
# 指定主机和端口
python standalone.py --host 127.0.0.1 --port 9000
测试
后端测试
# 安装开发依赖
pip install -r requirements-dev.txt
# 运行测试
pytest
前端测试
# 运行测试
npm run test
# 运行测试并生成覆盖率报告
npm run test:coverage
开发约定
- 代码风格: Python 代码应遵循 PEP 8 规范
- 测试: 新功能应包含相应的单元测试
- 配置: 使用
settings.json文件进行用户配置 - 日志: 使用 Python 标准库
logging模块进行日志记录