Skip to content
Merged

Dev #217

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
230 commits
Select commit Hold shift + click to select a range
d13a35a
fix: auto show artifacts when opening a conversation
Oct 10, 2025
a9c4e4b
fix: auto show artifacts when opening a conversation
Oct 10, 2025
eff4022
i18n: add more greek translations
Tsafaras Oct 16, 2025
27e85e4
Merge pull request #18372 from Tsafaras/i18n/more-greek-translations
tjbck Oct 16, 2025
f170f37
i18n: improve zh-CN translation
ShirasawaSama Oct 17, 2025
7c393bc
i18n: improve zh-TW translation
ShirasawaSama Oct 17, 2025
185e01e
German translation of new strings in i18n
Ithanil Oct 17, 2025
a483d41
Patch 1 (#22)
Classic298 Oct 17, 2025
850ca01
Update Georgian translation
EkaterinePapava Oct 17, 2025
c0a91b5
Update translation.json (pt-BR)
joaoback Oct 17, 2025
f97e739
Merge pull request #18394 from joaoback/patch-13
tjbck Oct 17, 2025
ab07bab
Clarify PR guidelines for translation contributions
Classic298 Oct 18, 2025
d347497
Merge branch 'dev' into docs-chore
Classic298 Oct 18, 2025
25087e0
feat: Add CORS validation to WebSocket connections. #18410
ricdikulous Oct 18, 2025
6cb58af
feat: add new feature or fix bug
zhsh-12 Oct 18, 2025
40c450e
Add more granular information to oauth failure messages
taylorwilsdon Oct 18, 2025
c107a37
Added a targeted utility to wipe all OAuth sessions for a provider so…
taylorwilsdon Oct 18, 2025
d49fb9c
complete cleanup of oauth clients
taylorwilsdon Oct 18, 2025
ecbf74d
Added a preflight authorize check that automatically re-registers MCP…
taylorwilsdon Oct 18, 2025
7d29991
fix: pass youtube_proxy as a `GenericProxyConfig` type object
ivanostanin Oct 19, 2025
6a0300f
build(deps): bump python-jose from 1.4.0 to 1.5.0
athoik Oct 19, 2025
f39f29c
build(deps): bump unstructured from 0.16.17 to 0.18.15
athoik Oct 19, 2025
d6915c0
Merge pull request #18430 from athoik/bump_unstructured
tjbck Oct 19, 2025
f503ba4
Merge pull request #18424 from athoik/bump_python_jose
tjbck Oct 19, 2025
6910127
Merge pull request #18413 from zhsh-12/fix-manifest-duplicate-crossor…
tjbck Oct 19, 2025
9762ef3
refac
tjbck Oct 19, 2025
4b74034
black fmt
taylorwilsdon Oct 19, 2025
8af6a4c
refac: direct connections
tjbck Oct 19, 2025
0031fb8
fix: correctly handle clipboard images in prompts
silentoplayz Oct 20, 2025
9784eb4
fix: load default settings when sessionStorage is empty
acwoo97 Oct 20, 2025
375d29b
Merge pull request #18438 from acwoo97/fix/load-defaults
tjbck Oct 20, 2025
680361a
Merge pull request #18419 from ivanostanin/fix-youtube-proxy-passing
tjbck Oct 20, 2025
ca332db
refac
tjbck Oct 20, 2025
ca5bafc
refac
tjbck Oct 20, 2025
3984184
Merge pull request #18411 from ricdikulous/feat/websocket-cors-security
tjbck Oct 20, 2025
7a83e7d
Merge pull request #18395 from EkaterinePapava/main
tjbck Oct 20, 2025
3af6192
Merge pull request #18384 from ShirasawaSama/patch-38
tjbck Oct 20, 2025
32996a1
Merge pull request #18449 from open-webui/main
tjbck Oct 20, 2025
a2b3abf
Merge pull request #18385 from ShirasawaSama/patch-39
tjbck Oct 20, 2025
2a8b0b2
Merge pull request #18388 from Ithanil/de_i18n
tjbck Oct 20, 2025
acac6d5
fix/refac: docling
tjbck Oct 20, 2025
3e003a5
refac
tjbck Oct 20, 2025
9aea08c
Merge pull request #18389 from Classic298/docs-chore
tjbck Oct 20, 2025
43eac35
refac: code block stdout/err styling
tjbck Oct 20, 2025
f5899e8
refac/fix: 72 bytes+ password
tjbck Oct 20, 2025
2b0b87c
fix: handle invalid order_by attribute in Chat
kaiwinut Oct 20, 2025
892ddf9
Revise feature request template for clarity
Classic298 Oct 20, 2025
1f89eac
Merge pull request #18455 from Classic298/patch-1
tjbck Oct 20, 2025
e24fec0
Merge pull request #18452 from kaiwinut/fix/chat-getattr-error
tjbck Oct 20, 2025
e361606
feat: add toggleable hotkey hints to sidebar buttons and refac Shortc…
silentoplayz Oct 12, 2025
e225435
fix: fix color of Attach Webpage button when model not support file u…
ShirasawaSama Oct 21, 2025
b754aad
fix: do not display the move menu when folders are empty
ShirasawaSama Oct 21, 2025
da89e36
fix: Do not display divider when no integrations enabled
ShirasawaSama Oct 21, 2025
c469369
UPD_i18n: es-ES Translation v0.6.35
rgaricano Oct 21, 2025
098e64b
i18n: improve Chinese translation
ShirasawaSama Oct 21, 2025
1be9187
fix: Clear file list when selected models do not support file uploads
ShirasawaSama Oct 21, 2025
8cbc472
Merge pull request #18491 from ShirasawaSama/i18n/improve-chinese-tra…
tjbck Oct 21, 2025
9c9085a
Merge pull request #18487 from ShirasawaSama/patch-42
tjbck Oct 21, 2025
bc9067d
Merge pull request #18489 from rgaricano/dev-es_ES
tjbck Oct 21, 2025
a708cdf
Merge pull request #18483 from ShirasawaSama/patch-40
tjbck Oct 21, 2025
b9f0d23
Merge pull request #18484 from ShirasawaSama/patch-41
tjbck Oct 21, 2025
b68a5f3
Merge pull request #18496 from ShirasawaSama/patch-44
tjbck Oct 21, 2025
0a78cee
fix: dictate autosend
tjbck Oct 21, 2025
9942de8
refac/fix: mermaid
tjbck Oct 21, 2025
eb9c4c0
refac/fix: insert prompt as rich text
tjbck Oct 21, 2025
6593b7c
refac
tjbck Oct 21, 2025
3c7e739
refac
silentoplayz Oct 18, 2025
23ea754
fix: create new note
tjbck Oct 21, 2025
fe192eb
compressImage: preserve image type
duncansmart Oct 22, 2025
92f359f
Merge pull request #18506 from duncansmart/patch-1
tjbck Oct 22, 2025
710f6ee
Merge pull request #18473 from silentoplayz/hotkey-hints-sidebar
tjbck Oct 22, 2025
8f5eb03
refac: styling
tjbck Oct 22, 2025
546a334
refac
tjbck Oct 22, 2025
6eecade
refac
tjbck Oct 23, 2025
02a2683
fix: display correct keys for international keyboards
silentoplayz Oct 23, 2025
8f060ee
fix: prevent cancellation scope corruption by exitting in LIFO and ha…
OAburub Oct 23, 2025
e171c79
refac: styling
tjbck Oct 23, 2025
e0e50f7
fix: validate folder and channel names before creation
iPagar Oct 23, 2025
2677946
doc: readme
tjbck Oct 24, 2025
35504e8
feat: add OAUTH_ROLES_SEPARATOR env var
attilaolah Oct 24, 2025
c165a6b
fix: exclude empty roles
attilaolah Oct 24, 2025
006a2d6
fix: Modify ActionsSelector to handle global action states
Classic298 Oct 24, 2025
7222a9a
fix: prevent UI freeze by initializing distances array
silentoplayz Oct 24, 2025
17e80ec
fix: add stable scrollbar gutter to Modal component
iPagar Oct 24, 2025
6471945
fix: conditionally render system instructions in Chat component
iPagar Oct 24, 2025
79b0c3a
refac: update spacing in UserMenu dropdown items
iPagar Oct 24, 2025
c0fc37d
Update translation.json
03xb7 Oct 24, 2025
c7df4c5
Merge pull request #18602 from htulipe/patch-1
tjbck Oct 25, 2025
d28559c
Merge pull request #18595 from iPagar/menu-gaps-patch
tjbck Oct 25, 2025
5444210
Merge pull request #18591 from iPagar/modal
tjbck Oct 25, 2025
1f287be
Merge pull request #18585 from silentoplayz/fix-ui-freeze-on-mixed-so…
tjbck Oct 25, 2025
06e280d
Merge pull request #18577 from Classic298/fix-global-activated-actions
tjbck Oct 25, 2025
46a8e4a
Merge pull request #18594 from iPagar/chat-system-trim
tjbck Oct 25, 2025
f06e2c1
FIX:style_dark_mode_select_boxes
rgaricano Oct 25, 2025
82c45b7
Merge pull request #18564 from iPagar/empty-names
tjbck Oct 26, 2025
f83dc60
Merge pull request #18572 from attilaolah/issue-18542
tjbck Oct 26, 2025
a4d0bd1
Merge pull request #18537 from OAburub/patch
tjbck Oct 26, 2025
d11d49a
refac
tjbck Oct 26, 2025
7a3f4d8
refactor: replace requests with Firecrawl SDK in search and requests …
wei840222 Oct 26, 2025
235ed89
UPD: Refactor dark select styles using Tailwind CSS classes
rgaricano Oct 26, 2025
2f6a050
Refactor dark mode select styles-more specific
rgaricano Oct 26, 2025
c9465da
Merge pull request #18636 from rgaricano/dev-FIXSTYLES_dark_mode_sele…
tjbck Oct 26, 2025
0c4a1ac
Merge pull request #18635 from wei840222/dev
tjbck Oct 26, 2025
8197844
refac
tjbck Oct 27, 2025
82c08a3
enh: sidebar models collapsible
tjbck Oct 27, 2025
ed6449d
refac: chat navbar menu
tjbck Oct 27, 2025
54c05ac
refac: swtich
tjbck Oct 27, 2025
a70bc52
chore: format
tjbck Oct 27, 2025
69e1ba8
Merge pull request #18533 from silentoplayz/fix-keyboard-shortcuts-di…
tjbck Oct 27, 2025
20cd9e9
chore: svelte5 bump
tjbck Oct 27, 2025
c573321
refac
tjbck Oct 27, 2025
5338edd
refac
tjbck Oct 27, 2025
a996497
refac/fix: marker api key validation
tjbck Oct 27, 2025
46a3f7d
refac: rm rich text highlight
tjbck Oct 27, 2025
f472143
refac
tjbck Oct 27, 2025
b2ed5be
add danish translation
sinejespersen Oct 27, 2025
5e17882
fix: use trusted env in web search loader
wangweixuan Oct 27, 2025
b724430
refac/chore: svelte 5 migration
tjbck Oct 27, 2025
182e413
refac: styling
tjbck Oct 27, 2025
f0834e3
Merge pull request #18648 from itk-dev/feature/danish-translations-added
tjbck Oct 27, 2025
bfadbc9
Merge pull request #18415 from taylorwilsdon/oauth_error_handling_enh
tjbck Oct 27, 2025
92aafd6
refac
tjbck Oct 27, 2025
c8b2313
refac
tjbck Oct 27, 2025
cbcab06
refac
tjbck Oct 27, 2025
b9bbf22
refac
tjbck Oct 27, 2025
a776dbd
refac
tjbck Oct 28, 2025
76bde40
refac
tjbck Oct 28, 2025
81c530a
Merge pull request #18667 from wangweixuan/fix-7008
tjbck Oct 28, 2025
e986488
enh: ELEVENLABS_API_BASE_URL env var
tjbck Oct 28, 2025
f524a6a
refac/fix: kb image upload handling
tjbck Oct 28, 2025
d1c9555
refac
tjbck Oct 28, 2025
48b538f
Merge pull request #18432 from silentoplayz/fix-clipboard-image-paste
tjbck Oct 28, 2025
61a2909
refac
tjbck Oct 28, 2025
a0068c4
refac
tjbck Oct 28, 2025
292be82
refac/fix: sidebar open status
tjbck Oct 29, 2025
4a03597
fix: add tooltips to tools on model edit page
silentoplayz Oct 29, 2025
3bcf9a4
fix: make SSL verification async
OAburub Oct 29, 2025
8feed02
fix: de-duplicate model tags case-insensitively (#18716)
silentoplayz Oct 30, 2025
16af088
Merge pull request #18714 from OAburub/patch
tjbck Oct 30, 2025
1d98a45
refac
tjbck Oct 30, 2025
f18f1db
Merge pull request #18707 from silentoplayz/fix-tool-tooltip-description
tjbck Oct 30, 2025
9f83726
i18n: improve Chinese translation
ShirasawaSama Oct 31, 2025
15cc9b6
fix: titles are not generated if title auto-generation is set to fals…
acomarcho Oct 31, 2025
24aeec9
Don't missguide Tika with mime-type
mkhludnev Oct 31, 2025
c787070
Merge pull request #18765 from mkhludnev/patch-2
tjbck Oct 31, 2025
da282ce
fix: duplicate prompt suggestions freezes webpage
acomarcho Nov 1, 2025
7fc4c56
Merge pull request #18761 from acomarcho/fix/chat-title-not-generated…
tjbck Nov 1, 2025
fdc0f04
refac
tjbck Nov 1, 2025
43f817a
Merge pull request #18751 from ShirasawaSama/i18n/improve-chinese-tra…
tjbck Nov 1, 2025
ee61970
refac
tjbck Nov 1, 2025
fdf7ca1
refac
tjbck Nov 1, 2025
cf6a476
Update translation.json (Estonian translations)
IllimarR Nov 1, 2025
00eacfc
Merge branch 'dev' into main
IllimarR Nov 1, 2025
20af60b
refac
tjbck Nov 1, 2025
d98c539
refac
tjbck Nov 1, 2025
a9b4774
Merge pull request #18847 from IllimarR/main
tjbck Nov 1, 2025
9e8e004
Add id attributes for better element identification
andrewbbaek Nov 2, 2025
478163e
Merge pull request #18867 from andrewbbaek/dev
tjbck Nov 2, 2025
6681ff5
refac/fix: endpoint conflict
tjbck Nov 2, 2025
d14329b
refac
tjbck Nov 2, 2025
024f78d
refac/fix: reasoning content tag parsing
tjbck Nov 2, 2025
67aa1b0
refac/fix: note export
tjbck Nov 3, 2025
1447102
i18n: improve Chinese translation
ShirasawaSama Nov 3, 2025
08bc00e
Merge pull request #18879 from ShirasawaSama/i18n/improve-chinese-tra…
tjbck Nov 3, 2025
989f192
enh: force refresh page on update
tjbck Nov 3, 2025
71b86c0
fix: correct chat preview loading in search modal
silentoplayz Nov 4, 2025
244809b
fix: update Functions page after deleting a function
silentoplayz Nov 4, 2025
ec21577
Merge branch 'dev' of https://github.com/open-webui/open-webui into dev
tjbck Nov 4, 2025
bafeb76
refac/fix: trusted env for proxy
tjbck Nov 4, 2025
a8fe979
refac
tjbck Nov 4, 2025
939521b
Merge pull request #18912 from silentoplayz/fix-functions-page-delete
tjbck Nov 4, 2025
8e5690a
refac: images
tjbck Nov 4, 2025
414ab51
refac: user menu alignment
tjbck Nov 4, 2025
03f207b
enh: display mcp connection error
tjbck Nov 4, 2025
a4fd26b
enh/fix: google pse referer header
tjbck Nov 4, 2025
3561c7e
feat: add voxtral support
Nov 4, 2025
75efa4f
refac
tjbck Nov 4, 2025
2a98ba0
refac/fix
tjbck Nov 4, 2025
89e59d0
revert
tjbck Nov 4, 2025
cde4b93
Merge pull request #18934 from mgl/feat/voxtral-support
tjbck Nov 4, 2025
314cac0
refac: dedup tags
tjbck Nov 5, 2025
72900cd
refac: images
tjbck Nov 5, 2025
8d34fcb
enh: gemini flash image generation support
tjbck Nov 5, 2025
72f8539
feat: image edit support
tjbck Nov 5, 2025
5c1ba23
refac
tjbck Nov 5, 2025
3dc20a2
refac: styling
tjbck Nov 5, 2025
cdf9022
refac
tjbck Nov 5, 2025
6c583ef
refac/fix: mineru params
tjbck Nov 5, 2025
00520a9
fix: message input dictate
tjbck Nov 6, 2025
415b93c
enh: configurable mistral ocr base url
tjbck Nov 6, 2025
bdd198e
a11y: message role
tjbck Nov 6, 2025
4daf81f
Merge pull request #18841 from acomarcho/fix/duplicate-prompt-suggest…
tjbck Nov 6, 2025
1aa285e
Merge pull request #18911 from silentoplayz/fix-chat-preview-bug
tjbck Nov 6, 2025
f5c7152
enh/fix: update extra params for native function calling
tjbck Nov 6, 2025
e2b9942
feat: Optionally forward user headers to external document loader
tjbck Nov 6, 2025
3b94407
i18n: improve Chinese translation
ShirasawaSama Nov 6, 2025
1cc3493
enh/refac: read aloud audio queue
tjbck Nov 6, 2025
aed2d4a
Merge pull request #18955 from ShirasawaSama/i18n/improve-chinese-tra…
tjbck Nov 6, 2025
5f3f517
Merge pull request #18215 from avatsaev/fix-auto-show-artifacts
tjbck Nov 6, 2025
e4e2f83
Revise SECURITY.md for improved clarity
Classic298 Nov 6, 2025
74db2b9
Merge pull request #18956 from Classic298/patch-2
tjbck Nov 6, 2025
63e8ab7
feat: comfyui image edit support
tjbck Nov 6, 2025
7f4b45e
revert/fix: edit valves modal
tjbck Nov 6, 2025
d3f40c5
chore: Update CHANGELOG for version 0.6.35 (#18481)
Classic298 Nov 6, 2025
224e4c3
chore: format
tjbck Nov 6, 2025
4e18c8a
refac
tjbck Nov 6, 2025
cabbdd7
refac
tjbck Nov 6, 2025
8da4e5b
fix(chats): fix chat search crash (#18576)
Davixk Nov 6, 2025
dc3d704
refac: shortcuts
tjbck Nov 6, 2025
651f855
refac
tjbck Nov 6, 2025
9c0bd0c
refac
tjbck Nov 6, 2025
d5fe0f6
refac
tjbck Nov 6, 2025
e85c7f7
Merge pull request #18402 from open-webui/dev
tjbck Nov 6, 2025
67c4ea1
fix: image edit workflow editor
tjbck Nov 6, 2025
c38f878
fix: firecrawl import
tjbck Nov 6, 2025
7faf19d
refac
tjbck Nov 6, 2025
639d262
fix: Socket.IO CORS warning
tjbck Nov 6, 2025
96b98cd
feat: add OAUTH_GROUPS_SEPARATOR for configurable group parsing
rndmcnlly Nov 6, 2025
4754108
Merge pull request #18987 from rndmcnlly/feat/oauth-groups-separator-v2
tjbck Nov 6, 2025
c2c0284
fix: tool calling
tjbck Nov 6, 2025
e239e17
fix: Shortcuts Modal i18n
EntropyYue Nov 6, 2025
9b3ecb7
chore: bump
tjbck Nov 6, 2025
a32a3df
chore: CHANGELOG 0.6.36
Classic298 Nov 6, 2025
0d0a37c
chore: format
tjbck Nov 6, 2025
261a55b
Merge pull request #18989 from Classic298/patch-2
tjbck Nov 6, 2025
918e720
Merge pull request #18990 from EventHorizon-AI/fix/shortcuts-i18n
tjbck Nov 6, 2025
49d57ae
chore: format
tjbck Nov 6, 2025
e0d5de1
Merge pull request #18978 from open-webui/dev
tjbck Nov 6, 2025
27bc21b
Merge remote-tracking branch 'oui/main' into dev
OrenZhang Nov 7, 2025
d5e401e
chore(repo): merge from remote
OrenZhang Nov 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 100 additions & 0 deletions CHANGELOG.md

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions CHANGELOG_EXTRA.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.6.36.1] - 2025.11.07

### Changed

- 合并官方 0.6.36 改动

## [0.6.34.1] - 2025.10.17

### Changed
Expand Down
176 changes: 136 additions & 40 deletions backend/open_webui/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -620,25 +620,34 @@ def __getattr__(self, key):
os.environ.get("OAUTH_BLOCKED_GROUPS", "[]"),
)

OAUTH_GROUPS_SEPARATOR = os.environ.get("OAUTH_GROUPS_SEPARATOR", ";")

OAUTH_ROLES_CLAIM = PersistentConfig(
"OAUTH_ROLES_CLAIM",
"oauth.roles_claim",
os.environ.get("OAUTH_ROLES_CLAIM", "roles"),
)

SEP = os.environ.get("OAUTH_ROLES_SEPARATOR", ",")

OAUTH_ALLOWED_ROLES = PersistentConfig(
"OAUTH_ALLOWED_ROLES",
"oauth.allowed_roles",
[
role.strip()
for role in os.environ.get("OAUTH_ALLOWED_ROLES", "user,admin").split(",")
for role in os.environ.get("OAUTH_ALLOWED_ROLES", f"user{SEP}admin").split(SEP)
if role
],
)

OAUTH_ADMIN_ROLES = PersistentConfig(
"OAUTH_ADMIN_ROLES",
"oauth.admin_roles",
[role.strip() for role in os.environ.get("OAUTH_ADMIN_ROLES", "admin").split(",")],
[
role.strip()
for role in os.environ.get("OAUTH_ADMIN_ROLES", "admin").split(SEP)
if role
],
)

OAUTH_ALLOWED_DOMAINS = PersistentConfig(
Expand Down Expand Up @@ -2472,6 +2481,12 @@ class BannerModel(BaseModel):
os.getenv("DOCUMENT_INTELLIGENCE_KEY", ""),
)

MISTRAL_OCR_API_BASE_URL = PersistentConfig(
"MISTRAL_OCR_API_BASE_URL",
"rag.MISTRAL_OCR_API_BASE_URL",
os.getenv("MISTRAL_OCR_API_BASE_URL", "https://api.mistral.ai/v1"),
)

MISTRAL_OCR_API_KEY = PersistentConfig(
"MISTRAL_OCR_API_KEY",
"rag.mistral_ocr_api_key",
Expand Down Expand Up @@ -3068,16 +3083,30 @@ class BannerModel(BaseModel):
# Images
####################################

ENABLE_IMAGE_GENERATION = PersistentConfig(
"ENABLE_IMAGE_GENERATION",
"image_generation.enable",
os.environ.get("ENABLE_IMAGE_GENERATION", "").lower() == "true",
)

IMAGE_GENERATION_ENGINE = PersistentConfig(
"IMAGE_GENERATION_ENGINE",
"image_generation.engine",
os.getenv("IMAGE_GENERATION_ENGINE", "openai"),
)

ENABLE_IMAGE_GENERATION = PersistentConfig(
"ENABLE_IMAGE_GENERATION",
"image_generation.enable",
os.environ.get("ENABLE_IMAGE_GENERATION", "").lower() == "true",
IMAGE_GENERATION_MODEL = PersistentConfig(
"IMAGE_GENERATION_MODEL",
"image_generation.model",
os.getenv("IMAGE_GENERATION_MODEL", ""),
)

IMAGE_SIZE = PersistentConfig(
"IMAGE_SIZE", "image_generation.size", os.getenv("IMAGE_SIZE", "512x512")
)

IMAGE_STEPS = PersistentConfig(
"IMAGE_STEPS", "image_generation.steps", int(os.getenv("IMAGE_STEPS", 50))
)

ENABLE_IMAGE_PROMPT_GENERATION = PersistentConfig(
Expand All @@ -3097,34 +3126,17 @@ class BannerModel(BaseModel):
os.getenv("AUTOMATIC1111_API_AUTH", ""),
)

AUTOMATIC1111_CFG_SCALE = PersistentConfig(
"AUTOMATIC1111_CFG_SCALE",
"image_generation.automatic1111.cfg_scale",
(
float(os.environ.get("AUTOMATIC1111_CFG_SCALE"))
if os.environ.get("AUTOMATIC1111_CFG_SCALE")
else None
),
)
automatic1111_params = os.getenv("AUTOMATIC1111_PARAMS", "")
try:
automatic1111_params = json.loads(automatic1111_params)
except json.JSONDecodeError:
automatic1111_params = {}

AUTOMATIC1111_SAMPLER = PersistentConfig(
"AUTOMATIC1111_SAMPLER",
"image_generation.automatic1111.sampler",
(
os.environ.get("AUTOMATIC1111_SAMPLER")
if os.environ.get("AUTOMATIC1111_SAMPLER")
else None
),
)

AUTOMATIC1111_SCHEDULER = PersistentConfig(
"AUTOMATIC1111_SCHEDULER",
"image_generation.automatic1111.scheduler",
(
os.environ.get("AUTOMATIC1111_SCHEDULER")
if os.environ.get("AUTOMATIC1111_SCHEDULER")
else None
),
AUTOMATIC1111_PARAMS = PersistentConfig(
"AUTOMATIC1111_PARAMS",
"image_generation.automatic1111.api_auth",
automatic1111_params,
)

COMFYUI_BASE_URL = PersistentConfig(
Expand Down Expand Up @@ -3289,18 +3301,79 @@ class BannerModel(BaseModel):
os.getenv("IMAGES_GEMINI_API_KEY", GEMINI_API_KEY),
)

IMAGE_SIZE = PersistentConfig(
"IMAGE_SIZE", "image_generation.size", os.getenv("IMAGE_SIZE", "512x512")
IMAGES_GEMINI_ENDPOINT_METHOD = PersistentConfig(
"IMAGES_GEMINI_ENDPOINT_METHOD",
"image_generation.gemini.endpoint_method",
os.getenv("IMAGES_GEMINI_ENDPOINT_METHOD", ""),
)

IMAGE_STEPS = PersistentConfig(
"IMAGE_STEPS", "image_generation.steps", int(os.getenv("IMAGE_STEPS", 50))

IMAGE_EDIT_ENGINE = PersistentConfig(
"IMAGE_EDIT_ENGINE",
"images.edit.engine",
os.getenv("IMAGE_EDIT_ENGINE", "openai"),
)

IMAGE_GENERATION_MODEL = PersistentConfig(
"IMAGE_GENERATION_MODEL",
"image_generation.model",
os.getenv("IMAGE_GENERATION_MODEL", ""),
IMAGE_EDIT_MODEL = PersistentConfig(
"IMAGE_EDIT_MODEL",
"images.edit.model",
os.getenv("IMAGE_EDIT_MODEL", ""),
)

IMAGE_EDIT_SIZE = PersistentConfig(
"IMAGE_EDIT_SIZE", "images.edit.size", os.getenv("IMAGE_EDIT_SIZE", "")
)

IMAGES_EDIT_OPENAI_API_BASE_URL = PersistentConfig(
"IMAGES_EDIT_OPENAI_API_BASE_URL",
"images.edit.openai.api_base_url",
os.getenv("IMAGES_EDIT_OPENAI_API_BASE_URL", OPENAI_API_BASE_URL),
)
IMAGES_EDIT_OPENAI_API_VERSION = PersistentConfig(
"IMAGES_EDIT_OPENAI_API_VERSION",
"images.edit.openai.api_version",
os.getenv("IMAGES_EDIT_OPENAI_API_VERSION", ""),
)

IMAGES_EDIT_OPENAI_API_KEY = PersistentConfig(
"IMAGES_EDIT_OPENAI_API_KEY",
"images.edit.openai.api_key",
os.getenv("IMAGES_EDIT_OPENAI_API_KEY", OPENAI_API_KEY),
)

IMAGES_EDIT_GEMINI_API_BASE_URL = PersistentConfig(
"IMAGES_EDIT_GEMINI_API_BASE_URL",
"images.edit.gemini.api_base_url",
os.getenv("IMAGES_EDIT_GEMINI_API_BASE_URL", GEMINI_API_BASE_URL),
)
IMAGES_EDIT_GEMINI_API_KEY = PersistentConfig(
"IMAGES_EDIT_GEMINI_API_KEY",
"images.edit.gemini.api_key",
os.getenv("IMAGES_EDIT_GEMINI_API_KEY", GEMINI_API_KEY),
)


IMAGES_EDIT_COMFYUI_BASE_URL = PersistentConfig(
"IMAGES_EDIT_COMFYUI_BASE_URL",
"images.edit.comfyui.base_url",
os.getenv("IMAGES_EDIT_COMFYUI_BASE_URL", ""),
)
IMAGES_EDIT_COMFYUI_API_KEY = PersistentConfig(
"IMAGES_EDIT_COMFYUI_API_KEY",
"images.edit.comfyui.api_key",
os.getenv("IMAGES_EDIT_COMFYUI_API_KEY", ""),
)

IMAGES_EDIT_COMFYUI_WORKFLOW = PersistentConfig(
"IMAGES_EDIT_COMFYUI_WORKFLOW",
"images.edit.comfyui.workflow",
os.getenv("IMAGES_EDIT_COMFYUI_WORKFLOW", ""),
)

IMAGES_EDIT_COMFYUI_WORKFLOW_NODES = PersistentConfig(
"IMAGES_EDIT_COMFYUI_WORKFLOW_NODES",
"images.edit.comfyui.nodes",
[],
)

####################################
Expand Down Expand Up @@ -3335,6 +3408,11 @@ class BannerModel(BaseModel):
os.getenv("DEEPGRAM_API_KEY", ""),
)

# ElevenLabs configuration
ELEVENLABS_API_BASE_URL = os.getenv(
"ELEVENLABS_API_BASE_URL", "https://api.elevenlabs.io"
)

AUDIO_STT_OPENAI_API_BASE_URL = PersistentConfig(
"AUDIO_STT_OPENAI_API_BASE_URL",
"audio.stt.openai.api_base_url",
Expand Down Expand Up @@ -3401,6 +3479,24 @@ class BannerModel(BaseModel):
os.getenv("AUDIO_STT_AZURE_MAX_SPEAKERS", ""),
)

AUDIO_STT_MISTRAL_API_KEY = PersistentConfig(
"AUDIO_STT_MISTRAL_API_KEY",
"audio.stt.mistral.api_key",
os.getenv("AUDIO_STT_MISTRAL_API_KEY", ""),
)

AUDIO_STT_MISTRAL_API_BASE_URL = PersistentConfig(
"AUDIO_STT_MISTRAL_API_BASE_URL",
"audio.stt.mistral.api_base_url",
os.getenv("AUDIO_STT_MISTRAL_API_BASE_URL", "https://api.mistral.ai/v1"),
)

AUDIO_STT_MISTRAL_USE_CHAT_COMPLETIONS = PersistentConfig(
"AUDIO_STT_MISTRAL_USE_CHAT_COMPLETIONS",
"audio.stt.mistral.use_chat_completions",
os.getenv("AUDIO_STT_MISTRAL_USE_CHAT_COMPLETIONS", "false").lower() == "true",
)

AUDIO_TTS_OPENAI_API_BASE_URL = PersistentConfig(
"AUDIO_TTS_OPENAI_API_BASE_URL",
"audio.tts.openai.api_base_url",
Expand Down
Loading
Loading