Help › Credits & Open-Source Dependencies of LrGeniusAI

Credits & Dependencies

LrGeniusAI is made possible by these amazing open-source projects and AI frameworks.

Core Backend Dependencies

  • YuNet: Fast, lightweight face detector from the OpenCV Model Zoo; provides the face boxes and five landmarks. GitHub
  • FaceNet (facenet-pytorch): Inception-ResNet-v1 with VGGFace2 weights; produces the face embeddings that group photos by person. GitHub
  • SigLIP2 (NaFlex) (Apache-2.0): Google’s siglip2-so400m-patch16-naflex (SigLIP 2, Tschannen et al., 2025), the vision-language model behind semantic search and the photo genre; it keeps each photo’s aspect ratio. Exported with Hugging Face Transformers. Model
  • AestheticSigLIP: Gowthami Somepalli’s AestheticSigLIP, a SigLIP 2 So400m NaFlex encoder fine-tuned to score photos from 1 to 9, which provides the Aesthetic score. Apache-2.0. Model
  • CLIP-IQA: The prompt-pair method (Wang, Chan & Loy, Exploring CLIP for Assessing the Look and Feel of Images, AAAI 2023) behind the moment, emotion and kiss-gate questions culling asks of a photo. Paper
  • OpenCLIP: The framework BioCLIP 2 is loaded and exported with. GitHub
  • ONNX Runtime: Cross-platform, high performance ML inferencing, used via the ort crate for SigLIP2, BioCLIP 2, YuNet and FaceNet. Website
  • LanceDB: Embedded vector database storing embeddings and metadata. Website
  • axum / tokio: Async HTTP server and runtime for geniusai-server. GitHub
  • Hugging Face Tokenizers: Fast tokenizers used for the SigLIP2 text tower. GitHub
  • rmcp (Apache-2.0): The official Rust SDK for the Model Context Protocol; serves the /mcp endpoint AI agents connect to, and connects the in-app chat to the same tools. GitHub

Species Identification

  • BioCLIP 2 (MIT): The vision model behind on-device species identification, trained on the tree of life. Project · Model · Paper
  • TreeOfLife-200M (CC0-1.0): The 200-million-image dataset BioCLIP 2 was trained on. Its precomputed text embeddings are the taxonomy the plugin classifies against — LrGeniusAI ships a pruned subset of them. Dataset
  • GBIF Backbone Taxonomy: The source of the common names shown alongside each scientific name, via TreeOfLife-200M’s label files. DOI 10.15468/39omei
  • pybioclip: The reference implementation whose preprocessing and rank-aggregation semantics lrg-ml::bioclip reproduces in Rust. GitHub

Local Inference Engines

  • llama.cpp: Runs GGUF vision models in-process on Windows (Vulkan), via the llama-cpp-2 bindings. GitHub
  • llguidance: Turns JSON Schemas into decode-time constraints, so local models return valid structured output. GitHub
  • MLX & mlx-swift-lm: Apple’s array framework and its language-model package, powering the lrgenius-mlx sidecar on Apple silicon. GitHub
  • Gemma, Qwen-VL and SmolVLM: The open-weights vision models offered in the built-in model catalogs.

AI Model Providers & Interfaces

  • Google Gemini: Large language models for multimodal analysis.
  • OpenAI / ChatGPT: Advanced conversational AI and embeddings.
  • Anthropic Claude: Vision-capable language models through Anthropic’s Messages API. Website
  • Ollama: Run open-source large language models locally. Website
  • LM Studio: Discover, download, and run local LLMs. Website

Utilities & SDKs

  • JSON.lua (CC-BY 3.0): A complete JSON encoder/decoder in Lua by Jeffrey Friedl, vendored into the plugin. Upstream
  • Adobe Lightroom Classic SDK: The Lua API the plugin frontend is built on.
  • Hugging Face Hub: Distribution for the downloadable local models.

Tooling & Project Infrastructure

  • Automaat/lightroom-mcp (MIT): A second open-source Lightroom Classic plugin, by Marcin Skalski, pairing an .lrplugin with an MCP server. Its CI/CD setup is where this project’s workflow trigger scoping, per-workflow concurrency groups, commit-SHA pinning of every action (not just third-party ones), the pinned busted revision, and the “stamp the version, then read the stamp back” rule came from — the last of which turned up a bug that had shipped in every release. Its plugin also documents a couple of Lightroom SDK behaviours worth knowing — among them how LrSocket behaves across plug-in reloads and on Windows (its issues #110, #121, #128, #134, #137), which decided the shape of LrGeniusAI’s agent bridge: a receive-only socket as a doorbell, everything else over HTTP. No code was taken from it. GitHub
  • StyLua, luacheck, busted: Formatting, linting and headless unit tests for the plugin’s Lua.
  • pre-commit: Runs the formatters, linters and the docs checker before every commit.

Full licence texts for the third-party source vendored into this repository are in THIRD-PARTY-NOTICES.md.


Developed by Bastian Machek (LrGenius / Fokuspunk) and AI agents.