issue: Performance: Page load (model api request) takes >3 seconds for Non-Admin users but 350 ms for Admin user #5715

Closed
opened 2025-11-11 16:31:20 -06:00 by GiteaMirror · 1 comment
Owner

Originally created by @skjoedt on GitHub (Jul 7, 2025).

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of Open WebUI.

Installation Method

Docker

Open WebUI Version

v0.6.15

Ollama Version (if applicable)

N/A

Operating System

MacOS and Ubuntu 22.04

Browser (if applicable)

Chrome 138.0.7204.93

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

A non-admin user should see the same page loading time for openwebui as an admin user.

Actual Behavior

A non-admin user with access to 5 models has page loading times (specific to the models api request) at 10x an admin user with access to all models.

In testing (localhost); 950 ms vs 150 ms
In production; 3500 ms vs 350 ms

Steps to Reproduce

  1. On localhost running MacOS 15.5 (Macbook M1)
  2. Run latest docker version using orbstack
  3. Deploy webui with the docker compose file below
  4. Deploy litellm with the config.yaml below having all 6 external AI apis with wildcards to select all available models
  5. Refresh page of http://chat.traefik.me with the admin user and see network requests to chat.traefik.me/api/models api at around 150 ms (around 350 ms in production)
  6. Refresh page of http://chat.traefik.me with a non-admin user and see network requests to the chat.traefik.me/api/models api at around 950 ms (worse in production with times around 3.5 s)

Docker compose (excluding litellm deployment)

---
x-labels-openwebui: &labels-openwebui
  - "traefik.enable=true"
  - "traefik.http.routers.chat.rule=Host(`${FQDN:-chat.traefik.me}`)"
  - "traefik.http.routers.chat.entrypoints=websecure"
  - "traefik.http.routers.chat.tls=true"
  - "traefik.http.services.chat.loadbalancer.server.port=8080"

x-labels-litellm: &labels-litellm
  - "traefik.enable=true"
  - "traefik.http.routers.litellm.rule=Host(`${LITELLM_FQDN:-litellm.traefik.me}`)"
  - "traefik.http.routers.litellm.entrypoints=websecure"
  - "traefik.http.routers.litellm.tls=true"
  - "traefik.http.services.litellm.loadbalancer.server.port=4000"

x-deployment-openwebi: &deployment-openwebui
  deploy:
    labels: *labels-openwebui

x-deployment-litellm: &deployment-litellm
  deploy:
    labels: *labels-litellm

services:
  openwebui:
    image: ghcr.io/open-webui/open-webui:main
    volumes: 
      - open-webui:/app/backend/data
    depends_on:
      - db
    environment: # Do not specify variables labelled PersistentConfig. See https://docs.openwebui.com/getting-started/env-configuration/
      DATABASE_URL: postgres://openwebui:${OPENWEBUI_DATABASE_PASSWORD:-}@db:5432/openwebui?sslmode=disable
      WEBUI_NAME: Evaxion
      WEBUI_URL: https://${FQDN:-chat.traefik.me}
      ENABLE_OAUTH_SIGNUP: ${ENABLE_OAUTH_SIGNUP:-true}
      ENABLE_SIGNUP: 'false'
      OAUTH_MERGE_ACCOUNTS_BY_EMAIL: 'true'
      MICROSOFT_CLIENT_ID: ${MICROSOFT_CLIENT_ID:-}
      MICROSOFT_CLIENT_SECRET: ${MICROSOFT_CLIENT_SECRET:-}
      MICROSOFT_CLIENT_TENANT_ID: ${MICROSOFT_CLIENT_TENANT_ID:-}
      MICROSOFT_REDIRECT_URI: "https://${FQDN:-chat.traefik.me}/oauth/microsoft/callback"
      ENABLE_PERSISTENT_CONFIG: 'false'
      ENABLE_LOGIN_FORM: ${ENABLE_LOGIN_FORM:-false}
      # Ollama is not running and cause delays when loading the webui
      ENABLE_OLLAMA_API: 'false'
      # General configuration
      DEFAULT_USER_ROLE: user
      ENABLE_OPENAI_API: 'true'
      OPENAI_API_BASE_URL: 'http://litellm:4000'
      OPENAI_API_KEY: ${LITELLM_API_KEY:-}
      TASK_MODEL_EXTERNAL: openai/chatgpt-4
      ENABLE_EVALUATION_ARENA_MODELS: 'false'
      CONTENT_EXTRACTION_ENGINE: docling
      DOCLING_SERVER_URL: http://docling:5001
      DOCLING_OCR_ENGINE: tesseract
      RAG_EMBEDDING_ENGINE: openai
      RAG_EMBEDDING_MODEL: openai/text-embedding-3-small
      RAG_OPENAI_API_BASE_URL: 'http://litellm:4000'
      RAG_OPENAI_API_KEY: ${LITELLM_API_KEY:-}
      ENABLE_WEB_SEARCH: 'true'
      WEB_SEARCH_ENGINE: perplexity
      PERPLEXITY_API_KEY: ${PERPLEXITY_API_KEY:-}
      #AUDIO_STT_ENGINE: openai 
      #ENABLE_IMAGE_GENERATION: 'true'
      USER_PERMISSIONS_WORKSPACE_MODELS_ACCESS: 'true'
      USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ACCESS: 'true'
      USER_PERMISSIONS_WORKSPACE_PROMPTS_ACCESS: 'true'

    networks:
      - traefik_public
      - openwebui_internal
    labels: *labels-openwebui
    <<: *deployment-openwebui

  litellm:
    build:
      context: .
      args:
        target: runtime
    image: ghcr.io/berriai/litellm:main-stable
    command: ["--config", "/app/config.yaml"]
    depends_on:
      - db-litellm
    environment:
      DATABASE_URL: postgres://litellm:${LITELLM_DATABASE_PASSWORD:-}@db-litellm:5432/litellm?sslmode=disable
      STORE_MODEL_IN_DB: "True"
      LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY:-sk-1234}
      LITELLM_SALT_KEY: ${LITELLM_SALT_KEY:-sk-1234}
      LITELLM_LOG: ERROR
      OPENAI_API_KEY: ${OPENAI_API_KEY:-}
      ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
      GEMINI_API_KEY: ${GEMINI_API_KEY:-}
      PERPLEXITY_API_KEY: ${PERPLEXITY_API_KEY}
      XAI_API_KEY: ${XAI_API_KEY:-}
      MISTRAL_API_KEY: ${MISTRAL_API_KEY:-}      
    volumes:
      - ./litellm_config.yaml:/app/config.yaml
    networks:
      - traefik_public
      - openwebui_internal
    labels: *labels-litellm
    <<: *deployment-litellm

  docling:
    image: quay.io/docling-project/docling-serve
    environment:
      DOCLING_SERVE_ENABLE_UI: 'true'
    ports:
      - "5001:5001"
    networks:
      - openwebui_internal

  db:
    image: postgres:16
    environment:
      POSTGRES_DB: openwebui
      POSTGRES_PASSWORD: ${OPENWEBUI_DATABASE_PASSWORD:-}
      POSTGRES_USER: openwebui
    logging:
      driver: "none"
    restart: unless-stopped
    volumes:
      - db-data-openwebui:/var/lib/postgresql/data
    networks:
      - openwebui_internal

  db-litellm:
    image: postgres:16
    environment:
      POSTGRES_DB: litellm
      POSTGRES_PASSWORD: ${LITELLM_DATABASE_PASSWORD:-}
      POSTGRES_USER: litellm
    logging:
      driver: "none"
    restart: unless-stopped
    volumes:
      - db-data-litellm:/var/lib/postgresql/data
    networks:
      - openwebui_internal

