Skip to main content

Python installation details

Extras​

ExtraWhat it adds
editorialONNX Runtime and Hugging Face Hub, for the context heads and the two detectors. The one you need
editorial-cudaThe same on a CUDA host. Replaces editorial, never joins it
macpyobjc bindings (Quartz, Metal, Vision) for hardware probing. Not enough to cut with alone
musicThe bundled royalty-free track library
authOIDC login (authlib)
demucsLocal Demucs stem separation for music ducking (Torch, about 80 MB of model)
allAll of the above except mac and editorial-cuda
all-maceditorial, mac, music and demucs. No auth: add [all-mac,auth] for OIDC

Never install editorial and editorial-cuda together: onnxruntime and onnxruntime-gpu own the same import name, and the one that answers is whichever pip wrote last.

GPU title rendering needs no extra: its kernel library is a base dependency wherever it publishes a wheel (Title kernels). Local ACE-Step music on a Mac is a checkout job (make install-acestep, then make check-local-audio): Generated music.

exiftool is worth having on an Apple HEIC library: it is the fallback when the Python HDR headroom parser trips on an unusual file. brew install exiftool, or apt install libimage-exiftool-perl.

From a checkout​

git clone https://github.com/sam-dumont/immich-memories.git
cd immich-memories
uv sync --extra editorial # or --extra all-mac on Apple Silicon
make web-client # the web UI, built from web/; needs Node 22
uv run immich-memories ui

uv sync installs into the clone's .venv and puts nothing on your PATH: inside the clone it is always uv run immich-memories .... pip install -e ".[editorial]" works too. A checkout is the only install that needs Node: the PyPI wheel and the Docker image ship the web client already built. Skip make web-client and the CLI still works, but /app only tells you to build the client.