mirror of
https://github.com/open-webui/open-webui.git
synced 2026-09-16 23:43:03 +00:00
The Docker image and a fresh pip install get about 100 MB smaller uncompressed. The removed pins are ones nothing in the backend imports and that no installed package requires, with the one exception of async-timeout, which redis still requires below Python 3.11.3; the resolver installs it there as a transitive dependency, just no longer pinned to 5.0.1 for plain pip installs. google-api-python-client, google-auth-httplib2 and google-auth-oauthlib were added for Google Drive in 2024, but the picker is frontend-only and loads gapi from apis.google.com; together they are about 95 MB on disk. pymongo, the langchain meta package, pymdown-extensions, pytube, APScheduler and RestrictedPython have no importer; the YouTube loader, the scheduler and the tool sandbox are all hand-written in this repository. google-genai stays: nothing imports it either, but the tool-call path carries accommodations written for python-genai callers, so Gemini pipes are expected to find it in the shared environment. uv.lock is regenerated, deletions only. One user-visible consequence: a tool or function that imported one of the removed packages without declaring it in its frontmatter requirements has worked only because the package was preinstalled. Declaring it fixes that where frontmatter installs are enabled and the instance can reach PyPI; an offline instance needs the package installed into the image instead. Part of #29721.
146 lines
3.1 KiB
Text
146 lines
3.1 KiB
Text
fastapi==0.136.3
|
|
uvicorn[standard]==0.51.0
|
|
pydantic==2.13.4
|
|
python-multipart==0.0.32
|
|
itsdangerous==2.2.0
|
|
|
|
python-socketio==5.16.2
|
|
orjson==3.11.9
|
|
cryptography==48.0.0
|
|
bcrypt==5.0.0
|
|
argon2-cffi==25.1.0
|
|
PyJWT[crypto]==2.13.0
|
|
authlib==1.7.2
|
|
joserfc==1.7.4
|
|
|
|
requests==2.34.2
|
|
regex==2026.5.9 # supports a per-search timeout, which `re` does not
|
|
aiohttp==3.13.5 # do not update to 3.13.3 - broken
|
|
aiodns==3.6.1 # keep pinned: 4.x pulls pycares 5 (c-ares 1.34.6) which breaks DNS on some hosts (#28013, #28215); opt-in via AIOHTTP_CLIENT_ASYNC_DNS_RESOLVER
|
|
aiocache==0.12.3
|
|
aiofiles==25.1.0
|
|
starlette-compress==1.7.1
|
|
Brotli==1.2.0
|
|
brotlicffi==1.2.0.1
|
|
httpx[socks,http2,zstd,cli,brotli]==0.28.1
|
|
starsessions[redis]==2.2.1
|
|
python-mimeparse==2.0.0
|
|
|
|
sqlalchemy[asyncio]==2.0.50
|
|
aiosqlite==0.22.1
|
|
psycopg[binary]==3.3.4
|
|
alembic==1.18.4
|
|
|
|
pycrdt==0.13.1
|
|
redis==8.0.1
|
|
hiredis==3.4.0
|
|
|
|
pytz==2026.2
|
|
|
|
loguru==0.7.3
|
|
asgiref==3.11.1
|
|
|
|
# AI libraries
|
|
tiktoken==0.13.0
|
|
mcp==1.27.2
|
|
|
|
openai==2.29.0
|
|
anthropic==0.86.0
|
|
google-genai==1.66.0
|
|
|
|
langchain-community==0.4.2
|
|
langchain-classic==1.0.7
|
|
langchain-text-splitters==1.1.2
|
|
|
|
fake-useragent==2.2.0
|
|
chromadb==1.5.9
|
|
weaviate-client==4.20.3
|
|
opensearch-py==3.2.0
|
|
|
|
transformers==5.5.4
|
|
sentence-transformers==5.5.1
|
|
accelerate==1.13.0
|
|
pyarrow==20.0.0 # fix: pin pyarrow version to 20 for rpi compatibility #15897
|
|
einops==0.8.2
|
|
|
|
ftfy==6.3.1
|
|
chardet==7.4.3
|
|
pypdf==6.7.5
|
|
fpdf2==2.8.7
|
|
docx2txt==0.9
|
|
python-docx==1.2.0
|
|
python-pptx==1.0.2
|
|
msoffcrypto-tool==6.0.0
|
|
unstructured==0.22.31
|
|
|
|
Markdown==3.10.2
|
|
beautifulsoup4==4.14.3
|
|
lxml==6.1.1
|
|
pypandoc==1.17
|
|
pandas==3.0.3
|
|
openpyxl==3.1.5
|
|
pyxlsb==1.0.10
|
|
xlrd==2.0.2
|
|
validators==0.35.0
|
|
psutil==7.2.2
|
|
sentencepiece==0.2.1
|
|
soundfile==0.13.1
|
|
|
|
pillow==12.2.0
|
|
opencv-python-headless==4.13.0.92
|
|
rapidocr==3.9.2
|
|
rank-bm25==0.2.2
|
|
|
|
onnxruntime==1.26.0
|
|
faster-whisper==1.2.1
|
|
|
|
black==26.5.1
|
|
youtube-transcript-api==1.2.4
|
|
|
|
pydub==0.25.1
|
|
ddgs==9.14.4
|
|
|
|
azure-ai-documentintelligence==1.0.2
|
|
azure-identity==1.25.3
|
|
azure-storage-blob==12.29.0
|
|
azure-search-documents==12.0.0
|
|
|
|
googleapis-common-protos==1.75.0
|
|
google-cloud-storage==3.9.0
|
|
|
|
## Databases
|
|
psycopg2-binary==2.9.12
|
|
pgvector==0.4.2
|
|
|
|
PyMySQL==1.2.0
|
|
boto3==1.42.62
|
|
# mariadb==1.1.14 should be added if you want to support MariaDB
|
|
# valkey-glide-sync==2.3.1 # optional: install manually if VECTOR_DB=valkey
|
|
|
|
pymilvus==2.6.14
|
|
qdrant-client==1.18.0
|
|
playwright==1.60.0 # Caution: version must match docker-compose.playwright.yaml - Update the docker-compose.yaml if necessary
|
|
elasticsearch==9.4.1
|
|
pinecone==6.0.2
|
|
oracledb==3.4.2
|
|
|
|
av==14.0.1 # Caution: Set due to FATAL FIPS SELFTEST FAILURE, see discussion https://github.com/open-webui/open-webui/discussions/15720
|
|
|
|
colbert-ai==0.2.22
|
|
|
|
## LDAP
|
|
ldap3==2.9.1
|
|
|
|
## Trace
|
|
opentelemetry-api==1.42.1
|
|
opentelemetry-sdk==1.42.1
|
|
opentelemetry-exporter-otlp==1.42.1
|
|
opentelemetry-instrumentation==0.63b1
|
|
opentelemetry-instrumentation-fastapi==0.63b1
|
|
opentelemetry-instrumentation-sqlalchemy==0.63b1
|
|
opentelemetry-instrumentation-redis==0.63b1
|
|
opentelemetry-instrumentation-requests==0.63b1
|
|
opentelemetry-instrumentation-logging==0.63b1
|
|
opentelemetry-instrumentation-httpx==0.63b1
|
|
opentelemetry-instrumentation-aiohttp-client==0.63b1
|
|
opentelemetry-instrumentation-system-metrics==0.63b1
|