AI Providers¶
PokéDex Scanner supports multiple AI providers for card image recognition. All providers use a vision-capable language model — the server handles any request/response translation transparently.
Supported providers¶
| Provider | AI_PROVIDER value |
Required env var | Notes |
|---|---|---|---|
| GitHub Models (default) | github |
GITHUB_MODELS_TOKEN |
Free GitHub PAT, no extra scopes |
| OpenAI | openai |
OPENAI_API_KEY |
|
| Groq | groq |
GROQ_API_KEY |
Free tier available |
| Ollama | ollama |
(none) | Runs locally, no API key needed |
| Azure OpenAI | azure |
AZURE_OPENAI_URL, AZURE_OPENAI_API_KEY |
|
| Anthropic Claude | anthropic |
ANTHROPIC_API_KEY |
Request/response format translated server-side |
Default models per provider¶
| Provider | Default model |
|---|---|
| GitHub Models | meta/llama-4-maverick-17b-128e-instruct-fp8 |
| OpenAI | gpt-4o |
| Groq | meta-llama/llama-4-scout-17b-16e-instruct |
| Ollama | llava |
| Anthropic | claude-opus-4-5 |
Override with VITE_CARD_ANALYSIS_MODEL=<model-name> when running the frontend in local dev or when rebuilding it.
VITE_CARD_ANALYSIS_MODEL is a Vite frontend environment variable, so it is read at build/dev-server startup time. For Docker/production deployments with a prebuilt frontend, changing this value requires rebuilding the frontend. To change the model at runtime instead, use the Settings UI or POST /api/settings/ai.
Configuration examples¶
Get a free token at https://github.com/settings/tokens/new?description=Pokemon+Card+Scanner&scopes=.
Choose a vision-capable model
Not all models support image input. Make sure the model you select is listed as vision-capable by the provider. The defaults above are all vision-capable.