Configuration
FindAModel is configured through findamodel.yaml files placed directly inside your model directories. These files control metadata values and rules for the directory and all its subdirectories.
How it works
When FindAModel indexes your library it:
- Walks the directory tree recursively.
- Reads any
findamodel.yamlit finds in each folder. - Inherits configuration from parent directories to child directories - values set higher in the tree apply everywhere below unless overridden.
- Evaluates any rules defined in the config to compute metadata for each model file.
Quick example
Given this directory tree:
models/
├── findamodel.yaml ← sets creator: "Alice"
├── Fantasy/
│ ├── findamodel.yaml ← sets collection: "Fantasy"
│ └── Elves/
│ ├── findamodel.yaml ← model_name regex (source: filename)
│ ├── elf_warrior.stl
│ └── elf_mage.stl
└── SciFi/
└── spaceship.stl ← inherits creator: "Alice" from root
elf_warrior.stl resolves to:
creator→ “Alice” (from root)collection→ “Fantasy” (from Fantasy/)model_name→ “elf_warrior” (from regex rule in Elves/)
spaceship.stl resolves to:
creator→ “Alice” (from root)- No collection set (SciFi/ has no findamodel.yaml)
Next steps
- findamodel.yaml format - all supported keys and syntax
- Inheritance - detailed rules for how values cascade down the tree
- LLM configuration - internal LLamaSharp and Ollama runtime settings