Skip to content

Commit 009d49c

Browse files
committed
docs: document model attribution and test environments
1 parent dbfa54a commit 009d49c

3 files changed

Lines changed: 63 additions & 0 deletions

File tree

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,15 @@ Acceleration options:
5050
- NVIDIA GPU: CUDA-compatible PyTorch build.
5151
- CPU: useful for tests and lightweight smoke checks, but slow for production video inference.
5252

53+
## Tested Environments
54+
55+
Current validation has been done in two practical environments:
56+
57+
- Local development: Intel macOS on an older i7 Mac, running the app and regression suite in CPU mode.
58+
- Cloud/server worker: NVIDIA CUDA GPU worker, used for end-to-end model workflow checks.
59+
60+
The Intel macOS path uses compatibility pins and small integration patches where newer upstream packages no longer support older architecture constraints cleanly. In particular, the project pins older PyTorch/torchvision on `darwin x86_64`, keeps `numpy<2` there, constrains GVM-related `diffusers`, and includes helper patches/workarounds for model packages that assume newer Linux/CUDA-oriented stacks. See [docs/installation.md](docs/installation.md) and [docs/models.md](docs/models.md) before treating this as a universal production support matrix.
61+
5362
## Quick Start
5463

5564
```bash
@@ -78,6 +87,12 @@ KeyFlow Studio checks the configured model cache at runtime and downloads suppor
7887

7988
Typical local model locations are managed by the application settings or by `KEYFLOW_MODELS_DIR`. See [docs/models.md](docs/models.md) for details.
8089

90+
## Third-Party Models
91+
92+
KeyFlow Studio is an orchestration UI/runtime around several third-party model projects. Those projects and their authors retain their own copyrights, licenses, model terms, checkpoints, and trademarks. This repository does not claim ownership of the upstream models or weights.
93+
94+
Integrated or supported workflows include CorridorKey by `nikopueringer`, BiRefNet by `ZhengPeng7`, GVM by `geyongtao`, MatAnyone2 by `pq-yang`, and Meta/Facebook Research SAM-family models where installed by the user. See [docs/models.md](docs/models.md) for links and attribution details.
95+
8196
## Cloud GPU Worker
8297

8398
The repository includes an optional EC2 worker under [ec2_worker/](ec2_worker/) for headless GPU inference. This is useful when local hardware is not strong enough for final production-sized tests.

docs/installation.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,13 @@ pip install -r requirements.txt
2525

2626
The pinned defaults in `requirements.txt` are chosen for development compatibility, including Intel macOS constraints. For CUDA systems, install a PyTorch build that matches your NVIDIA driver and CUDA runtime before installing model-specific packages.
2727

28+
Current compatibility baseline:
29+
30+
- Local development and regression checks have been run on an older Intel i7 Mac in CPU mode.
31+
- The EC2/server worker path has been tested with NVIDIA CUDA for end-to-end model workflows.
32+
- Intel macOS `x86_64` intentionally uses older PyTorch/torchvision pins, `numpy<2`, and selected dependency ceilings so the project can still run on that older architecture.
33+
- Some model packages require local workarounds or patch files. See `scripts/install_sam2_intel_workaround.sh`, `ec2_worker/_patch/`, and [models.md](models.md).
34+
2835
Some model workflows may require extra upstream packages, private tokens, or license acceptance. See [models.md](models.md) for model cache and weight behavior.
2936

3037
## 4. Install FFmpeg

docs/models.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,25 @@
22

33
KeyFlow Studio integrates several third-party model workflows. Model weights are not committed to this repository.
44

5+
## Attribution And Ownership
6+
7+
KeyFlow Studio provides integration code, graph orchestration, UI controls, and worker/runtime glue. The model architectures, upstream packages, checkpoints, papers, names, and licenses belong to their respective authors and projects.
8+
9+
Before redistributing this repository, binaries, screenshots, demos, or generated assets, review each upstream license and model card. Some projects may restrict commercial use, redistribution of weights, or use of generated assets.
10+
11+
Known upstream projects currently referenced by the integration:
12+
13+
| Workflow | Upstream project / source | Notes |
14+
| --- | --- | --- |
15+
| CorridorKey | [nikopueringer/CorridorKey](https://github.com/nikopueringer/CorridorKey), [CorridorKey_v1.0](https://huggingface.co/nikopueringer/CorridorKey_v1.0), [CorridorKeyBlue_1.0](https://huggingface.co/nikopueringer/CorridorKeyBlue_1.0) | Green/blue screen keying checkpoints are resolved outside Git history. Check upstream terms before redistribution. |
16+
| BiRefNet | [ZhengPeng7/BiRefNet](https://huggingface.co/ZhengPeng7/BiRefNet) and related `ZhengPeng7/BiRefNet_*` Hugging Face repos | Used as a mask/alpha source. Presets may map to different upstream repos. |
17+
| GVM | [geyongtao/gvm](https://huggingface.co/geyongtao/gvm) | Used for generative video matting / alpha generation. KeyFlow includes compatibility patch files for the worker/runtime path. |
18+
| MatAnyone2 | [pq-yang/MatAnyone2](https://github.com/pq-yang/MatAnyone2) | Optional matting workflow. The checkpoint is downloaded or placed outside Git history. |
19+
| SAM2 | [facebookresearch/sam2](https://github.com/facebookresearch/sam2) | Optional segmentation workflow when installed in the active environment. |
20+
| SAM3 | [facebookresearch/sam3](https://github.com/facebookresearch/sam3), [facebook/sam3](https://huggingface.co/facebook/sam3) | Optional SAM3 workflow. Weight download may require manual setup or upstream access rules. |
21+
22+
This table is attribution documentation, not a license grant. Always follow the upstream project instructions for installation, citation, and allowed use.
23+
524
At runtime, the application checks the configured model cache and downloads supported weights automatically when they are available from the configured upstream source. Some upstream models may still require manual license acceptance, private tokens, or external setup, so automatic download should be treated as a supported path rather than a universal guarantee for every model.
625

726
## Storage Policy
@@ -31,10 +50,32 @@ export KEYFLOW_MODELS_DIR="$HOME/.local/share/com.keyflow.studio/models"
3150

3251
CorridorKey weights can be resolved through the app-managed download path when available. Keep the checkpoint outside Git history.
3352

53+
Supported checkpoint sources currently include the green-screen `nikopueringer/CorridorKey_v1.0` and blue-screen `nikopueringer/CorridorKeyBlue_1.0` repositories. The local integration defaults to `screen_color=green` for backward compatibility.
54+
3455
## BiRefNet, SAM, GVM, MatAnyone2
3556

3657
Each model may have separate licensing, hardware, and storage requirements. Check the upstream project before redistributing weights or derived assets.
3758

59+
## Tested Runtime Notes
60+
61+
The current development/test baseline is intentionally conservative:
62+
63+
- Local app and regression tests have been run on an older Intel i7 Mac in CPU mode.
64+
- Cloud/server worker workflows have also been tested on a CUDA GPU worker.
65+
- CPU mode is useful for validation and small samples, but production-sized video model inference is expected to be slow on old Intel hardware.
66+
67+
## Legacy Intel macOS Compatibility
68+
69+
Some modern ML packages no longer fit older Intel macOS constraints cleanly. For that reason the repository uses compatibility pins and local integration workarounds, including:
70+
71+
- `torch==2.2.2` and `torchvision==0.17.2` on `darwin x86_64`, because newer upstream combinations may not provide usable wheels for this architecture.
72+
- `numpy<2` on `darwin x86_64` to avoid binary compatibility problems with older PyTorch wheels.
73+
- `diffusers>=0.30,<0.32` for GVM compatibility, because newer versions changed behavior/dependencies in ways that require newer Torch stacks.
74+
- `scripts/install_sam2_intel_workaround.sh` for Intel macOS SAM2 package constraints.
75+
- `ec2_worker/_patch/` patch files for cloud/runtime compatibility around GVM components.
76+
77+
These patches and pins are pragmatic compatibility work, not forks of the upstream projects. When running on modern Linux/CUDA machines, prefer the CUDA-compatible PyTorch build that matches the driver/runtime and validate the model-specific stack separately.
78+
3879
## Public Repository Rule
3980

4081
Before making the repository public, verify that model weights and generated media are absent from both the working tree and Git history.

0 commit comments

Comments
 (0)