InvokeAI/docs/help/contributing/090_NODE_TRANSFORMATION.md

77 lines
1.8 KiB
Markdown
Raw Normal View History

2023-02-24 15:13:04 +00:00
# Tranformation to nodes
## Current state
```mermaid
flowchart TD
web[WebUI];
cli[CLI];
2023-02-24 15:37:29 +00:00
web --> |img2img| generate(generate);
web --> |txt2img| generate(generate);
cli --> |txt2img| generate(generate);
cli --> |img2img| generate(generate);
2023-02-24 15:13:04 +00:00
generate --> model_manager;
generate --> generators;
generate --> ti_manager[TI Manager];
generate --> etc;
```
## Transitional Architecture
### first step
```mermaid
flowchart TD
web[WebUI];
cli[CLI];
2023-02-24 15:37:29 +00:00
web --> |img2img| img2img_node(Img2img node);
web --> |txt2img| generate(generate);
2023-02-24 15:13:04 +00:00
img2img_node --> model_manager;
img2img_node --> generators;
2023-02-24 15:37:29 +00:00
cli --> |txt2img| generate;
cli --> |img2img| generate;
2023-02-24 15:13:04 +00:00
generate --> model_manager;
generate --> generators;
generate --> ti_manager[TI Manager];
generate --> etc;
```
### second step
```mermaid
flowchart TD
web[WebUI];
cli[CLI];
2023-02-24 15:37:29 +00:00
web --> |img2img| img2img_node(img2img node);
2023-02-24 15:13:04 +00:00
img2img_node --> model_manager;
img2img_node --> generators;
2023-02-24 15:37:29 +00:00
web --> |txt2img| txt2img_node(txt2img node);
cli --> |txt2img| txt2img_node;
cli --> |img2img| generate(generate);
2023-02-24 15:13:04 +00:00
generate --> model_manager;
generate --> generators;
generate --> ti_manager[TI Manager];
generate --> etc;
txt2img_node --> model_manager;
txt2img_node --> generators;
txt2img_node --> ti_manager[TI Manager];
```
## Final Architecture
```mermaid
flowchart TD
web[WebUI];
cli[CLI];
2023-02-24 15:37:29 +00:00
web --> |img2img|img2img_node(img2img node);
cli --> |img2img|img2img_node;
web --> |txt2img|txt2img_node(txt2img node);
cli --> |txt2img|txt2img_node;
2023-02-24 15:13:04 +00:00
img2img_node --> model_manager;
txt2img_node --> model_manager;
img2img_node --> generators;
txt2img_node --> generators;
img2img_node --> ti_manager[TI Manager];
txt2img_node --> ti_manager[TI Manager];
```