feat!: configure the image model instead of hardcoding Gemini - #48
Open
nielsrowinbik wants to merge 1 commit into
Open
feat!: configure the image model instead of hardcoding Gemini#48nielsrowinbik wants to merge 1 commit into
nielsrowinbik wants to merge 1 commit into
Conversation
Generation was locked to Google's Gemini image API: one model, one place to buy it. The pipeline now calls an OpenAI-compatible chat/completions endpoint (see the illustrations repo), so GENERATE_API_URL and GENERATE_MODEL choose where the calls go — OpenRouter by default, or a server on your own network, which is the case that could not be served before. The app itself still never calls a model. It reads GENERATE_API_KEY as the feature gate and passes the environment through to the pipeline, so the two new variables need no plumbing here; PIPELINE_VERSION moves to v2.0.0 to pick up the pipeline that reads them. BREAKING CHANGE: GEMINI_API_KEY is no longer read; set GENERATE_API_KEY instead. A Google AI key will not authenticate against OpenRouter, so this needs a new key rather than a renamed variable. The refresh service says so at startup when it finds only the old name, rather than silently leaving generation off. * the Home Assistant app's `gemini_api_key` option is now `generate_api_key`, joined by `generate_api_url` and `generate_model`. The unused `generate_max_per_cycle` option is removed as well. Home Assistant validates saved options against the schema, so an app carrying either removed option refuses to start until it is deleted from the configuration.
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
saezuri | 8630df4 | Commit Preview URL Branch Preview URL |
Aug 31 2026, 02:25 PM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Generation was locked to Google's Gemini image API: one model, one place to buy it. The pipeline now calls an OpenAI-compatible chat/completions endpoint (see the illustrations repo), so
GENERATE_API_URLandGENERATE_MODELchoose where the calls go — OpenRouter by default, or a server on your own network, which is the case that could not be served before.The app itself still never calls a model. It reads
GENERATE_API_KEYas the feature gate and passes the environment through to the pipeline, so the two new variables need no plumbing here;PIPELINE_VERSIONmoves to v2.0.0 to pick up the pipeline that reads them.BREAKING CHANGE:
GEMINI_API_KEYis no longer read; setGENERATE_API_KEYinstead. A Google AI key will not authenticate against OpenRouter, so this needs a new key rather than a renamed variable. The refresh service says so at startup when it finds only the old name, rather than silently leaving generation off.BREAKING CHANGE: The Home Assistant app's
gemini_api_keyoption is nowgenerate_api_key, joined bygenerate_api_urlandgenerate_model. The unusedgenerate_max_per_cycleoption is removed as well. Home Assistant validates saved options against the schema, so an app carrying either removed option refuses to start until it is deleted from the configuration.