Files
ComfyUI-Lora-Manager/IFLOW.md
2025-10-15 09:18:59 +08:00

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.pystandalone.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 模块进行日志记录