[Docs] UI - Guide on how to set logo - #23556
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Greptile SummaryThis PR adds a new documentation page ( Key findings:
Confidence Score: 3/5
|
| Filename | Overview |
|---|---|
| docs/my-website/docs/proxy/ui/ui_edit_logo.md | New documentation page for customizing the UI logo. Contains an unused import, a missing critical prerequisite (STORE_MODEL_IN_DB=True) for the API section, an incorrect keyboard shortcut, and an incomplete environment variables example missing LITELLM_FAVICON_URL. |
| docs/my-website/sidebars.js | Sidebar entry added for the new ui_edit_logo page under "Setup & SSO". Change is correct and well-placed. |
Sequence Diagram
sequenceDiagram
participant Admin
participant LiteLLMProxy
participant Config as proxy_config.yaml / DB
Note over Admin,Config: Via API (requires STORE_MODEL_IN_DB=True)
Admin->>LiteLLMProxy: PATCH /settings/update/ui_theme_settings<br/>{logo_url, favicon_url}
LiteLLMProxy->>Config: Save litellm_settings.ui_theme_config
LiteLLMProxy->>LiteLLMProxy: Set UI_LOGO_PATH env var
LiteLLMProxy->>LiteLLMProxy: Set LITELLM_FAVICON_URL env var
LiteLLMProxy-->>Admin: 200 OK
Note over Admin,Config: Read theme settings (public endpoint)
Admin->>LiteLLMProxy: GET /settings/get/ui_theme_settings
LiteLLMProxy->>Config: Read litellm_settings.ui_theme_config
LiteLLMProxy-->>Admin: UIThemeSettingsResponse
Note over Admin,Config: Via proxy_config.yaml
Admin->>Config: Set litellm_settings.ui_theme_config.logo_url
Config->>LiteLLMProxy: Loaded on startup → UI_LOGO_PATH env var
Last reviewed commit: 5af05cc
| @@ -0,0 +1,138 @@ | |||
| import Image from '@theme/IdealImage'; | |||
There was a problem hiding this comment.
Unused import
import Image from '@theme/IdealImage'; is imported on line 1 but never used in the file. All screenshots use standard markdown image syntax (), not the <Image /> component. This will likely produce a linting warning in the Docusaurus build.
| import Image from '@theme/IdealImage'; |
(remove the unused import entirely)
| ## Via the API | ||
|
|
||
| ### Set a Custom Logo | ||
|
|
||
| ```bash | ||
| curl -X PATCH 'http://localhost:4000/settings/update/ui_theme_settings' \ | ||
| -H 'Authorization: Bearer <your-admin-key>' \ | ||
| -H 'Content-Type: application/json' \ | ||
| -d '{ | ||
| "logo_url": "https://example.com/your-company-logo.png" | ||
| }' | ||
| ``` | ||
|
|
||
| ### Set a Custom Favicon | ||
|
|
||
| You can also customize the browser tab favicon: | ||
|
|
||
| ```bash | ||
| curl -X PATCH 'http://localhost:4000/settings/update/ui_theme_settings' \ | ||
| -H 'Authorization: Bearer <your-admin-key>' \ | ||
| -H 'Content-Type: application/json' \ | ||
| -d '{ | ||
| "logo_url": "https://example.com/your-company-logo.png", | ||
| "favicon_url": "https://example.com/your-favicon.ico" | ||
| }' | ||
| ``` | ||
|
|
||
| ### Get Current Theme Settings | ||
|
|
||
| ```bash | ||
| curl -X GET 'http://localhost:4000/settings/get/ui_theme_settings' | ||
| ``` |
There was a problem hiding this comment.
Missing STORE_MODEL_IN_DB prerequisite
The PATCH /settings/update/ui_theme_settings endpoint (and consequently all write API examples in this section) will return a 500 error if STORE_MODEL_IN_DB is not set to True. Looking at the implementation in proxy_setting_endpoints.py (lines 806–812):
if store_model_in_db is not True:
raise HTTPException(
status_code=500,
detail={
"error": "Set `'STORE_MODEL_IN_DB='True'` in your env to enable this feature."
},
)Users following this guide without that env var will get a cryptic 500 error. The prerequisite should be documented before the API examples, for example:
> **Prerequisite:** The `/update/ui_theme_settings` endpoint requires `STORE_MODEL_IN_DB=True` to be set in your environment.|
|
||
| ### 7. Switch Back to LiteLLM | ||
|
|
||
| Navigate back to the LiteLLM UI tab (e.g., press **Cmd + Left** or click the tab). |
There was a problem hiding this comment.
Incorrect keyboard shortcut
"Cmd + Left" moves the cursor to the beginning of a line in text fields — it does not switch browser tabs. The intended shortcut to navigate back in browser history is Cmd + [ (macOS) or simply asking the user to click the tab would be more reliable cross-platform.
| Navigate back to the LiteLLM UI tab (e.g., press **Cmd + Left** or click the tab). | |
| Navigate back to the LiteLLM UI tab (e.g., press **Cmd + [** or click the tab). |
| Or set it as an environment variable: | ||
|
|
||
| ```yaml | ||
| environment_variables: | ||
| UI_LOGO_PATH: "https://example.com/your-company-logo.png" | ||
| ``` |
There was a problem hiding this comment.
Missing LITELLM_FAVICON_URL environment variable
The environment variables section only documents UI_LOGO_PATH but omits the favicon equivalent. Looking at the implementation, the favicon is stored as LITELLM_FAVICON_URL (see proxy_setting_endpoints.py line 860). The section should include both for completeness:
| Or set it as an environment variable: | |
| ```yaml | |
| environment_variables: | |
| UI_LOGO_PATH: "https://example.com/your-company-logo.png" | |
| ``` | |
| Or set them as environment variables: | |
| ```yaml | |
| environment_variables: | |
| UI_LOGO_PATH: "https://example.com/your-company-logo.png" | |
| LITELLM_FAVICON_URL: "https://example.com/your-favicon.ico" # optional |
…#23568) * bump: version 1.82.1 → 1.82.2 * fix(gemini): preserve toolConfig on native generate_content (#23493) * chore: regenerate poetry.lock to match pyproject.toml (#23514) Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * fix claude.md * ui logo (#23556) * fix(proxy): prevent OOM/Prisma connection loss from unbounded managed-object poll (#23472) * fix(proxy): cap managed-object poll size + expire stale rows + kill-switch flag to prevent OOM/Prisma connection loss * fix(constants): simplify PROXY_BATCH_POLLING_ENABLED readability * docs+test: document new polling env vars, add pagination+stale-cleanup tests * fix: exclude stale_expired from batch poll queries; fix update_many assertions in tests * fix: scope stale cleanup to file_purpose, fix file_object mocks, add CheckBatchCost tests * fix: avoid duplicate cost logging in fallback path; guard integer constants against zero/negative values * fix: cache _has_batch_processed_column; guard cleanup from aborting poll; narrow fallback except * fix: add complete/completed to primary query not_in; fix vacuous test assertion - Primary find_many was missing "complete" and "completed" in its not_in filter, creating asymmetry with the fallback query. A job whose status was set to "complete" but whose batch_processed flag update failed would be silently re-fetched and re-processed every cycle, emitting duplicate cost logs. - test_fallback_completion_update_omits_batch_processed patched _is_base64_encoded_unified_file_id to return None, causing an immediate continue — so update() was never called and the assertion looped over an empty list (vacuously true). Rewrote the test to mock the full completion pipeline, verify update() is called exactly once, and assert batch_processed is absent from the update data. - Added symmetric test (primary path) proving batch_processed IS included when the column exists. Made-with: Cursor * fix(huggingface): forward extra_headers to embedding handler (#23502) The huggingface branch in litellm.embedding() did not pass the headers kwarg to huggingface_embed.embedding(), silently dropping user-provided extra_headers like X-HF-Bill-To. Fixes #23502 Made-with: Cursor --------- Co-authored-by: yuneng-jiang <yuneng.jiang@gmail.com> Co-authored-by: Emerson Gomes <emerson.gomes@thalesgroup.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Ishaan Jaffer <ishaanjaffer0324@gmail.com>
[Docs] UI - Guide on how to set logo
Pre-Submission checklist
Please complete all items before asking a LiteLLM maintainer to review your PR
tests/test_litellm/directory, Adding at least 1 test is a hard requirement - see detailsmake test-unit@greptileaiand received a Confidence Score of at least 4/5 before requesting a maintainer reviewCI (LiteLLM team)
Branch creation CI run
Link:
CI run for the last commit
Link:
Merge / cherry-pick CI run
Links:
Type
🆕 New Feature
🐛 Bug Fix
🧹 Refactoring
📖 Documentation
🚄 Infrastructure
✅ Test
Changes