NVIDIA Cosmos3-Edge on a Mac: a small model that understands video, and one that makes it
Paris Michalas, Partner, NetProjects (Internet Projects Ltd)
NVIDIA's Cosmos3-Edge comes in two parts. The reasoner reads text, images and video and answers in text, with optional step-by-step thinking, which is on by default. The generator turns text or a first image into a video, or text into a single image. We ported both to MLX, Apple's machine-learning framework, so they run on a Mac with Apple Silicon. NVIDIA's original: https://huggingface.co/nvidia/Cosmos3-Edge
Always up to date. We keep these builds and the engine that runs them current on Hugging Face and GitHub. When NVIDIA releases a new version of Cosmos3-Edge, we rebuild, re-test and publish it there, so the links on this page always point to the latest version. The numbers in this article were measured on the version named in each section; the README on GitHub and the model card on Hugging Face carry the current figures and a dated change log.
- Hugging Face: https://huggingface.co/netprojects
- GitHub: https://github.com/internet-projects
- NetProjects MLX builds collection: https://huggingface.co/collections/netprojects/netprojects-mlx-builds
What we released
Four MLX builds on Hugging Face, two of the reasoner and two of the video generator.
| Hugging Face | Part | Size |
|---|---|---|
| netprojects/Cosmos3-Edge-mlx-8bit (recommended) | Reasoner | 3.1 GB |
| netprojects/Cosmos3-Edge-mlx-6bit | Reasoner | 2.6 GB |
| netprojects/Cosmos3-Edge-Omni-mlx-8bit | Video generator | 5.0 GB |
| netprojects/Cosmos3-Edge-Omni-mlx-bf16 | Video generator | 7.6 GB |
The reasoner comes with a local server that speaks the OpenAI chat format, with text, image and video input and streaming.
The reasoner: how well it matches the original
We compared each build with NVIDIA's code in Hugging Face transformers, in bf16. NVIDIA's evaluation settings are not published, so the benchmark scores below are our own measurements, not a reproduction of NVIDIA's.
Measured on cosmos3-edge-mlx v0.2.0, 7 November 2026.
| Build | Same next token as the original | RealWorldQA (765) | CV-Bench (25% sample) |
|---|---|---|---|
| 8-bit | 98.4% | 69.2 | 87.0 |
| 6-bit | 97.7% | 68.6 | 87.3 |
| Our bf16 reference | 98.7% | 68.9 | 87.2 |
| NVIDIA's published scores | Not applicable | 70.5 | 85.3 (full set) |
Memory for the 8-bit reasoner: 5.5 GB at its peak with a 16K-token prompt, 7.3 GB at 32K.
The generator: how well it matches the original
We compared each build with NVIDIA's diffusers pipeline in fp32: 448x256, 17 frames, 20 steps, one image-to-video example.
Measured on cosmos3-edge-mlx v0.2.0, 7 November 2026.
| Build | Latent similarity (image to video / text to video) | Video PSNR (image to video / text to video) |
|---|---|---|
| 8-bit | 0.9960 / 0.9959 | 29.8 / 26.0 dB |
| bf16 | 0.9975 / 0.9975 | 30.7 / 27.1 dB |
How fast is it?
Measured on cosmos3-edge-mlx v0.2.0, 7 November 2026, MacBook Pro M5 Max (128 GB).
A full 5-second clip (832x480, 121 frames at 24 fps, 20 steps) from one image takes about 113 seconds end to end on the 8-bit generator build, with 18.8 GB peak memory. We have no tokens-per-second figure for the reasoner yet.
Try it
git clone https://github.com/internet-projects/cosmos3-edge-mlx && cd cosmos3-edge-mlx
uv venv --python 3.12 .venv && uv pip install --python .venv/bin/python -r requirements.txt
hf download netprojects/Cosmos3-Edge-mlx-8bit --local-dir cosmos3-edge-mlx-8bit
python -m cosmos3_edge_mlx.generate --model cosmos3-edge-mlx-8bit --image photo.jpg --prompt "What is happening here?"To ask about a video instead, use --video clip.mp4 --fps 4. To run the local server:
python -m cosmos3_edge_mlx.server --model cosmos3-edge-mlx-8bitTo make a video, download the generator, then point it at the downloaded folder and a first frame:
hf download netprojects/Cosmos3-Edge-Omni-mlx-8bit
python -m cosmos3_edge_mlx.gen.cli --model <dir> --image first_frame.jpg --prompt "..." --out out.mp4NVIDIA's model card asks users to add their own safety guardrails, and that applies to these builds too. The README has the full commands: https://github.com/internet-projects/cosmos3-edge-mlx
Honest limits
- All figures come from one machine.
- We checked the generator's quality on one example.
- Text to video drifts further from the original than image to video.
- We have no tokens-per-second figure for the reasoner yet.
Links
- Code on GitHub: https://github.com/internet-projects/cosmos3-edge-mlx
- Reasoner 8-bit (recommended): https://huggingface.co/netprojects/Cosmos3-Edge-mlx-8bit
- Reasoner 6-bit: https://huggingface.co/netprojects/Cosmos3-Edge-mlx-6bit
- Video generator 8-bit: https://huggingface.co/netprojects/Cosmos3-Edge-Omni-mlx-8bit
- Video generator bf16: https://huggingface.co/netprojects/Cosmos3-Edge-Omni-mlx-bf16
- NVIDIA's original: https://huggingface.co/nvidia/Cosmos3-Edge
- Licence, NVIDIA OpenMDW-1.1: https://github.com/internet-projects/cosmos3-edge-mlx/blob/main/LICENSE
- NetProjects MLX builds collection: https://huggingface.co/collections/netprojects/netprojects-mlx-builds
- Our other NVIDIA ports, Dory 1.0 4B on a Mac: https://netprojects.com/insights/nvidia-dory-4b-on-apple-silicon-mlx
- Nemotron 3.5 search models on a Mac: https://netprojects.com/insights/nvidia-nemotron-3-5-retrieval-on-apple-silicon-mlx
- How we use AI: https://netprojects.com/standards/ai
Always up to date. We keep these builds and the engine that runs them current on Hugging Face and GitHub. When NVIDIA releases a new version of Cosmos3-Edge, we rebuild, re-test and publish it there, so the links on this page always point to the latest version. The numbers in this article were measured on the version named in each section; the README on GitHub and the model card on Hugging Face carry the current figures and a dated change log.
- Hugging Face: https://huggingface.co/netprojects
- GitHub: https://github.com/internet-projects
- NetProjects MLX builds collection: https://huggingface.co/collections/netprojects/netprojects-mlx-builds
Credits
Cosmos3-Edge is by NVIDIA, under the NVIDIA OpenMDW-1.1 licence; our builds and our code carry the same licence. The MLX port is by Paris Michalas, Partner, NetProjects (Internet Projects Ltd). Not affiliated with NVIDIA.
Paris Michalas is a partner at NetProjects, the trading name of Internet Projects Ltd: https://netprojects.com. This article was drafted with AI assistance, then edited and approved by people on our team. You can read more about how we use AI at https://netprojects.com/standards/ai.