Aquí tienes el issue rellenado, listo para copiar/pegar en el repositorio de Open WebUI:
What do you need help with?
Uploading an .epub file to Open WebUI fails because the document parser tries to download the spaCy model en_core_web_sm at runtime, but site-packages is mounted read-only in the container, so the download cannot be written to disk.
What were you trying to do?
Upload an .epub file through the Open WebUI chat interface so its text could be extracted and used as knowledge/context.
What happened instead?
The upload fails every time with the following error:
Failed to install en_core_web_sm to /app/code/venv/lib/python3.12/site-packages: [Errno 30] Read-only file system: '/app/code/venv/lib/python3.12/site-packages/en_core_web_sm'. Ensure the site-packages directory is writable, or pre-install the model with: python -m spacy download en_core_web_sm
It happens on every.epub upload, not just some files, which suggests the EPUB parsing path unconditionally depends on en_core_web_sm.
What have you already tried?
Retrying the upload with different .epub files (same result).
Environment
Where: chat (file upload / knowledge) In web chat openwebui and also in the openwebui locally
Aquí tienes el issue rellenado, listo para copiar/pegar en el repositorio de Open WebUI:
---
## What do you need help with?
Uploading an `.epub` file to Open WebUI fails because the document parser tries to download the spaCy model `en_core_web_sm` at runtime, but `site-packages` is mounted read-only in the container, so the download cannot be written to disk.
<img width="398" alt="Screenshot 2026-10-14 at 10.51.32.png" src="attachments/d82204fe-4874-499e-8f74-953bca04bbee">
## What were you trying to do?
Upload an `.epub` file through the Open WebUI chat interface so its text could be extracted and used as knowledge/context.
## What happened instead?
The upload fails every time with the following error:
```
Failed to install en_core_web_sm to /app/code/venv/lib/python3.12/site-packages: [Errno 30] Read-only file system: '/app/code/venv/lib/python3.12/site-packages/en_core_web_sm'. Ensure the site-packages directory is writable, or pre-install the model with: python -m spacy download en_core_web_sm
```
It happens on **every** `.epub` upload, not just some files, which suggests the EPUB parsing path unconditionally depends on `en_core_web_sm`.
## What have you already tried?
- Retrying the upload with different `.epub` files (same result).
## Environment
- **Where:** chat (file upload / knowledge) In web chat openwebui and also in the openwebui locally
Fixed — thanks for the clear report, it made the diagnosis quick.
Root cause: the EPUB/DOCX parser (the unstructured library) needs the
spaCy language model en_core_web_sm. It wasn't included in our chat image,
so the library tried to download and install it on first use — but on our
hosting, the application directory is read-only for security, so the install
failed every time.
The fix: the model is now pre-installed in the chat's persistent data
directory (verified with a hash check) and made importable to the parser.
EPUB parsing is confirmed working end-to-end.
Please try your .epub upload again — it should work now. If you hit any
error, reopen this issue with the exact message.
(Note: this only affects document parsing/knowledge extraction. Nothing about
your account, keys, or existing chats was touched.)
Fixed — thanks for the clear report, it made the diagnosis quick.
**Root cause:** the EPUB/DOCX parser (the `unstructured` library) needs the
spaCy language model `en_core_web_sm`. It wasn't included in our chat image,
so the library tried to download and install it on first use — but on our
hosting, the application directory is read-only for security, so the install
failed every time.
**The fix:** the model is now pre-installed in the chat's persistent data
directory (verified with a hash check) and made importable to the parser.
EPUB parsing is confirmed working end-to-end.
Please try your `.epub` upload again — it should work now. If you hit any
error, reopen this issue with the exact message.
(Note: this only affects document parsing/knowledge extraction. Nothing about
your account, keys, or existing chats was touched.)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Aquí tienes el issue rellenado, listo para copiar/pegar en el repositorio de Open WebUI:
What do you need help with?
Uploading an
.epubfile to Open WebUI fails because the document parser tries to download the spaCy modelen_core_web_smat runtime, butsite-packagesis mounted read-only in the container, so the download cannot be written to disk.What were you trying to do?
Upload an
.epubfile through the Open WebUI chat interface so its text could be extracted and used as knowledge/context.What happened instead?
The upload fails every time with the following error:
It happens on every
.epubupload, not just some files, which suggests the EPUB parsing path unconditionally depends onen_core_web_sm.What have you already tried?
.epubfiles (same result).Environment
Fixed — thanks for the clear report, it made the diagnosis quick.
Root cause: the EPUB/DOCX parser (the
unstructuredlibrary) needs thespaCy language model
en_core_web_sm. It wasn't included in our chat image,so the library tried to download and install it on first use — but on our
hosting, the application directory is read-only for security, so the install
failed every time.
The fix: the model is now pre-installed in the chat's persistent data
directory (verified with a hash check) and made importable to the parser.
EPUB parsing is confirmed working end-to-end.
Please try your
.epubupload again — it should work now. If you hit anyerror, reopen this issue with the exact message.
(Note: this only affects document parsing/knowledge extraction. Nothing about
your account, keys, or existing chats was touched.)
@juanfortun let us know if that does the trick—if so, you can close this issue.
This appears to have been resolved.