Ubuntu 22.04
Sponsored Link

Open WebUI : Install2024/06/05

 

Install Open WebUI which allows you to run LLM on Web UI.

[1]

Install Ollama, refer to here.

[2]

Install Python 3.11, refer to here.

[3] Install Open WebUI.
root@dlp:~#
python3.11 -m venv --system-site-packages /opt/open-webui

root@dlp:~#
/opt/open-webui/bin/pip3 install open-webui


.....
.....
Successfully installed MarkupSafe-2.1.5 Pillow-10.3.0 PyYAML-6.0.1 SQLAlchemy-2.0.30 Shapely-2.0.4 Werkzeug-3.0.3 aiohttp-3.9.5 aiosignal-1.3.1 annotated-types-0.7.0 anyio-4.4.0 apscheduler-3.10.4 argon2-cffi-23.1.0 argon2-cffi-bindings-21.2.0 asgiref-3.8.1 av-12.1.0 backoff-2.2.1 bcrypt-4.1.3 beautifulsoup4-4.12.3 bidict-0.23.1 black-24.4.2 blinker-1.8.2 boto3-1.34.110 botocore-1.34.119 build-1.2.1 cachetools-5.3.3 certifi-2024.6.2 cffi-1.16.0 charset-normalizer-3.3.2 chroma-hnswlib-0.7.3 chromadb-0.5.0 click-8.1.7 coloredlogs-15.0.1 cryptography-42.0.8 ctranslate2-4.2.1 dataclasses-json-0.6.6 deepdiff-7.0.1 defusedxml-0.7.1 deprecated-1.2.14 dnspython-2.6.1 docx2txt-0.8 ecdsa-0.19.0 email_validator-2.1.1 emoji-2.12.1 et-xmlfile-1.1.0 fake-useragent-1.5.1 fastapi-0.111.0 fastapi-cli-0.0.4 fastapi-sso-0.10.0 faster-whisper-1.0.2 filelock-3.14.0 filetype-1.2.0 flask-3.0.3 flask-cors-4.0.1 flatbuffers-24.3.25 fonttools-4.53.0 fpdf2-2.7.9 frozenlist-1.4.1 fsspec-2024.6.0 google-ai-generativelanguage-0.6.4 google-api-core-2.19.0 google-api-python-client-2.132.0 google-auth-2.29.0 google-auth-httplib2-0.2.0 google-generativeai-0.5.4 googleapis-common-protos-1.63.1 greenlet-3.0.3 grpcio-1.64.1 grpcio-status-1.62.2 gunicorn-22.0.0 h11-0.14.0 httpcore-1.0.5 httptools-0.6.1 httpx-0.27.0 huggingface-hub-0.23.2 humanfriendly-10.0 idna-3.7 importlib-metadata-7.1.0 importlib-resources-6.4.0 itsdangerous-2.2.0 jinja2-3.1.4 jmespath-1.0.1 joblib-1.4.2 jsonpatch-1.33 jsonpath-python-1.0.6 kubernetes-29.0.0 langchain-0.2.0 langchain-chroma-0.1.1 langchain-community-0.2.0 langchain-core-0.2.4 langchain-text-splitters-0.2.1 langdetect-1.0.9 langfuse-2.33.0 langsmith-0.1.71 litellm-1.37.20 lxml-5.2.2 markdown-3.6 markdown-it-py-3.0.0 marshmallow-3.21.2 mdurl-0.1.2 mmh3-4.1.0 monotonic-1.6 mpmath-1.3.0 multidict-6.0.5 mypy-extensions-1.0.0 nest-asyncio-1.6.0 networkx-3.3 nltk-3.8.1 numpy-1.26.4 nvidia-cublas-cu12-12.1.3.1 nvidia-cuda-cupti-cu12-12.1.105 nvidia-cuda-nvrtc-cu12-12.1.105 nvidia-cuda-runtime-cu12-12.1.105 nvidia-cudnn-cu12-8.9.2.26 nvidia-cufft-cu12-11.0.2.54 nvidia-curand-cu12-10.3.2.106 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 nvidia-nccl-cu12-2.20.5 nvidia-nvjitlink-cu12-12.5.40 nvidia-nvtx-cu12-12.1.105 oauthlib-3.2.2 onnxruntime-1.18.0 open-webui-0.2.4 openai-1.31.0 opencv-python-4.10.0.82 opencv-python-headless-4.9.0.80 openpyxl-3.1.2 opentelemetry-api-1.25.0 opentelemetry-exporter-otlp-proto-common-1.25.0 opentelemetry-exporter-otlp-proto-grpc-1.25.0 opentelemetry-instrumentation-0.46b0 opentelemetry-instrumentation-asgi-0.46b0 opentelemetry-instrumentation-fastapi-0.46b0 opentelemetry-proto-1.25.0 opentelemetry-sdk-1.25.0 opentelemetry-semantic-conventions-0.46b0 opentelemetry-util-http-0.46b0 ordered-set-4.1.0 orjson-3.10.3 overrides-7.7.0 packaging-23.2 pandas-2.2.2 passlib-1.7.4 pathspec-0.12.1 peewee-3.17.5 peewee-migrate-1.12.2 platformdirs-4.2.2 posthog-3.5.0 proto-plus-1.23.0 protobuf-4.25.3 psycopg2-binary-2.9.9 pyclipper-1.3.0.post5 pycparser-2.22 pydantic-2.7.1 pydantic-core-2.18.2 pygments-2.18.0 pyjwt-2.8.0 pymysql-1.1.0 pypandoc-1.13 pypdf-4.2.0 pypika-0.48.9 pyproject_hooks-1.1.0 python-dateutil-2.9.0.post0 python-dotenv-1.0.1 python-engineio-4.9.1 python-iso639-2024.4.27 python-jose-3.3.0 python-multipart-0.0.9 python-socketio-5.11.2 pytube-15.0.0 pyxlsb-1.0.10 rank-bm25-0.2.2 rapidfuzz-3.9.3 rapidocr-onnxruntime-1.3.22 redis-5.0.4 regex-2024.5.15 requests-2.32.2 requests-oauthlib-2.0.0 requests-toolbelt-1.0.0 rich-13.7.1 rq-1.16.2 rsa-4.9 s3transfer-0.10.1 safetensors-0.4.3 scikit-learn-1.5.0 scipy-1.13.1 sentence-transformers-2.7.0 shellingham-1.5.4 simple-websocket-1.0.0 sniffio-1.3.1 soupsieve-2.5 starlette-0.37.2 sympy-1.12.1 tabulate-0.9.0 tenacity-8.3.0 threadpoolctl-3.5.0 tiktoken-0.7.0 tokenizers-0.19.1 torch-2.3.0 tqdm-4.66.4 transformers-4.41.2 triton-2.3.0 typer-0.12.3 typing-extensions-4.12.1 typing-inspect-0.9.0 tzdata-2024.1 tzlocal-5.2 ujson-5.10.0 unstructured-0.14.0 unstructured-client-0.23.0 uritemplate-4.1.1 urllib3-2.2.1 uvicorn-0.22.0 uvloop-0.19.0 validators-0.28.1 watchfiles-0.22.0 websocket-client-1.8.0 websockets-12.0 wrapt-1.16.0 wsproto-1.2.0 xlrd-2.0.1 yarl-1.9.4 youtube-transcript-api-0.6.2

# create systemd unit file

root@dlp:~#
vi /usr/lib/systemd/system/open-webui.service
# create new
[Unit]
Description=Open WebUI Service
After=network.target

[Service]
Type=simple
ExecStart=/opt/open-webui/bin/open-webui serve
ExecStop=/bin/kill -HUP $MAINPID
User=root
Group=root

[Install]
WantedBy=multi-user.target

root@dlp:~#
systemctl daemon-reload

root@dlp:~#
systemctl enable --now open-webui.service

[4] Start any web browser on client computer and access to Open WebUI that is listening port [8080].
When you access the application, the following screen will appear. For initial accessing to the application, click [Sign up] to register as a user.
[5] Enter the required information and click [Create Account]. The first user to register will automatically become an administrator account.
[6] Once your account is created, the Open WebUI default page will be displayed.
[7] Next time, you can log in with your registered email address and password.
[8] For second and subsequent users, when you register by clicking [Sign up], the account will be in Pending status and must be approved by an administrator account.
[9] To approve a new user, log in with your administrator account and click Admin Panel from the menu in the top right.
[10] If you click [pending] on a user in [Pending] status, that user will be approved. If you click [user] again, that user can be promoted to [Admin].
[11] To use Chat, select the model you have loaded into Ollama from the menu at the top, enter a message in the box below, and you will receive a reply.
Matched Content