Skip to content

zhipu ASR: 404 due to doubled API path + errors invisible in app UI #507

@dempsey-wen

Description

@dempsey-wen

Bug 1: API path /audio/transcriptions is appended twice

When using the zhipu (智谱) provider as the active ASR engine, transcription requests fail with a
404 error because /audio/transcriptions is appended twice.

Reproduce

  1. Configure zhipu as ASR provider, set base URL to
    https://open.bigmodel.cn/api/paas/v4/audio/transcriptions (the full endpoint from zhipu's docs)
  2. Trigger dictation

Actual request path

/v4/audio/transcriptions/audio/transcriptions

Expected

/v4/audio/transcriptions

Log

[ERROR] [coord] whisper transcribe failed: Whisper API error 404 Not Found:
{"status":404,"error":"Not Found","path":"/v4/audio/transcriptions/audio/transcriptions"}

The "Test Connection" button reports success, which is misleading — it validates credentials but doesn't
test the actual transcription endpoint path.

Suggested fix

Strip trailing /audio/transcriptions from the user-provided base URL before appending the endpoint
path, or clarify in the UI that the base URL should not include it.


Bug 2: Transcription errors are invisible in the app UI

When transcription fails (e.g. the 404 above), the app shows no error indication to the user. The error
is only logged to:

~/.local/share/OpenLess/logs/openless.log

Users have no way to discover what went wrong without manually finding and reading this log file.

Suggested improvement

Display the last error (or a short summary) somewhere in the app UI — for example in the capsule
overlay, a toast notification, or a dedicated error log panel — so users can diagnose issues without
hunting for log files.


  • OpenLess version: 1.3.2
  • OS: Linux (Ubuntu, kernel 6.8.0)
  • ASR provider: zhipu

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions