123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- [project]
- name = "open-webui"
- description = "Open WebUI"
- authors = [
- { name = "Timothy Jaeryang Baek", email = "tim@openwebui.com" }
- ]
- license = { file = "LICENSE" }
- dependencies = [
- "fastapi==0.115.7",
- "uvicorn[standard]==0.30.6",
- "pydantic==2.9.2",
- "python-multipart==0.0.18",
- "python-socketio==5.11.3",
- "python-jose==3.3.0",
- "passlib[bcrypt]==1.7.4",
- "requests==2.32.3",
- "aiohttp==3.11.11",
- "async-timeout",
- "aiocache",
- "aiofiles",
- "sqlalchemy==2.0.32",
- "alembic==1.14.0",
- "peewee==3.17.8",
- "peewee-migrate==1.12.2",
- "psycopg2-binary==2.9.9",
- "pgvector==0.3.5",
- "PyMySQL==1.1.1",
- "bcrypt==4.2.0",
- "pymongo",
- "redis",
- "boto3==1.35.53",
- "argon2-cffi==23.1.0",
- "APScheduler==3.10.4",
- "RestrictedPython==8.0",
- "openai",
- "anthropic",
- "google-generativeai==0.7.2",
- "tiktoken",
- "langchain==0.3.7",
- "langchain-community==0.3.7",
- "fake-useragent==1.5.1",
- "chromadb==0.6.2",
- "pymilvus==2.5.0",
- "qdrant-client~=1.12.0",
- "opensearch-py==2.8.0",
- "playwright==1.49.1",
- "transformers",
- "sentence-transformers==3.3.1",
- "colbert-ai==0.2.21",
- "einops==0.8.0",
- "ftfy==6.2.3",
- "pypdf==4.3.1",
- "fpdf2==2.8.2",
- "pymdown-extensions==10.14.2",
- "docx2txt==0.8",
- "python-pptx==1.0.0",
- "unstructured==0.16.17",
- "nltk==3.9.1",
- "Markdown==3.7",
- "pypandoc==1.13",
- "pandas==2.2.3",
- "openpyxl==3.1.5",
- "pyxlsb==1.0.10",
- "xlrd==2.0.1",
- "validators==0.34.0",
- "psutil",
- "sentencepiece",
- "soundfile==0.13.1",
- "opencv-python-headless==4.11.0.86",
- "rapidocr-onnxruntime==1.3.24",
- "rank-bm25==0.2.2",
- "faster-whisper==1.1.1",
- "PyJWT[crypto]==2.10.1",
- "authlib==1.4.1",
- "black==24.8.0",
- "langfuse==2.44.0",
- "youtube-transcript-api==0.6.3",
- "pytube==15.0.0",
- "extract_msg",
- "pydub",
- "duckduckgo-search~=7.3.2",
- "google-api-python-client",
- "google-auth-httplib2",
- "google-auth-oauthlib",
- "docker~=7.1.0",
- "pytest~=8.3.2",
- "pytest-docker~=3.1.1",
- "moto[s3]>=5.0.26",
- "googleapis-common-protos==1.63.2",
- "google-cloud-storage==2.19.0",
- "ldap3==2.9.1",
- "gcp-storage-emulator>=2024.8.3",
- ]
- readme = "README.md"
- requires-python = ">= 3.11, < 3.13.0a1"
- dynamic = ["version"]
- classifiers = [
- "Development Status :: 4 - Beta",
- "License :: OSI Approved :: MIT License",
- "Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.11",
- "Programming Language :: Python :: 3.12",
- "Topic :: Communications :: Chat",
- "Topic :: Multimedia",
- ]
- [project.scripts]
- open-webui = "open_webui:app"
- [build-system]
- requires = ["hatchling"]
- build-backend = "hatchling.build"
- [tool.rye]
- managed = true
- dev-dependencies = []
- [tool.hatch.metadata]
- allow-direct-references = true
- [tool.hatch.version]
- path = "package.json"
- pattern = '"version":\s*"(?P<version>[^"]+)"'
- [tool.hatch.build.hooks.custom] # keep this for reading hooks from `hatch_build.py`
- [tool.hatch.build.targets.wheel]
- sources = ["backend"]
- exclude = [
- ".dockerignore",
- ".gitignore",
- ".webui_secret_key",
- "dev.sh",
- "requirements.txt",
- "start.sh",
- "start_windows.bat",
- "webui.db",
- "chroma.sqlite3",
- ]
- force-include = { "CHANGELOG.md" = "open_webui/CHANGELOG.md", build = "open_webui/frontend" }
- [tool.codespell]
- # Ref: https://github.com/codespell-project/codespell#using-a-config-file
- skip = '.git*,*.svg,package-lock.json,i18n,*.lock,*.css,*-bundle.js,locales,example-doc.txt,emoji-shortcodes.json'
- check-hidden = true
- # ignore-regex = ''
- ignore-words-list = 'ans'
|