config.toml now carries a [vision.<provider>] block per backend — model/base_url/key_env — with vision_provider picking the active one, so the committed file documents every recipe and switching is a one-line flip. Only the active block applies; typo'd block names and keys warn like every other config mistake. First real Ollama run (qwen2.5vl:7b) surfaced what local models emit: almost-JSON with trailing commas. parse_vision_response now makes one cheap repair pass before declaring a response unusable. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016jXZFSTZQKzAC8fqpWSz9g
22 lines
679 B
TOML
22 lines
679 B
TOML
# Non-secret knobs for bggpipe. Everything account-related — including
|
|
# your BGG username — lives in .env (see .env.example), not here.
|
|
|
|
photos_dir = "photos"
|
|
data_dir = "data"
|
|
rate_limit_seconds = 2.0
|
|
|
|
# Which vision backend reads your shelf photos. Both recipes below stay
|
|
# on file; this line picks one.
|
|
vision_provider = "anthropic"
|
|
|
|
[vision.anthropic]
|
|
# reads ANTHROPIC_API_KEY from the environment
|
|
model = "claude-sonnet-5"
|
|
|
|
[vision."openai-compatible"]
|
|
# OpenAI, OpenRouter, or a local runtime (Ollama, LM Studio, vLLM).
|
|
# key_env names the env var holding the key; "" = endpoint needs none.
|
|
base_url = "http://localhost:11434/v1"
|
|
model = "qwen2.5vl:7b"
|
|
key_env = ""
|