volumes:
  open-webui:
    external: true
  db-data-openwebui:
  db-data-litellm:

networks:
  traefik_public:
    external: true
  openwebui_internal: {}

Litellm config to show number of available models exposed to openwebui

model_list:
  - model_name: openai/*
    litellm_params:
      model: openai/*
      api_key: os.environ/OPENAI_API_KEY
  - model_name: gemini/*
    litellm_params:
      model: gemini/*
      api_key: os.environ/GEMINI_API_KEY
  - model_name: anthropic/*
    litellm_params:
      model: anthropic/*
      api_key: os.environ/ANTHROPIC_API_KEY
  - model_name: mistral/*
    litellm_params:
      model: mistral/*
      api_key: os.environ/MISTRAL_API_KEY
  - model_name: xai/*
    litellm_params:
      model: xai/*
      api_key: os.environ/XAI_API_KEY
  - model_name: perplexity/*
    litellm_params:
      model: perplexity/*
      api_key: os.environ/PERPLEXITY_API_KEY

Logs & Screenshots

Chrome console log

RichTextInput.svelte:194 [tiptap warn]: Duplicate extension names found: ['codeBlock']. This can lead to issues.
resolve @ index.js:1183
pn @ index.js:1169
createExtensionManager @ index.js:4580
Wf @ index.js:4412
(anonymous) @ RichTextInput.svelte:194
await in (anonymous)
J @ utils.js:41
(anonymous) @ Component.js:47
_t @ scheduler.js:99
Promise.then
ut @ scheduler.js:20
ht @ Component.js:81
(anonymous) @ Component.js:139
(anonymous) @ +layout.svelte:239
await in (anonymous)
J @ utils.js:41
(anonymous) @ Component.js:47
_t @ scheduler.js:99
Promise.then
ut @ scheduler.js:20
ht @ Component.js:81
(anonymous) @ Component.js:139
(anonymous) @ +layout.svelte:637
await in (anonymous)
J @ utils.js:41
(anonymous) @ Component.js:47
_t @ scheduler.js:99
Rt @ Component.js:164
wt @ root.svelte:23
ft @ client.js:472
ee @ client.js:1580
await in ee
Ce @ client.js:398
An @ client.js:1926
$n @ client.js:323
await in $n
(anonymous) @ (index):130
Promise.then
(anonymous) @ (index):129

And snippet from network log showing models takes 3.4 seconds to load.

{
  "log": {
    "version": "1.2",
    "creator": {
      "name": "WebInspector",
      "version": "537.36"
    },
    "pages": [
      {
        "startedDateTime": "2025-07-07T07:30:51.068Z",
        "id": "page_2",
        "title": "https://chat.evax.ai/",
        "pageTimings": {
          "onContentLoad": 108.75700000906363,
          "onLoad": 197.2490000189282
        }
      }
    ],
    "entries": [
      {
        "_initiator": {
          "type": "script",
          "stack": {
            "callFrames": [
              {
                "functionName": "window.fetch",
                "scriptId": "263",
                "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                "lineNumber": 0,
                "columnNumber": 1661
              },
              {
                "functionName": "gs",
                "scriptId": "277",
                "url": "https://chat.evax.ai/_app/immutable/chunks/CWcgswnJ.js",
                "lineNumber": 57,
                "columnNumber": 2431
              },
              {
                "functionName": "",
                "scriptId": "314",
                "url": "https://chat.evax.ai/_app/immutable/nodes/2.DKVYl0jO.js",
                "lineNumber": 2866,
                "columnNumber": 14371
              }
            ],
            "parent": {
              "description": "await",
              "callFrames": [
                {
                  "functionName": "J",
                  "scriptId": "260",
                  "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js",
                  "lineNumber": 0,
                  "columnNumber": 265
                },
                {
                  "functionName": "",
                  "scriptId": "265",
                  "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js",
                  "lineNumber": 3,
                  "columnNumber": 3059
                },
                {
                  "functionName": "_t",
                  "scriptId": "260",
                  "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js",
                  "lineNumber": 0,
                  "columnNumber": 9910
                }
              ],
              "parent": {
                "description": "Promise.then",
                "callFrames": [
                  {
                    "functionName": "ut",
                    "scriptId": "260",
                    "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js",
                    "lineNumber": 0,
                    "columnNumber": 9560
                  },
                  {
                    "functionName": "ht",
                    "scriptId": "265",
                    "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js",
                    "lineNumber": 3,
                    "columnNumber": 3358
                  },
                  {
                    "functionName": "",
                    "scriptId": "265",
                    "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js",
                    "lineNumber": 3,
                    "columnNumber": 3895
                  },
                  {
                    "functionName": "",
                    "scriptId": "268",
                    "url": "https://chat.evax.ai/_app/immutable/nodes/0.KXVYKjPR.js",
                    "lineNumber": 1,
                    "columnNumber": 3815
                  }
                ],
                "parent": {
                  "description": "await",
                  "callFrames": [
                    {
                      "functionName": "J",
                      "scriptId": "260",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js",
                      "lineNumber": 0,
                      "columnNumber": 265
                    },
                    {
                      "functionName": "",
                      "scriptId": "265",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js",
                      "lineNumber": 3,
                      "columnNumber": 3059
                    },
                    {
                      "functionName": "_t",
                      "scriptId": "260",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js",
                      "lineNumber": 0,
                      "columnNumber": 9910
                    },
                    {
                      "functionName": "Rt",
                      "scriptId": "265",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js",
                      "lineNumber": 3,
                      "columnNumber": 4149
                    },
                    {
                      "functionName": "wt",
                      "scriptId": "259",
                      "url": "https://chat.evax.ai/_app/immutable/entry/app.BJI5CN0-.js",
                      "lineNumber": 1,
                      "columnNumber": 7778
                    },
                    {
                      "functionName": "ft",
                      "scriptId": "263",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                      "lineNumber": 0,
                      "columnNumber": 14476
                    },
                    {
                      "functionName": "ee",
                      "scriptId": "263",
                      "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                      "lineNumber": 0,
                      "columnNumber": 23261
                    }
                  ],
                  "parent": {
                    "description": "await",
                    "callFrames": [
                      {
                        "functionName": "Ce",
                        "scriptId": "263",
                        "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                        "lineNumber": 0,
                        "columnNumber": 13762
                      },
                      {
                        "functionName": "An",
                        "scriptId": "263",
                        "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                        "lineNumber": 0,
                        "columnNumber": 25199
                      },
                      {
                        "functionName": "$n",
                        "scriptId": "263",
                        "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js",
                        "lineNumber": 0,
                        "columnNumber": 13313
                      }
                    ],
                    "parent": {
                      "description": "await",
                      "callFrames": [
                        {
                          "functionName": "",
                          "scriptId": "258",
                          "url": "https://chat.evax.ai/",
                          "lineNumber": 129,
                          "columnNumber": 10
                        }
                      ],
                      "parent": {
                        "description": "Promise.then",
                        "callFrames": [
                          {
                            "functionName": "",
                            "scriptId": "258",
                            "url": "https://chat.evax.ai/",
                            "lineNumber": 128,
                            "columnNumber": 8
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "_priority": "High",
        "_resourceType": "fetch",
        "cache": {},
        "connection": "443",
        "pageref": "page_2",
        "request": {
          "method": "GET",
          "url": "https://chat.evax.ai/api/models",
          "httpVersion": "http/2.0",
          "headers": [
            {
              "name": ":authority",
              "value": "chat.evax.ai"
            },
            {
              "name": ":method",
              "value": "GET"
            },
            {
              "name": ":path",
              "value": "/api/models"
            },
            {
              "name": ":scheme",
              "value": "https"
            },
            {
              "name": "accept",
              "value": "application/json"
            },
            {
              "name": "accept-encoding",
              "value": "gzip, deflate, br, zstd"
            },
            {
              "name": "accept-language",
              "value": "en-GB,en-US;q=0.9,en;q=0.8"
            },
            {
              "name": "cache-control",
              "value": "no-cache"
            },
            {
              "name": "content-type",
              "value": "application/json"
            },
            {
              "name": "pragma",
              "value": "no-cache"
            },
            {
              "name": "priority",
              "value": "u=1, i"
            },
            {
              "name": "referer",
              "value": "https://chat.evax.ai/"
            },
            {
              "name": "sec-ch-ua",
              "value": "\"Not)A;Brand\";v=\"8\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\""
            },
            {
              "name": "sec-ch-ua-mobile",
              "value": "?0"
            },
            {
              "name": "sec-ch-ua-platform",
              "value": "\"macOS\""
            },
            {
              "name": "sec-fetch-dest",
              "value": "empty"
            },
            {
              "name": "sec-fetch-mode",
              "value": "cors"
            },
            {
              "name": "sec-fetch-site",
              "value": "same-origin"
            },
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36"
            }
          ],
          "queryString": [],
          "cookies": [],
          "headersSize": -1,
          "bodySize": 0
        },
        "response": {
          "status": 200,
          "statusText": "",
          "httpVersion": "http/2.0",
          "headers": [
            {
              "name": "content-encoding",
              "value": "zstd"
            },
            {
              "name": "content-length",
              "value": "676"
            },
            {
              "name": "content-type",
              "value": "application/json"
            },
            {
              "name": "date",
              "value": "Mon, 07 Jul 2025 07:30:52 GMT"
            },
            {
              "name": "server",
              "value": "uvicorn"
            },
            {
              "name": "vary",
              "value": "Accept-Encoding"
            },
            {
              "name": "x-process-time",
              "value": "3"
            }
          ],
          "cookies": [],
          "content": {
            "size": 4718,
            "mimeType": "application/json",
            "text": "{\"data\":[{\"id\":\"openai/gpt-4o\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"GPT-4o\",\"openai\":{\"id\":\"openai/gpt-4o\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/gpt-4o\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"GPT-4o\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656471,\"created_at\":1751656471},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"openai/o3\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"o3 (reasoning)\",\"openai\":{\"id\":\"openai/o3\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/o3\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"o3 (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656615,\"created_at\":1751656615},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"openai/o4-mini\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"o4-mini (reasoning)\",\"openai\":{\"id\":\"openai/o4-mini\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/o4-mini\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"o4-mini (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656509,\"created_at\":1751656509},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Gemini 2.5 Pro (reasoning)\",\"openai\":{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Gemini 2.5 Pro (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751655134,\"created_at\":1751655134},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Claude 4 Sonnet\",\"openai\":{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Claude 4 Sonnet\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751655102,\"created_at\":1751655102},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"xai/grok-3-latest\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Grok 3\",\"openai\":{\"id\":\"xai/grok-3-latest\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"xai/grok-3-latest\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Grok 3\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656769,\"created_at\":1751656769},\"actions\":[],\"filters\":[],\"tags\":[]}]}"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 710,
          "_error": null,
          "_fetchedViaServiceWorker": false
        },
        "serverIPAddress": "10.0.3.60",
        "startedDateTime": "2025-07-07T07:30:53.115Z",
        "time": 3438.9310000115074,
        "timings": {
          "blocked": 1.834000005301088,
          "dns": -1,
          "ssl": -1,
          "connect": -1,
          "send": 0.10899999999999999,
          "wait": 3436.5419999861865,
          "receive": 0.44600002001971006,
          "_blocked_queueing": 0.4670000053010881,
          "_workerStart": -1,
          "_workerReady": -1,
          "_workerFetchStart": -1,
          "_workerRespondWithSettled": -1
        }
      },
    ]
  }
}

Docker container logs

Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
Generating WEBUI_SECRET_KEY
Loading WEBUI_SECRET_KEY from .webui_secret_key
/app/backend/open_webui
/app/backend
/app
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
WARNI [open_webui.env] 

WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS.

INFO  [open_webui.env] Embedding model set: openai/text-embedding-3-small
ERROR [chromadb.telemetry.product.posthog] Failed to send telemetry event ClientStartEvent: capture() takes 1 positional argument but 3 were given
WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests.
INFO:     Started server process [1]
INFO:     Waiting for application startup.

 ██████╗ ██████╗ ███████╗███╗   ██╗    ██╗    ██╗███████╗██████╗ ██╗   ██╗██╗
██╔═══██╗██╔══██╗██╔════╝████╗  ██║    ██║    ██║██╔════╝██╔══██╗██║   ██║██║
██║   ██║██████╔╝█████╗  ██╔██╗ ██║    ██║ █╗ ██║█████╗  ██████╔╝██║   ██║██║
██║   ██║██╔═══╝ ██╔══╝  ██║╚██╗██║    ██║███╗██║██╔══╝  ██╔══██╗██║   ██║██║
╚██████╔╝██║     ███████╗██║ ╚████║    ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║
 ╚═════╝ ╚═╝     ╚══════╝╚═╝  ╚═══╝     ╚══╝╚══╝ ╚══════╝╚═════╝  ╚═════╝ ╚═╝


v0.6.15 - building the best AI user interface.

https://github.com/open-webui/open-webui

2025-07-06 19:47:31.973 | INFO     | open_webui.utils.logger:start_logger:140 - GLOBAL_LOG_LEVEL: INFO - {}
2025-07-06 19:47:31.973 | INFO     | open_webui.main:lifespan:514 - Installing external dependencies of functions and tools... - {}
2025-07-06 19:47:32.023 | INFO     | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {}
2025-07-07 07:31:57.625 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: POST https://login.microsoftonline.com/masked/oauth2/v2.0/token "HTTP/1.1 200 OK" - {}
2025-07-07 07:31:57.812 | WARNING  | open_webui.utils.oauth:_process_picture_url:325 - Failed to fetch profile picture from https://graph.microsoft.com/v1.0/me/photo/$value - {}
2025-07-07 07:31:58.258 | INFO     | open_webui.models.auths:insert_new_auth:108 - insert_new_auth - {}
2025-07-07 07:31:58.329 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /oauth/microsoft/callback?code=masked HTTP/1.1" 307 - {}
2025-07-07 07:31:58.374 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /auth HTTP/1.1" 200 - {}
2025-07-07 07:31:58.542 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /manifest.json HTTP/1.1" 200 - {}
2025-07-07 07:31:58.621 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/config HTTP/1.1" 200 - {}
2025-07-07 07:31:58.696 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/auths/ HTTP/1.1" 200 - {}
2025-07-07 07:31:58.789 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/config HTTP/1.1" 200 - {}
2025-07-07 07:31:59.021 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/changelog HTTP/1.1" 200 - {}
2025-07-07 07:31:59.050 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /user.png HTTP/1.1" 200 - {}
2025-07-07 07:31:59.051 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/archived?page=1&order_by=updated_at&direction=desc HTTP/1.1" 200 - {}
2025-07-07 07:31:59.100 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/channels/ HTTP/1.1" 200 - {}
2025-07-07 07:31:59.101 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:31:59.103 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/users/user/settings HTTP/1.1" 200 - {}
2025-07-07 07:31:59.178 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/all/tags HTTP/1.1" 200 - {}
2025-07-07 07:31:59.198 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:32:02.556 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/pinned HTTP/1.1" 200 - {}
2025-07-07 07:32:02.565 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/models HTTP/1.1" 200 - {}
2025-07-07 07:32:02.567 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {}
2025-07-07 07:32:02.624 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:32:02.641 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/folders/ HTTP/1.1" 200 - {}
2025-07-07 07:32:02.643 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/configs/banners HTTP/1.1" 200 - {}
2025-07-07 07:32:02.703 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/tools/ HTTP/1.1" 200 - {}
2025-07-07 07:32:02.770 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /ollama/api/version HTTP/1.1" 200 - {}
2025-07-07 07:32:02.861 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/users/user/settings HTTP/1.1" 200 - {}
2025-07-07 07:32:02.886 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=2 HTTP/1.1" 200 - {}
2025-07-07 07:32:20.338 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:32:23.452 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/models HTTP/1.1" 200 - {}
2025-07-07 07:32:23.464 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /assets/fonts/Vazirmatn-Variable.ttf HTTP/1.1" 200 - {}
2025-07-07 07:32:35.035 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:32:53.028 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:32:58.534 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:33:01.841 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {}
2025-07-07 07:33:08.138 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/new HTTP/1.1" 200 - {}
2025-07-07 07:33:08.201 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=2 HTTP/1.1" 200 - {}
2025-07-07 07:33:08.321 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {}
2025-07-07 07:33:08.397 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:33:08.612 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:33:54.025 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:33:35.057 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:33:36.024 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:33:45.107 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/chat/completions HTTP/1.1" 200 - {}
2025-07-07 07:33:45.171 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/immutable/chunks/CL-MV6vF.js HTTP/1.1" 200 - {}
2025-07-07 07:33:45.177 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/immutable/chunks/CCeiduaF.js HTTP/1.1" 200 - {}
2025-07-07 07:33:45.257 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:33:58.538 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:34:01.841 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {}
2025-07-07 07:34:03.903 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:34:03.976 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/chat/completed HTTP/1.1" 200 - {}
2025-07-07 07:34:04.087 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {}
2025-07-07 07:34:04.148 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:34:29.933 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:34:40.390 | INFO     | open_webui.routers.openai:get_all_models:391 - get_all_models() - {}
2025-07-07 07:34:40.439 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {}
2025-07-07 07:34:40.496 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /assets/fonts/Inter-Variable.ttf HTTP/1.1" 200 - {}
2025-07-07 07:34:55.025 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-07-07 07:34:55.879 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {}
2025-07-07 07:34:55.950 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/all/tags HTTP/1.1" 200 - {}

Additional Information

No response

Originally created by @skjoedt on GitHub (Jul 7, 2025). ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of Open WebUI. ### Installation Method Docker ### Open WebUI Version v0.6.15 ### Ollama Version (if applicable) N/A ### Operating System MacOS and Ubuntu 22.04 ### Browser (if applicable) Chrome 138.0.7204.93 ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior A non-admin user should see the same page loading time for openwebui as an admin user. ### Actual Behavior A non-admin user with access to 5 models has page loading times (specific to the models api request) at 10x an admin user with access to all models. In testing (localhost); 950 ms vs 150 ms In production; 3500 ms vs 350 ms ### Steps to Reproduce 1. On localhost running MacOS 15.5 (Macbook M1) 2. Run latest docker version using orbstack 3. Deploy webui with the docker compose file below 4. Deploy litellm with the config.yaml below having all 6 external AI apis with wildcards to select all available models 5. Refresh page of http://chat.traefik.me with the admin user and see network requests to chat.traefik.me/api/models api at around 150 ms (around 350 ms in production) 6. Refresh page of http://chat.traefik.me with a non-admin user and see network requests to the chat.traefik.me/api/models api at around 950 ms (worse in production with times around 3.5 s) Docker compose (excluding litellm deployment) ``` --- x-labels-openwebui: &labels-openwebui - "traefik.enable=true" - "traefik.http.routers.chat.rule=Host(`${FQDN:-chat.traefik.me}`)" - "traefik.http.routers.chat.entrypoints=websecure" - "traefik.http.routers.chat.tls=true" - "traefik.http.services.chat.loadbalancer.server.port=8080" x-labels-litellm: &labels-litellm - "traefik.enable=true" - "traefik.http.routers.litellm.rule=Host(`${LITELLM_FQDN:-litellm.traefik.me}`)" - "traefik.http.routers.litellm.entrypoints=websecure" - "traefik.http.routers.litellm.tls=true" - "traefik.http.services.litellm.loadbalancer.server.port=4000" x-deployment-openwebi: &deployment-openwebui deploy: labels: *labels-openwebui x-deployment-litellm: &deployment-litellm deploy: labels: *labels-litellm services: openwebui: image: ghcr.io/open-webui/open-webui:main volumes: - open-webui:/app/backend/data depends_on: - db environment: # Do not specify variables labelled PersistentConfig. See https://docs.openwebui.com/getting-started/env-configuration/ DATABASE_URL: postgres://openwebui:${OPENWEBUI_DATABASE_PASSWORD:-}@db:5432/openwebui?sslmode=disable WEBUI_NAME: Evaxion WEBUI_URL: https://${FQDN:-chat.traefik.me} ENABLE_OAUTH_SIGNUP: ${ENABLE_OAUTH_SIGNUP:-true} ENABLE_SIGNUP: 'false' OAUTH_MERGE_ACCOUNTS_BY_EMAIL: 'true' MICROSOFT_CLIENT_ID: ${MICROSOFT_CLIENT_ID:-} MICROSOFT_CLIENT_SECRET: ${MICROSOFT_CLIENT_SECRET:-} MICROSOFT_CLIENT_TENANT_ID: ${MICROSOFT_CLIENT_TENANT_ID:-} MICROSOFT_REDIRECT_URI: "https://${FQDN:-chat.traefik.me}/oauth/microsoft/callback" ENABLE_PERSISTENT_CONFIG: 'false' ENABLE_LOGIN_FORM: ${ENABLE_LOGIN_FORM:-false} # Ollama is not running and cause delays when loading the webui ENABLE_OLLAMA_API: 'false' # General configuration DEFAULT_USER_ROLE: user ENABLE_OPENAI_API: 'true' OPENAI_API_BASE_URL: 'http://litellm:4000' OPENAI_API_KEY: ${LITELLM_API_KEY:-} TASK_MODEL_EXTERNAL: openai/chatgpt-4 ENABLE_EVALUATION_ARENA_MODELS: 'false' CONTENT_EXTRACTION_ENGINE: docling DOCLING_SERVER_URL: http://docling:5001 DOCLING_OCR_ENGINE: tesseract RAG_EMBEDDING_ENGINE: openai RAG_EMBEDDING_MODEL: openai/text-embedding-3-small RAG_OPENAI_API_BASE_URL: 'http://litellm:4000' RAG_OPENAI_API_KEY: ${LITELLM_API_KEY:-} ENABLE_WEB_SEARCH: 'true' WEB_SEARCH_ENGINE: perplexity PERPLEXITY_API_KEY: ${PERPLEXITY_API_KEY:-} #AUDIO_STT_ENGINE: openai #ENABLE_IMAGE_GENERATION: 'true' USER_PERMISSIONS_WORKSPACE_MODELS_ACCESS: 'true' USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ACCESS: 'true' USER_PERMISSIONS_WORKSPACE_PROMPTS_ACCESS: 'true' networks: - traefik_public - openwebui_internal labels: *labels-openwebui <<: *deployment-openwebui litellm: build: context: . args: target: runtime image: ghcr.io/berriai/litellm:main-stable command: ["--config", "/app/config.yaml"] depends_on: - db-litellm environment: DATABASE_URL: postgres://litellm:${LITELLM_DATABASE_PASSWORD:-}@db-litellm:5432/litellm?sslmode=disable STORE_MODEL_IN_DB: "True" LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY:-sk-1234} LITELLM_SALT_KEY: ${LITELLM_SALT_KEY:-sk-1234} LITELLM_LOG: ERROR OPENAI_API_KEY: ${OPENAI_API_KEY:-} ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-} GEMINI_API_KEY: ${GEMINI_API_KEY:-} PERPLEXITY_API_KEY: ${PERPLEXITY_API_KEY} XAI_API_KEY: ${XAI_API_KEY:-} MISTRAL_API_KEY: ${MISTRAL_API_KEY:-} volumes: - ./litellm_config.yaml:/app/config.yaml networks: - traefik_public - openwebui_internal labels: *labels-litellm <<: *deployment-litellm docling: image: quay.io/docling-project/docling-serve environment: DOCLING_SERVE_ENABLE_UI: 'true' ports: - "5001:5001" networks: - openwebui_internal db: image: postgres:16 environment: POSTGRES_DB: openwebui POSTGRES_PASSWORD: ${OPENWEBUI_DATABASE_PASSWORD:-} POSTGRES_USER: openwebui logging: driver: "none" restart: unless-stopped volumes: - db-data-openwebui:/var/lib/postgresql/data networks: - openwebui_internal db-litellm: image: postgres:16 environment: POSTGRES_DB: litellm POSTGRES_PASSWORD: ${LITELLM_DATABASE_PASSWORD:-} POSTGRES_USER: litellm logging: driver: "none" restart: unless-stopped volumes: - db-data-litellm:/var/lib/postgresql/data networks: - openwebui_internal volumes: open-webui: external: true db-data-openwebui: db-data-litellm: networks: traefik_public: external: true openwebui_internal: {} ``` Litellm config to show number of available models exposed to openwebui ``` model_list: - model_name: openai/* litellm_params: model: openai/* api_key: os.environ/OPENAI_API_KEY - model_name: gemini/* litellm_params: model: gemini/* api_key: os.environ/GEMINI_API_KEY - model_name: anthropic/* litellm_params: model: anthropic/* api_key: os.environ/ANTHROPIC_API_KEY - model_name: mistral/* litellm_params: model: mistral/* api_key: os.environ/MISTRAL_API_KEY - model_name: xai/* litellm_params: model: xai/* api_key: os.environ/XAI_API_KEY - model_name: perplexity/* litellm_params: model: perplexity/* api_key: os.environ/PERPLEXITY_API_KEY ``` ### Logs & Screenshots Chrome console log ``` RichTextInput.svelte:194 [tiptap warn]: Duplicate extension names found: ['codeBlock']. This can lead to issues. resolve @ index.js:1183 pn @ index.js:1169 createExtensionManager @ index.js:4580 Wf @ index.js:4412 (anonymous) @ RichTextInput.svelte:194 await in (anonymous) J @ utils.js:41 (anonymous) @ Component.js:47 _t @ scheduler.js:99 Promise.then ut @ scheduler.js:20 ht @ Component.js:81 (anonymous) @ Component.js:139 (anonymous) @ +layout.svelte:239 await in (anonymous) J @ utils.js:41 (anonymous) @ Component.js:47 _t @ scheduler.js:99 Promise.then ut @ scheduler.js:20 ht @ Component.js:81 (anonymous) @ Component.js:139 (anonymous) @ +layout.svelte:637 await in (anonymous) J @ utils.js:41 (anonymous) @ Component.js:47 _t @ scheduler.js:99 Rt @ Component.js:164 wt @ root.svelte:23 ft @ client.js:472 ee @ client.js:1580 await in ee Ce @ client.js:398 An @ client.js:1926 $n @ client.js:323 await in $n (anonymous) @ (index):130 Promise.then (anonymous) @ (index):129 ``` And snippet from network log showing models takes 3.4 seconds to load. ``` { "log": { "version": "1.2", "creator": { "name": "WebInspector", "version": "537.36" }, "pages": [ { "startedDateTime": "2025-07-07T07:30:51.068Z", "id": "page_2", "title": "https://chat.evax.ai/", "pageTimings": { "onContentLoad": 108.75700000906363, "onLoad": 197.2490000189282 } } ], "entries": [ { "_initiator": { "type": "script", "stack": { "callFrames": [ { "functionName": "window.fetch", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 1661 }, { "functionName": "gs", "scriptId": "277", "url": "https://chat.evax.ai/_app/immutable/chunks/CWcgswnJ.js", "lineNumber": 57, "columnNumber": 2431 }, { "functionName": "", "scriptId": "314", "url": "https://chat.evax.ai/_app/immutable/nodes/2.DKVYl0jO.js", "lineNumber": 2866, "columnNumber": 14371 } ], "parent": { "description": "await", "callFrames": [ { "functionName": "J", "scriptId": "260", "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js", "lineNumber": 0, "columnNumber": 265 }, { "functionName": "", "scriptId": "265", "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js", "lineNumber": 3, "columnNumber": 3059 }, { "functionName": "_t", "scriptId": "260", "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js", "lineNumber": 0, "columnNumber": 9910 } ], "parent": { "description": "Promise.then", "callFrames": [ { "functionName": "ut", "scriptId": "260", "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js", "lineNumber": 0, "columnNumber": 9560 }, { "functionName": "ht", "scriptId": "265", "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js", "lineNumber": 3, "columnNumber": 3358 }, { "functionName": "", "scriptId": "265", "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js", "lineNumber": 3, "columnNumber": 3895 }, { "functionName": "", "scriptId": "268", "url": "https://chat.evax.ai/_app/immutable/nodes/0.KXVYKjPR.js", "lineNumber": 1, "columnNumber": 3815 } ], "parent": { "description": "await", "callFrames": [ { "functionName": "J", "scriptId": "260", "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js", "lineNumber": 0, "columnNumber": 265 }, { "functionName": "", "scriptId": "265", "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js", "lineNumber": 3, "columnNumber": 3059 }, { "functionName": "_t", "scriptId": "260", "url": "https://chat.evax.ai/_app/immutable/chunks/Bk--KVgx.js", "lineNumber": 0, "columnNumber": 9910 }, { "functionName": "Rt", "scriptId": "265", "url": "https://chat.evax.ai/_app/immutable/chunks/CoU9NT7-.js", "lineNumber": 3, "columnNumber": 4149 }, { "functionName": "wt", "scriptId": "259", "url": "https://chat.evax.ai/_app/immutable/entry/app.BJI5CN0-.js", "lineNumber": 1, "columnNumber": 7778 }, { "functionName": "ft", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 14476 }, { "functionName": "ee", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 23261 } ], "parent": { "description": "await", "callFrames": [ { "functionName": "Ce", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 13762 }, { "functionName": "An", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 25199 }, { "functionName": "$n", "scriptId": "263", "url": "https://chat.evax.ai/_app/immutable/chunks/DLMGBEPO.js", "lineNumber": 0, "columnNumber": 13313 } ], "parent": { "description": "await", "callFrames": [ { "functionName": "", "scriptId": "258", "url": "https://chat.evax.ai/", "lineNumber": 129, "columnNumber": 10 } ], "parent": { "description": "Promise.then", "callFrames": [ { "functionName": "", "scriptId": "258", "url": "https://chat.evax.ai/", "lineNumber": 128, "columnNumber": 8 } ] } } } } } } } }, "_priority": "High", "_resourceType": "fetch", "cache": {}, "connection": "443", "pageref": "page_2", "request": { "method": "GET", "url": "https://chat.evax.ai/api/models", "httpVersion": "http/2.0", "headers": [ { "name": ":authority", "value": "chat.evax.ai" }, { "name": ":method", "value": "GET" }, { "name": ":path", "value": "/api/models" }, { "name": ":scheme", "value": "https" }, { "name": "accept", "value": "application/json" }, { "name": "accept-encoding", "value": "gzip, deflate, br, zstd" }, { "name": "accept-language", "value": "en-GB,en-US;q=0.9,en;q=0.8" }, { "name": "cache-control", "value": "no-cache" }, { "name": "content-type", "value": "application/json" }, { "name": "pragma", "value": "no-cache" }, { "name": "priority", "value": "u=1, i" }, { "name": "referer", "value": "https://chat.evax.ai/" }, { "name": "sec-ch-ua", "value": "\"Not)A;Brand\";v=\"8\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"" }, { "name": "sec-ch-ua-mobile", "value": "?0" }, { "name": "sec-ch-ua-platform", "value": "\"macOS\"" }, { "name": "sec-fetch-dest", "value": "empty" }, { "name": "sec-fetch-mode", "value": "cors" }, { "name": "sec-fetch-site", "value": "same-origin" }, { "name": "user-agent", "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36" } ], "queryString": [], "cookies": [], "headersSize": -1, "bodySize": 0 }, "response": { "status": 200, "statusText": "", "httpVersion": "http/2.0", "headers": [ { "name": "content-encoding", "value": "zstd" }, { "name": "content-length", "value": "676" }, { "name": "content-type", "value": "application/json" }, { "name": "date", "value": "Mon, 07 Jul 2025 07:30:52 GMT" }, { "name": "server", "value": "uvicorn" }, { "name": "vary", "value": "Accept-Encoding" }, { "name": "x-process-time", "value": "3" } ], "cookies": [], "content": { "size": 4718, "mimeType": "application/json", "text": "{\"data\":[{\"id\":\"openai/gpt-4o\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"GPT-4o\",\"openai\":{\"id\":\"openai/gpt-4o\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/gpt-4o\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"GPT-4o\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656471,\"created_at\":1751656471},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"openai/o3\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"o3 (reasoning)\",\"openai\":{\"id\":\"openai/o3\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/o3\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"o3 (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656615,\"created_at\":1751656615},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"openai/o4-mini\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"o4-mini (reasoning)\",\"openai\":{\"id\":\"openai/o4-mini\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"openai/o4-mini\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"o4-mini (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656509,\"created_at\":1751656509},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Gemini 2.5 Pro (reasoning)\",\"openai\":{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"gemini/gemini-2.5-pro-preview-06-05\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Gemini 2.5 Pro (reasoning)\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751655134,\"created_at\":1751655134},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Claude 4 Sonnet\",\"openai\":{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"anthropic/claude-4-sonnet-20250514\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Claude 4 Sonnet\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751655102,\"created_at\":1751655102},\"actions\":[],\"filters\":[],\"tags\":[]},{\"id\":\"xai/grok-3-latest\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\",\"name\":\"Grok 3\",\"openai\":{\"id\":\"xai/grok-3-latest\",\"object\":\"model\",\"created\":1677610602,\"owned_by\":\"openai\",\"connection_type\":\"external\"},\"urlIdx\":0,\"info\":{\"id\":\"xai/grok-3-latest\",\"user_id\":\"081cca50-d2eb-4fc8-84a6-45fe0c9eaa34\",\"base_model_id\":null,\"name\":\"Grok 3\",\"params\":{},\"meta\":{\"profile_image_url\":\"/static/favicon.png\",\"description\":null,\"capabilities\":{\"vision\":true,\"file_upload\":true,\"web_search\":true,\"image_generation\":true,\"code_interpreter\":true,\"citations\":true},\"suggestion_prompts\":null,\"tags\":[]},\"access_control\":null,\"is_active\":true,\"updated_at\":1751656769,\"created_at\":1751656769},\"actions\":[],\"filters\":[],\"tags\":[]}]}" }, "redirectURL": "", "headersSize": -1, "bodySize": -1, "_transferSize": 710, "_error": null, "_fetchedViaServiceWorker": false }, "serverIPAddress": "10.0.3.60", "startedDateTime": "2025-07-07T07:30:53.115Z", "time": 3438.9310000115074, "timings": { "blocked": 1.834000005301088, "dns": -1, "ssl": -1, "connect": -1, "send": 0.10899999999999999, "wait": 3436.5419999861865, "receive": 0.44600002001971006, "_blocked_queueing": 0.4670000053010881, "_workerStart": -1, "_workerReady": -1, "_workerFetchStart": -1, "_workerRespondWithSettled": -1 } }, ] } } ``` Docker container logs ``` Loading WEBUI_SECRET_KEY from file, not provided as an environment variable. Generating WEBUI_SECRET_KEY Loading WEBUI_SECRET_KEY from .webui_secret_key /app/backend/open_webui /app/backend /app INFO [alembic.runtime.migration] Context impl PostgresqlImpl. INFO [alembic.runtime.migration] Will assume transactional DDL. WARNI [open_webui.env] WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS. INFO [open_webui.env] Embedding model set: openai/text-embedding-3-small ERROR [chromadb.telemetry.product.posthog] Failed to send telemetry event ClientStartEvent: capture() takes 1 positional argument but 3 were given WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests. INFO: Started server process [1] INFO: Waiting for application startup. ██████╗ ██████╗ ███████╗███╗ ██╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗██╗ ██╔═══██╗██╔══██╗██╔════╝████╗ ██║ ██║ ██║██╔════╝██╔══██╗██║ ██║██║ ██║ ██║██████╔╝█████╗ ██╔██╗ ██║ ██║ █╗ ██║█████╗ ██████╔╝██║ ██║██║ ██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║ ██║███╗██║██╔══╝ ██╔══██╗██║ ██║██║ ╚██████╔╝██║ ███████╗██║ ╚████║ ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚══╝╚══╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝ v0.6.15 - building the best AI user interface. https://github.com/open-webui/open-webui 2025-07-06 19:47:31.973 | INFO | open_webui.utils.logger:start_logger:140 - GLOBAL_LOG_LEVEL: INFO - {} 2025-07-06 19:47:31.973 | INFO | open_webui.main:lifespan:514 - Installing external dependencies of functions and tools... - {} 2025-07-06 19:47:32.023 | INFO | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {} 2025-07-07 07:31:57.625 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: POST https://login.microsoftonline.com/masked/oauth2/v2.0/token "HTTP/1.1 200 OK" - {} 2025-07-07 07:31:57.812 | WARNING | open_webui.utils.oauth:_process_picture_url:325 - Failed to fetch profile picture from https://graph.microsoft.com/v1.0/me/photo/$value - {} 2025-07-07 07:31:58.258 | INFO | open_webui.models.auths:insert_new_auth:108 - insert_new_auth - {} 2025-07-07 07:31:58.329 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /oauth/microsoft/callback?code=masked HTTP/1.1" 307 - {} 2025-07-07 07:31:58.374 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /auth HTTP/1.1" 200 - {} 2025-07-07 07:31:58.542 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /manifest.json HTTP/1.1" 200 - {} 2025-07-07 07:31:58.621 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/config HTTP/1.1" 200 - {} 2025-07-07 07:31:58.696 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/auths/ HTTP/1.1" 200 - {} 2025-07-07 07:31:58.789 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/config HTTP/1.1" 200 - {} 2025-07-07 07:31:59.021 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/changelog HTTP/1.1" 200 - {} 2025-07-07 07:31:59.050 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /user.png HTTP/1.1" 200 - {} 2025-07-07 07:31:59.051 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/archived?page=1&order_by=updated_at&direction=desc HTTP/1.1" 200 - {} 2025-07-07 07:31:59.100 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/channels/ HTTP/1.1" 200 - {} 2025-07-07 07:31:59.101 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:31:59.103 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/users/user/settings HTTP/1.1" 200 - {} 2025-07-07 07:31:59.178 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/all/tags HTTP/1.1" 200 - {} 2025-07-07 07:31:59.198 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:32:02.556 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/pinned HTTP/1.1" 200 - {} 2025-07-07 07:32:02.565 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/models HTTP/1.1" 200 - {} 2025-07-07 07:32:02.567 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {} 2025-07-07 07:32:02.624 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:32:02.641 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/folders/ HTTP/1.1" 200 - {} 2025-07-07 07:32:02.643 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/configs/banners HTTP/1.1" 200 - {} 2025-07-07 07:32:02.703 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/tools/ HTTP/1.1" 200 - {} 2025-07-07 07:32:02.770 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /ollama/api/version HTTP/1.1" 200 - {} 2025-07-07 07:32:02.861 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/users/user/settings HTTP/1.1" 200 - {} 2025-07-07 07:32:02.886 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=2 HTTP/1.1" 200 - {} 2025-07-07 07:32:20.338 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:32:23.452 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/models HTTP/1.1" 200 - {} 2025-07-07 07:32:23.464 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /assets/fonts/Vazirmatn-Variable.ttf HTTP/1.1" 200 - {} 2025-07-07 07:32:35.035 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:32:53.028 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:32:58.534 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:33:01.841 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {} 2025-07-07 07:33:08.138 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/new HTTP/1.1" 200 - {} 2025-07-07 07:33:08.201 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=2 HTTP/1.1" 200 - {} 2025-07-07 07:33:08.321 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {} 2025-07-07 07:33:08.397 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:33:08.612 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:33:54.025 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:33:35.057 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:33:36.024 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:33:45.107 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/chat/completions HTTP/1.1" 200 - {} 2025-07-07 07:33:45.171 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/immutable/chunks/CL-MV6vF.js HTTP/1.1" 200 - {} 2025-07-07 07:33:45.177 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/immutable/chunks/CCeiduaF.js HTTP/1.1" 200 - {} 2025-07-07 07:33:45.257 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:33:58.538 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:34:01.841 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 304 - {} 2025-07-07 07:34:03.903 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:34:03.976 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/chat/completed HTTP/1.1" 200 - {} 2025-07-07 07:34:04.087 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "POST /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {} 2025-07-07 07:34:04.148 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:34:29.933 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:34:40.390 | INFO | open_webui.routers.openai:get_all_models:391 - get_all_models() - {} 2025-07-07 07:34:40.439 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/?page=1 HTTP/1.1" 200 - {} 2025-07-07 07:34:40.496 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /assets/fonts/Inter-Variable.ttf HTTP/1.1" 200 - {} 2025-07-07 07:34:55.025 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-07-07 07:34:55.879 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/0c4d22c7-4589-47dc-bbbe-2aff70154a05 HTTP/1.1" 200 - {} 2025-07-07 07:34:55.950 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 10.0.0.2:0 - "GET /api/v1/chats/all/tags HTTP/1.1" 200 - {} ``` ### Additional Information _No response_
GiteaMirror added the bug label 2025-11-11 16:31:20 -06:00
Author
Owner

@tjbck commented on GitHub (Jul 7, 2025):

Unable to reproduce from our end, keep us updated!

@tjbck commented on GitHub (Jul 7, 2025): Unable to reproduce from our end, keep us updated!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#5715