|
1 | | -# Components Overview |
2 | | - |
3 | | -LoRA Pilot integrates multiple AI tools and services into a unified workspace. Each component serves a specific purpose in the AI workflow, from dataset preparation to model training and inference. |
4 | | - |
5 | | -## 🧩 Component Architecture |
6 | | - |
| 1 | +# Components |
| 2 | + |
| 3 | +This section is the map of LoRA Pilot components. Keep this page as an index; use component pages for actual workflows and settings. |
| 4 | + |
| 5 | +## Component Index |
| 6 | + |
| 7 | +| Component | Role | Default Port/Route | Page | |
| 8 | +|---|---|---|---| |
| 9 | +| Kohya SS | Full training UI | `6666` | [Kohya SS](kohya-ss.md) | |
| 10 | +| AI Toolkit | Modern training stack | `8675` | [AI Toolkit](ai-toolkit.md) | |
| 11 | +| Diffusion Pipe | Experimental training + TensorBoard | `4444` | [Diffusion Pipe](diffusion-pipe.md) | |
| 12 | +| ComfyUI | Node-based inference | `5555` | [ComfyUI](comfyui.md) | |
| 13 | +| InvokeAI | UI-first inference | `9090` | [InvokeAI](invokeai.md) | |
| 14 | +| TrainPilot | Guided Kohya launcher | ControlPilot tab | [TrainPilot](trainpilot.md) | |
| 15 | +| TagPilot | Dataset prep/tagging | `/tagpilot/` on `7878` | [TagPilot](tagpilot.md) | |
| 16 | +| MediaPilot | Output curation/gallery | `/mediapilot/` on `7878` | [MediaPilot](mediapilot.md) | |
| 17 | +| Copilot Sidecar | Optional coding assistant backend | `7879` (internal/local) | [Copilot Sidecar](copilot-sidecar.md) | |
| 18 | + |
| 19 | +## How They Fit Together |
| 20 | + |
| 21 | +1. Prepare data in TagPilot. |
| 22 | +2. Train with TrainPilot/Kohya/AI Toolkit/Diffusion Pipe. |
| 23 | +3. Generate in ComfyUI or InvokeAI. |
| 24 | +4. Review and curate in MediaPilot. |
| 25 | + |
| 26 | +## Shared Paths |
| 27 | + |
| 28 | +All components are wired to the same workspace: |
| 29 | +- `/workspace/models` |
| 30 | +- `/workspace/datasets` |
| 31 | +- `/workspace/outputs` |
| 32 | +- `/workspace/config` |
| 33 | +- `/workspace/logs` |
| 34 | + |
| 35 | +## Quick Ops |
| 36 | + |
| 37 | +```bash |
| 38 | +# Service state |
| 39 | +docker exec lora-pilot supervisorctl status |
| 40 | + |
| 41 | +# Logs |
| 42 | +docker exec lora-pilot tail -n 200 /workspace/logs/controlpilot.out.log |
| 43 | +docker exec lora-pilot tail -n 200 /workspace/logs/comfy.out.log |
| 44 | +docker exec lora-pilot tail -n 200 /workspace/logs/invoke.out.log |
7 | 45 | ``` |
8 | | -LoRA Pilot |
9 | | -├── Training Components |
10 | | -│ ├── Kohya SS - Traditional LoRA trainer |
11 | | -│ ├── AI Toolkit - Modern training stack |
12 | | -│ └── Diffusion Pipe - Scalable pipeline |
13 | | -├── Inference Components |
14 | | -│ ├── ComfyUI - Node-based inference |
15 | | -│ └── InvokeAI - User-friendly interface |
16 | | -├── Management Components |
17 | | -│ ├── ControlPilot - Central dashboard |
18 | | -│ ├── TrainPilot - Training automation |
19 | | -│ ├── TagPilot - Dataset tagging |
20 | | -│ └── MediaPilot - Media management |
21 | | -└── Development Components |
22 | | - ├── JupyterLab - Notebook environment |
23 | | - ├── Code Server - VS Code in browser |
24 | | - └── Copilot Sidecar - AI assistant |
25 | | -``` |
26 | | - |
27 | | -## 🎯 Component Matrix |
28 | | - |
29 | | -| Component | Purpose | Port | Technology | Use Case | |
30 | | -|-----------|---------|------|------------|----------| |
31 | | -| **ControlPilot** | Central management | 7878 | FastAPI/React | Service orchestration | |
32 | | -| **Kohya SS** | LoRA training | 6666 | Flask/React | Traditional training | |
33 | | -| **AI Toolkit** | Modern training | 8675 | Next.js/Gradio | FLUX/SDXL training | |
34 | | -| **Diffusion Pipe** | Pipeline training | 4444 | Python/TensorBoard | Large-scale training | |
35 | | -| **ComfyUI** | Node-based inference | 5555 | React/WebGL | Complex workflows | |
36 | | -| **InvokeAI** | User inference | 9090 | React/FastAPI | Easy image generation | |
37 | | -| **TrainPilot** | Training automation | - | Python/CLI | Guided training | |
38 | | -| **TagPilot** | Dataset tagging | - | React/FastAPI | Dataset preparation | |
39 | | -| **MediaPilot** | Media management | - | React/FastAPI | Image organization | |
40 | | -| **JupyterLab** | Notebook environment | 8888 | Python/Jupyter | Development | |
41 | | -| **Code Server** | Browser IDE | 8443 | VS Code | Development | |
42 | | -| **Copilot Sidecar** | AI assistant | 7879 | FastAPI | Code assistance | |
43 | | - |
44 | | -## 🔄 Integration Benefits |
45 | | - |
46 | | -### Shared Resources |
47 | | -- **Models**: All components access `/workspace/models` |
48 | | -- **Datasets**: Shared dataset storage in `/workspace/datasets` |
49 | | -- **Outputs**: Unified output directory `/workspace/outputs` |
50 | | -- **Configuration**: Centralized config in `/workspace/config` |
51 | | - |
52 | | -### Service Orchestration |
53 | | -- **Supervisor**: All services managed by supervisord |
54 | | -- **Health Monitoring**: Automatic restart and health checks |
55 | | -- **Log Aggregation**: Centralized logging system |
56 | | -- **Resource Management**: Shared GPU and memory management |
57 | | - |
58 | | -### Workflow Integration |
59 | | -- **Seamless Transitions**: Move between tools without data loss |
60 | | -- **Format Compatibility**: Standardized model and dataset formats |
61 | | -- **API Integration**: Components communicate via APIs |
62 | | -- **Web Interface**: Unified access through ControlPilot |
63 | | - |
64 | | -## 🚀 Component Deep Dives |
65 | | - |
66 | | -### Training Stack |
67 | | - |
68 | | -#### Kohya SS |
69 | | -- **Strengths**: Battle-tested, extensive model support |
70 | | -- **Best For**: Traditional LoRA training, fine-tuning |
71 | | -- **Models**: SD1.5, SDXL, SD3, custom architectures |
72 | | -- **Features**: Advanced config, extensive documentation |
73 | | - |
74 | | -#### AI Toolkit |
75 | | -- **Strengths**: Modern stack, FLUX.1 support, Next.js UI |
76 | | -- **Best For**: Latest model training, FLUX/SDXL |
77 | | -- **Models**: FLUX.1, SDXL, SD3, experimental models |
78 | | -- **Features**: Gradio interface, modern workflows |
79 | | - |
80 | | -#### Diffusion Pipe |
81 | | -- **Strengths**: Scalable, TensorBoard integration |
82 | | -- **Best For**: Large-scale training, experiment tracking |
83 | | -- **Models**: All supported models |
84 | | -- **Features**: Pipeline architecture, experiment management |
85 | | - |
86 | | -### Inference Stack |
87 | | - |
88 | | -#### ComfyUI |
89 | | -- **Strengths**: Node-based, extensible, custom workflows |
90 | | -- **Best For**: Complex generation workflows, automation |
91 | | -- **Features**: Custom nodes, workflow sharing, batch processing |
92 | | - |
93 | | -#### InvokeAI |
94 | | -- **Strengths**: User-friendly, stable, good for beginners |
95 | | -- **Best For**: Simple generation, image editing |
96 | | -- **Features**: Canvas mode, inpainting, upscaling |
97 | | - |
98 | | -### Management Tools |
99 | | - |
100 | | -#### ControlPilot |
101 | | -- **Role**: Central command center |
102 | | -- **Features**: Service control, model management, file browser |
103 | | -- **Integration**: Manages all other components |
104 | | - |
105 | | -#### TrainPilot |
106 | | -- **Role**: Training automation |
107 | | -- **Features**: Guided setup, profile management, progress tracking |
108 | | -- **Integration**: Works with Kohya and AI Toolkit |
109 | | - |
110 | | -#### TagPilot |
111 | | -- **Role**: Dataset preparation |
112 | | -- **Features**: Image tagging, captioning, dataset export |
113 | | -- **Integration**: Feeds datasets to all trainers |
114 | | - |
115 | | -#### MediaPilot |
116 | | -- **Role**: Media organization |
117 | | -- **Features**: Image browsing, metadata, batch operations |
118 | | -- **Integration**: Works with all generated content |
119 | | - |
120 | | -## 🛠️ Technology Stack |
121 | | - |
122 | | -### Backend Technologies |
123 | | -- **Python 3.11**: Primary language for most components |
124 | | -- **FastAPI**: API framework for web services |
125 | | -- **Flask**: Legacy support (Kohya SS) |
126 | | -- **Node.js**: AI Toolkit UI and Next.js |
127 | | - |
128 | | -### Frontend Technologies |
129 | | -- **React**: Modern UI framework |
130 | | -- **Vue.js**: Legacy support (some components) |
131 | | -- **Gradio**: AI Toolkit interface |
132 | | -- **WebGL**: ComfyUI rendering |
133 | | - |
134 | | -### Infrastructure |
135 | | -- **Docker**: Containerization |
136 | | -- **Supervisor**: Process management |
137 | | -- **Nginx**: Reverse proxy (some components) |
138 | | -- **SQLite**: Local databases |
139 | | - |
140 | | -## 🔧 Configuration |
141 | | - |
142 | | -### Service Configuration |
143 | | -Each component has its own configuration: |
144 | | -- **Environment Variables**: Service-specific settings |
145 | | -- **Config Files**: YAML/TOML configuration |
146 | | -- **Database**: SQLite for state management |
147 | | -- **Logging**: Structured logging to files |
148 | | - |
149 | | -### Resource Allocation |
150 | | -- **GPU Sharing**: Components share GPU resources |
151 | | -- **Memory Management**: Automatic memory optimization |
152 | | -- **Storage**: Shared workspace with quotas |
153 | | -- **Network**: Port-based service isolation |
154 | | - |
155 | | -## 📊 Performance Characteristics |
156 | | - |
157 | | -### Training Performance |
158 | | -| Component | Speed | Memory Usage | Model Support | |
159 | | -|-----------|-------|--------------|---------------| |
160 | | -| Kohya SS | Medium | Medium | Excellent | |
161 | | -| AI Toolkit | Fast | High | Good | |
162 | | -| Diffusion Pipe | Fast | Medium | Excellent | |
163 | | - |
164 | | -### Inference Performance |
165 | | -| Component | Speed | Memory Usage | Features | |
166 | | -|-----------|-------|--------------|----------| |
167 | | -| ComfyUI | Fast | Medium | Extensive | |
168 | | -| InvokeAI | Medium | Low | User-friendly | |
169 | | - |
170 | | -## 🔄 Version Compatibility |
171 | | - |
172 | | -### Component Versions |
173 | | -- **Kohya SS**: Latest stable from upstream |
174 | | -- **AI Toolkit**: Tracked to specific commits |
175 | | -- **ComfyUI**: Latest with custom nodes |
176 | | -- **InvokeAI**: Pinned stable version |
177 | | - |
178 | | -### Dependency Management |
179 | | -- **Shared Venvs**: Components share Python environments |
180 | | -- **Version Pinning**: Critical dependencies are pinned |
181 | | -- **Conflict Resolution**: Separate venvs for conflicting packages |
182 | | -- **Update Strategy**: Controlled updates with testing |
183 | | - |
184 | | -## 🚀 Future Components |
185 | 46 |
|
186 | | -### Planned Additions |
187 | | -- **Training Scheduler**: Advanced training scheduling |
188 | | -- **Model Registry**: Centralized model versioning |
189 | | -- **Experiment Tracker**: ML experiment management |
190 | | -- **API Gateway**: Unified API for all services |
| 47 | +## Related |
191 | 48 |
|
192 | | -### Integration Opportunities |
193 | | -- **Cloud Storage**: S3/Google Drive integration |
194 | | -- **Model Sharing**: Community model sharing |
195 | | -- **Collaboration**: Multi-user workspaces |
196 | | -- **Automation**: Workflow automation tools |
| 49 | +- [User Guide](../user-guide/README.md) |
| 50 | +- [Configuration](../configuration/README.md) |
| 51 | +- [Documentation Home](../README.md) |
197 | 52 |
|
198 | 53 | --- |
199 | 54 |
|
200 | | -*Last updated: 2025-02-11* |
| 55 | +_Last updated: 2026-02-11_ |
0 commit comments