آموزش نصب Open WebUI روی سرور؛ اتصال به Ollama و اجرای مدلهای هوش مصنوعی
Open WebUI یکی از محبوبترین رابطهای کاربری Self-Hosted برای کار با مدلهای هوش مصنوعی است. این پلتفرم به شما اجازه میدهد مدلهای محلی مانند Ollama را از طریق یک رابط گرافیکی تحت وب مدیریت کنید و در کنار آن به سرویسها و APIهای سازگار با OpenAI نیز متصل شوید. Open WebUI را میتوان روی Linux، Windows و macOS اجرا کرد و روش Docker در مستندات رسمی، مسیر پیشنهادی برای اغلب نصبها محسوب میشود.
در این آموزش، نصب Open WebUI روی سرور لینوکس را از ابتدا انجام میدهیم؛ سپس آن را به Ollama متصل میکنیم، مدل هوش مصنوعی اجرا میکنیم، در صورت داشتن GPU انویدیا از شتابدهی سختافزاری استفاده میکنیم و در نهایت Open WebUI را با دامنه و SSL برای استفاده اینترنتی آماده میکنیم.
Open WebUI چیست؟
Open WebUI یک رابط کاربری تحت وب برای اجرای و مدیریت مدلهای هوش مصنوعی است که میتواند در محیط شخصی یا سرور اختصاصی شما اجرا شود.
در سادهترین معماری، سه بخش داریم:
کاربر
│
▼
Open WebUI
│
▼
Ollama / OpenAI-Compatible API
│
▼
مدل هوش مصنوعی
Open WebUI خودش الزاماً مدل زبانی را اجرا نمیکند. این برنامه بیشتر نقش رابط و لایه مدیریتی را دارد و میتواند به Ollama یا سرویسهای سازگار با OpenAI متصل شود. مستندات رسمی Open WebUI نیز اتصال به Ollama، OpenAI-compatible و Open Responses را پشتیبانی میکنند.
برای مثال میتوانید روی یک سرور، Ollama را اجرا کنید و مدلهایی مانند Llama، Qwen یا مدلهای دیگر را نصب کرده و سپس همه آنها را از طریق Open WebUI مدیریت کنید.

چرا Open WebUI را روی VPS یا سرور نصب کنیم؟
اجرای Open WebUI روی سرور چند مزیت مهم دارد:
دسترسی از هر دستگاه
به جای اینکه Open WebUI فقط روی کامپیوتر شخصی شما اجرا شود، میتوانید آن را روی یک VPS یا سرور قرار دهید و از لپتاپ، موبایل یا سیستمهای مختلف به آن دسترسی داشته باشید.
کنترل بیشتر روی دادهها
وقتی زیرساخت را خودتان مدیریت میکنید، کنترل بیشتری روی محل نگهداری گفتگوها، کاربران و تنظیمات دارید.
اجرای مدلهای Local
با اتصال Open WebUI به Ollama میتوانید مدلهای هوش مصنوعی را روی سختافزار خودتان اجرا کنید.
اتصال به چند سرویس هوش مصنوعی
Open WebUI فقط محدود به Ollama نیست و میتواند به APIهای سازگار با OpenAI نیز متصل شود.
مناسب برای تیمها
میتوان Open WebUI را روی سرور قرار داد و از قابلیتهای احراز هویت و مدیریت کاربران برای استفاده چندکاربره بهره برد.
پیشنیازهای نصب Open WebUI
برای یک نصب معمولی به موارد زیر نیاز دارید:
- سرور Linux
- Docker
- Docker Compose Plugin
- دسترسی SSH
- حداقل چند گیگابایت فضای ذخیرهسازی آزاد
- دامنه، در صورت نیاز به دسترسی اینترنتی
- Ollama یا یک API هوش مصنوعی، در صورت نیاز به اجرای مدل
Open WebUI روی معماریهای مختلف از جمله x86_64 و ARM64 قابل اجرا است. مستندات رسمی، Docker را روش رسمی و پیشنهادی برای اغلب کاربران معرفی میکنند.
برای اجرای خود رابط Open WebUI، منابع زیادی لازم نیست؛ اما بخش اصلی مصرف CPU، RAM، VRAM و فضای دیسک معمولاً مربوط به مدلهای AI است، نه خود WebUI.
بنابراین اگر قصد اجرای مدلهای بزرگ دارید، مشخصات سرور را باید بر اساس مدل انتخابی تعیین کنید.
برای تهیه زیرساخت مناسب میتوانید مشخصات و لوکیشنهای مختلف سرور مجازی را بررسی کنید.
مرحله اول: ورود به سرور
با SSH وارد سرور شوید:
ssh root@SERVER_IP
در صورتی که SSH روی پورت دیگری فعال است:
ssh root@SERVER_IP -p 3753
ابتدا سیستم را بهروزرسانی کنید.
در Ubuntu و Debian:
apt update && apt upgrade -y
مرحله دوم: نصب Docker
اگر Docker روی سرور نصب نیست، ابتدا آن را نصب کنید.
برای Ubuntu، روش پیشنهادی Docker استفاده از مخزن رسمی این پروژه است. Docker در حال حاضر Ubuntu ۲۲.۰۴، ۲۴.۰۴ و ۲۶.۰۴ را در مستندات رسمی خود پشتیبانی میکند.
دستورات نصب:
apt update
apt install -y ca-certificates curl
سپس کلید رسمی Docker را اضافه کنید:
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
-o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
مخزن Docker را اضافه کنید:
cat >/etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
حالا Docker Engine و Compose را نصب کنید:
apt update
apt install -y \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
نصب را بررسی کنید:
docker --version
و:
docker compose version
در نهایت:
systemctl enable --now docker
برای تست:
docker run hello-world
دستورالعمل رسمی Docker نیز نصب docker-compose-plugin را همراه Docker Engine پیشنهاد میکند.
مرحله سوم: نصب Open WebUI با Docker
حالا مهمترین مرحله شروع میشود.
ابتدا یک Secret Key امن تولید کنید:
openssl rand -hex 32
خروجی شبیه زیر خواهد بود:
8c1f...a92e
این مقدار را نگه دارید.
سپس Open WebUI را اجرا کنید:
docker run -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
-e WEBUI_SECRET_KEY=YOUR_SECRET_KEY \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
به جای YOUR_SECRET_KEY کلید تولیدشده را قرار دهید.
Open WebUI برای نگهداری کاربران، گفتگوها و تنظیمات از Volume استفاده میکند و مستندات رسمی توصیه میکنند این Volume حفظ شود؛ حذف آن میتواند دادههای WebUI را از بین ببرد. همچنین برای محیطهای Production بهتر است بهجای Tag شناور main یک نسخه مشخص را Pin کنید.
بررسی کنید Container اجرا شده است:
docker ps
باید چیزی شبیه این ببینید:
open-webui
Up ...
برای مشاهده لاگ:
docker logs -f open-webui
مرحله چهارم: ورود به Open WebUI
اگر IP سرور مثلاً:
185.126.200.100
باشد، میتوانید پورت ۳۰۰۰ را در مرورگر باز کنید:
http://185.126.200.100:3000
در اولین ورود میتوانید حساب کاربری خود را ایجاد کنید.
پس از ورود، پنل اصلی Open WebUI نمایش داده میشود.
مرحله پنجم: نصب Ollama
Open WebUI بهتنهایی مدلهایی مانند Llama یا Qwen را اجرا نمیکند. برای اجرای Local Model میتوانید از Ollama استفاده کنید.
معماری موردنظر:
Browser
│
▼
Open WebUI
│
▼
Ollama
│
▼
Qwen / Llama / Gemma / ...
در صورتی که Ollama روی همان سرور نصب باشد، Open WebUI میتواند از طریق شبکه Docker به سرویس Ollama متصل شود.
Open WebUI مستنداً امکان مدیریت Ollama از مسیر:
Settings
→ Admin
→ Connections
را فراهم میکند.
روش اول نصب Open WebUI و Ollama در یک Container
Open WebUI یک Image مخصوص دارد که Ollama را نیز داخل همان Container قرار میدهد.
در سرور دارای NVIDIA GPU
docker run -d \
--gpus=all \
-p 3000:8080 \
-v ollama:/root/.ollama \
-v open-webui:/app/backend/data \
-e WEBUI_SECRET_KEY=YOUR_SECRET_KEY \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:ollama
نسخه CPU:
docker run -d \
-p 3000:8080 \
-v ollama:/root/.ollama \
-v open-webui:/app/backend/data \
-e WEBUI_SECRET_KEY=YOUR_SECRET_KEY \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:ollama
این روش ساده است و برای راهاندازی سریع مناسب است. Open WebUI رسماً Imageهای ollama را برای همین سناریو ارائه میکند.
روش دوم: اجرای جداگانه Ollama و Open WebUI
برای سرور Production معمولاً بهتر است سرویسها را از هم جدا کنید.
مثلاً:
Container 1:
Open WebUI
Container 2:
Ollama
Volume:
open-webui
Volume:
ollama
این معماری مدیریت، Backup و Upgrade را سادهتر میکند.
پس از اجرای Ollama، آدرس API آن معمولاً:
http://SERVER_IP:11434
خواهد بود.
اگر Open WebUI روی همان Host اجرا شود، طبق مستندات Open WebUI میتوانید برای دسترسی از Docker به Ollama روی Host از:
http://host.docker.internal:11434
استفاده کنید.
مرحله ششم: اتصال Open WebUI به Ollama
در Open WebUI به مسیر زیر بروید:
Settings
→ Admin
→ Connections
در قسمت Ollama API Connection آدرس Ollama را وارد کنید.
برای نمونه:
http://host.docker.internal:11434
یا اگر Ollama روی سرور دیگری قرار دارد:
http://192.168.1.50:11434
در نهایت Connection را ذخیره کنید.
Open WebUI پس از اتصال میتواند مدلهای Ollama را شناسایی و مدیریت کند.
مرحله هفتم: نصب اولین مدل هوش مصنوعی
حالا میتوانید وارد محیط Ollama شوید.
برای مثال:
ollama pull qwen3:8b
یا یک مدل دیگر:
ollama pull llama3
پس از دانلود مدل، آن را در Open WebUI انتخاب کنید.
در صورتی که سرور GPU دارد، Ollama میتواند از GPU برای اجرای مدل استفاده کند؛ اما میزان RAM و VRAM موردنیاز کاملاً به مدل، Quantization، Context Size و تعداد درخواستهای همزمان بستگی دارد.
برای پروژههای سنگینتر AI، انتخاب GPU اهمیت بسیار بیشتری از خود Open WebUI دارد.
نصب Open WebUI روی سرور GPU
اگر سرور شما NVIDIA GPU دارد، Open WebUI یک Image مخصوص CUDA نیز ارائه میکند:
ghcr.io/open-webui/open-webui:cuda
و در Docker باید GPU را در اختیار Container قرار دهید. نمونه رسمی:
docker run -d \
-p 3000:8080 \
--gpus all \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
-e WEBUI_SECRET_KEY=YOUR_SECRET_KEY \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:cuda
Open WebUI همچنین Imageهای cuda126 و نسخههای دیگر را ارائه میکند. طبق مستندات رسمی، Image cuda برای بخشهای ML داخلی Open WebUI مانند Embedding، Reranking و Whisper کاربرد دارد؛ اجرای مدلهای Ollama به نحوه اختصاص GPU به Container مربوط به Ollama نیز وابسته است.
نصب با Docker Compose
برای استفاده دائمی، Docker Compose معمولاً مدیریت بهتری نسبت به یک دستور طولانی docker run دارد.
یک پوشه ایجاد کنید:
mkdir -p /opt/open-webui
cd /opt/open-webui
فایل Compose را بسازید:
nano docker-compose.yml
محتوای پیشنهادی:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: unless-stopped
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
environment:
WEBUI_SECRET_KEY: "YOUR_SECRET_KEY"
volumes:
open-webui:
ذخیره کنید و اجرا کنید:
docker compose up -d
بررسی:
docker compose ps
لاگ:
docker compose logs -f
برای Production بهتر است بهجای main یک Tag نسخه مشخص Open WebUI را استفاده کنید تا Update ناخواسته باعث تغییر نسخه در حال اجرا نشود. مستندات رسمی Open WebUI نیز برای Deploymentهای قابل تکرار، Pin کردن نسخه را توصیه میکنند.
استفاده از GPU در Docker Compose
برای NVIDIA GPU میتوان Image را به نسخه CUDA تغییر داد:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:cuda
container_name: open-webui
restart: unless-stopped
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
environment:
WEBUI_SECRET_KEY: "YOUR_SECRET_KEY"
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities:
- gpu
volumes:
open-webui:
بعد:
docker compose up -d
Open WebUI همین الگو را برای استفاده از NVIDIA GPU در Docker Compose مستند کرده است.
استفاده از دامنه به جای IP:Port
باز کردن:
http://SERVER_IP:3000
برای تست خوب است، اما برای استفاده دائمی بهتر است یک Subdomain داشته باشید.
مثلاً:
ai.example.com
DNS را به IP سرور اشاره دهید:
ai.example.com → SERVER_IP
سپس Open WebUI را پشت Nginx قرار دهید.
معماری نهایی:
Internet
│
▼
https://ai.example.com
│
▼
Nginx
│
▼
Open WebUI :8080
│
▼
Ollama :11434
│
▼
GPU
تنظیم Nginx و SSL برای Open WebUI
Open WebUI خودش TLS را Terminate نمیکند و برای HTTPS باید از Reverse Proxy مانند Nginx، Caddy یا HAProxy استفاده کنید. مستندات رسمی Open WebUI نیز این معماری را برای HTTPS پیشنهاد میکنند.
نمونه کانفیگ Nginx:
server {
listen 80;
server_name ai.example.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_buffering off;
proxy_cache off;
proxy_read_timeout 1800;
proxy_send_timeout 1800;
proxy_connect_timeout 1800;
}
}
نکته مهم این است که Open WebUI برای Streaming و قابلیتهای Real-Time به WebSocket و SSE وابسته است. بنابراین Reverse Proxy باید Upgrade WebSocket را عبور دهد و Buffering برای Streaming غیرفعال شود.
بعد از تنظیم DNS و Nginx میتوانید SSL را با Let’s Encrypt فعال کنید.
تنظیم WEBUI_URL
وقتی Open WebUI را روی یک دامنه عمومی قرار میدهید، بهتر است URL اصلی آن مشخص شود:
environment:
WEBUI_SECRET_KEY: "YOUR_SECRET_KEY"
WEBUI_URL: "https://ai.example.com"
این تنظیم برای لینکهای داخلی و برخی قابلیتهای OAuth/SSO اهمیت دارد. مستندات رسمی Open WebUI نیز تنظیم WEBUI_URL را برای Deployment پشت HTTPS توصیه میکنند.
تنظیم CORS
یکی از مشکلات رایج هنگام قرار دادن Open WebUI پشت Nginx یا Reverse Proxy، WebSocket است.
برای دامنه:
https://ai.example.com
میتوانید تنظیم کنید:
environment:
CORS_ALLOW_ORIGIN: "https://ai.example.com"
در صورت داشتن چند Origin میتوان آنها را با ; جدا کرد:
environment:
CORS_ALLOW_ORIGIN: "https://ai.example.com;https://www.example.com"
تنظیم نادرست CORS میتواند باعث قطع WebSocket یا رفتارهای غیرعادی هنگام Streaming پاسخها شود.
فعالسازی Cookie امن برای HTTPS
اگر Open WebUI را پشت HTTPS قرار دادهاید، میتوانید Session Cookie را نیز به حالت Secure تغییر دهید:
environment:
WEBUI_SESSION_COOKIE_SECURE: "true"
این تنظیم در مستندات Hardening رسمی Open WebUI نیز برای Deploymentهای HTTPS مطرح شده است.
آیا باید پورت ۳۰۰۰ را در اینترنت باز کنیم؟
خیر، بهتر است در Deployment نهایی Open WebUI مستقیماً با پورت عمومی در دسترس اینترنت نباشد.
بهتر است:
Internet
│
▼
443 HTTPS
│
▼
Nginx
│
▼
127.0.0.1:3000
│
▼
Open WebUI
در چنین معماری، پورت ۳۰۰۰ فقط برای ارتباط داخلی استفاده میشود و کاربر با HTTPS به Nginx متصل میشود.
همچنین پورت Ollama یعنی:
11434
را نباید بدون دلیل روی اینترنت عمومی باز کنید.
نکات امنیتی مهم Open WebUI
Open WebUI اگر به اینترنت عمومی متصل باشد، نباید مانند یک برنامه آزمایشی با تنظیمات پیشفرض رها شود.
احراز هویت را فعال نگه دارید
متغیر زیر در حالت پیشفرض فعال است:
WEBUI_AUTH=True
خاموش کردن Authentication برای یک نمونهای که کاربر دارد، مستقیماً امکانپذیر نیست؛ بنابراین از ابتدا تنظیمات احراز هویت را درست انجام دهید.
Secret Key ثابت داشته باشید
از:
openssl rand -hex 32
برای ساخت Secret Key استفاده کنید.
کلید را بعداً بدون دلیل تغییر ندهید؛ زیرا تغییر آن میتواند Sessionهای کاربران را تحت تأثیر قرار دهد. مستندات رسمی نیز روی استفاده از یک Secret Key ثابت تأکید دارند.
Ollama را عمومی نکنید
اگر Open WebUI و Ollama روی یک سرور هستند، بهتر است Ollama فقط از شبکه داخلی یا Container Network در دسترس باشد.
Backup بگیرید
Volume مربوط به:
/app/backend/data
اطلاعات مهم Open WebUI را نگهداری میکند.
بنابراین Backup منظم از Volume اهمیت دارد.
چگونه از اطلاعات Open WebUI Backup بگیریم؟
ابتدا Volumeها را ببینید:
docker volume ls
Volume موردنظر:
open-webui
یک Backup ساده:
docker run --rm \
-v open-webui:/data \
-v $(pwd):/backup \
ubuntu \
tar czf /backup/open-webui-backup.tar.gz /data
فایل خروجی:
open-webui-backup.tar.gz
را در یک محل امن نگهداری کنید.
چگونه Open WebUI را Update کنیم؟
اگر از Docker Compose استفاده میکنید:
docker compose pull
docker compose up -d
اگر از docker run استفاده کردهاید، ابتدا Container قدیمی را متوقف کنید و سپس نسخه جدید را اجرا کنید.
اما در Production توصیه میشود ابتدا Backup گرفته شود و نسخه Open WebUI بهصورت مشخص Pin شود.
مستندات رسمی نیز برای Update با Compose استفاده از:
docker compose pull
docker compose up -d
را مستند کردهاند.
خطای Connection Error بین Open WebUI و Ollama
اگر Open WebUI مدلها را نمیبیند، ابتدا از داخل سرور بررسی کنید:
curl http://127.0.0.1:11434/api/tags
اگر Ollama روی Host فعال باشد، باید پاسخی از API دریافت کنید.
در صورت استفاده از Docker، آدرس:
http://localhost:11434
داخل Container لزوماً به Ollama روی Host اشاره نمیکند.
به همین دلیل Open WebUI برای Docker از:
http://host.docker.internal:11434
استفاده میکند.
چرا مدلها در Open WebUI نمایش داده نمیشوند؟
چند مورد را بررسی کنید:
docker logs open-webui
سپس اتصال Ollama را بررسی کنید:
curl http://127.0.0.1:11434/api/tags
و مطمئن شوید مدل واقعاً دانلود شده:
ollama list
اگر Ollama روی سرور دیگری است، URL اتصال را نیز بررسی کنید.
مشکل WebSocket و قطع شدن Streaming
یکی از خطاهای رایج در Deploymentهای Reverse Proxy این است که صفحه باز میشود اما پاسخ مدل بهصورت کامل Stream نمیشود.
در Nginx این موارد را بررسی کنید:
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_buffering off;
proxy_cache off;
همچنین:
proxy_read_timeout 1800;
proxy_send_timeout 1800;
را برای پاسخهای طولانی تنظیم کنید.
این موارد در مستندات رسمی Open WebUI برای Nginx و Reverse Proxy بهطور مشخص مطرح شدهاند.
خطای CORS
اگر در لاگ Open WebUI خطایی شبیه:
is not an accepted origin
دیدید، مقدار:
CORS_ALLOW_ORIGIN
را بررسی کنید.
برای مثال:
CORS_ALLOW_ORIGIN: "https://ai.example.com"
مقدار Origin باید با روشی که کاربران واقعاً از طریق آن به WebUI دسترسی دارند مطابقت داشته باشد.
Open WebUI را روی CPU نصب کنیم یا GPU؟
Open WebUI روی CPU نیز قابل اجرا است.
اما اگر هدف شما اجرای مدلهای Local و سنگین باشد، GPU اهمیت زیادی پیدا میکند.
بهصورت کلی:
| نوع استفاده | سختافزار پیشنهادی |
|---|---|
| فقط رابط Open WebUI | CPU و RAM معمولی |
| مدلهای کوچک | CPU قوی یا GPU اقتصادی |
| مدلهای متوسط | GPU با VRAM مناسب |
| مدلهای بزرگ | GPU با VRAM بالا |
| چند کاربر همزمان | GPU قدرتمند + RAM کافی |
| LLMهای بزرگ | چند GPU یا سرور GPU |
برای مدلهای بزرگ، فقط تعداد هسته CPU مهم نیست؛ مقدار VRAM، پهنایباند حافظه GPU، Quantization و تعداد کاربران همزمان نیز اهمیت دارند.
در پروژههایی که هدف اجرای مدلهای AI روی سرور است، انتخاب GPU باید قبل از نصب نرمافزار انجام شود.
برای بررسی زیرساخت مناسب میتوانید به صفحه سرور مجازی خارج مراجعه کنید و برای پروژههای سنگینتر، مشخصات سرور GPU را متناسب با مدل موردنظر بررسی کنید.
آیا Open WebUI فقط برای Ollama است؟
خیر.
یکی از مزایای مهم Open WebUI این است که معماری آن فقط به Ollama محدود نشده و از Providerهای مختلف پشتیبانی میکند.
بنابراین میتوانید معماریهایی مانند این داشته باشید:
┌── Ollama
│
Open WebUI ──────────┼── OpenAI-Compatible API
│
├── سایر Providerها
│
└── مدلهای Local
این ویژگی باعث میشود Open WebUI بتواند بهعنوان یک لایه مرکزی برای دسترسی کاربران به چند مدل مختلف استفاده شود.
Open WebUI برای چه پروژههایی مناسب است؟
Open WebUI میتواند برای موارد مختلفی استفاده شود؛ از جمله:
- چت با مدلهای Local
- اجرای LLM روی VPS یا سرور اختصاصی
- استفاده سازمانی از مدلهای AI
- اتصال کاربران به Ollama
- تست مدلهای مختلف
- ساخت محیط داخلی AI برای شرکت
- اتصال به APIهای سازگار با OpenAI
- استفاده از مدلهای AI بدون وابستگی کامل به یک رابط SaaS
همچنین قابلیتهای Open WebUI فقط به Chat ساده محدود نیست و امکانات مرتبط با Agent، Tool Calling و ادغام با سرویسهای مختلف نیز در اکوسیستم آن وجود دارد.
معماری پیشنهادی برای یک سرور AI
برای یک Deployment حرفهای میتوان معماری زیر را در نظر گرفت:
Internet
│
▼
Cloudflare / DNS
│
▼
Nginx / HTTPS
│
▼
Open WebUI
│
┌─────────┴─────────┐
▼ ▼
Ollama API Provider
│
▼
GPU
│
▼
Llama / Qwen / ...
در این معماری Open WebUI مسئول Interface و مدیریت کاربران است، Ollama وظیفه اجرای مدل را بر عهده دارد و GPU منابع محاسباتی موردنیاز Inference را فراهم میکند.
آیا Open WebUI برای سرور Production مناسب است؟
بله، اما Deployment Production با اجرای آزمایشی روی پورت ۳۰۰۰ تفاوت دارد.
برای محیط Production بهتر است این موارد را در نظر بگیرید:
Docker
+
Volume مستقل
+
Backup
+
HTTPS
+
Reverse Proxy
+
Authentication
+
CORS صحیح
+
WebSocket
+
Firewall
+
Monitoring
+
Version Pinning
مستندات رسمی Open WebUI نیز بخش مستقلی برای Hardening و HTTPS ارائه میکنند و استفاده از Reverse Proxy را برای TLS توصیه کردهاند.
در نهایت میتوان گفت که
نصب Open WebUI روی سرور در سادهترین حالت با Docker انجام میشود و میتوان در چند دقیقه یک رابط وب برای مدلهای هوش مصنوعی راهاندازی کرد.
مسیر پیشنهادی این است:
Server
↓
Docker
↓
Open WebUI
↓
Ollama
↓
AI Model
برای استفاده آزمایشی، دسترسی مستقیم از طریق:
http://SERVER_IP:3000
کافی است.
اما برای استفاده دائمی و Production بهتر است:
Domain
↓
HTTPS
↓
Nginx
↓
Open WebUI
↓
Ollama
↓
GPU
را پیادهسازی کنید.
نکته مهم این است که نصب Open WebUI بخش ساده پروژه است. اگر هدف شما اجرای مدلهای بزرگ، پاسخگویی سریع یا استفاده همزمان چند کاربر باشد، انتخاب درست CPU، RAM، NVMe و مخصوصاً GPU و VRAM اهمیت بسیار بیشتری پیدا میکند.
نگارنوین زیرساخت VPS و سرورهای مناسب اجرای سرویسهای مختلف را ارائه میدهد و برای پروژههای هوش مصنوعی میتوانید منابع سرور را بر اساس مدل، میزان RAM/VRAM، تعداد کاربران و نوع Workload انتخاب کنید.
سوالات متداول
آیا Open WebUI رایگان است؟
Open WebUI یک پروژه Self-Hosted است و میتوانید آن را روی زیرساخت خودتان اجرا کنید. هزینه اصلی شما مربوط به سرور، GPU در صورت نیاز و سرویسهای API خارجی خواهد بود.
آیا بدون GPU میتوان Open WebUI نصب کرد؟
بله. خود Open WebUI روی CPU نیز اجرا میشود. GPU بیشتر برای اجرای سریع مدلهای Local اهمیت دارد.
آیا Open WebUI روی VPS نصب میشود؟
بله. میتوانید Open WebUI را روی VPS Linux با Docker نصب کنید. برای اجرای مدلهای بزرگ باید منابع سرور را متناسب با مدل انتخاب کنید.
آیا میتوان Open WebUI را به Ollama متصل کرد؟
بله. اتصال به Ollama یکی از سناریوهای اصلی Open WebUI است و از داخل بخش Connections قابل مدیریت است.
آیا میتوان Open WebUI را با دامنه و SSL اجرا کرد؟
بله. Open WebUI را میتوان پشت Nginx، Caddy یا Reverse Proxyهای دیگر قرار داد و با HTTPS در دسترس قرار داد.
پورت پیشفرض Open WebUI چیست؟
در Docker معمولاً سرویس داخل Container روی پورت 8080 اجرا میشود و میتوان مثلاً آن را به پورت 3000 روی Host Map کرد:
3000:8080
آیا میتوان Open WebUI را به APIهای OpenAI-compatible متصل کرد؟
بله. Open WebUI از Providerهای سازگار با OpenAI نیز پشتیبانی میکند.
آیا برای Open WebUI باید GPU قدرتمند داشته باشیم؟
برای خود رابط کاربری خیر؛ اما اگر قصد اجرای مدلهای بزرگ Local را دارید، GPU و مقدار VRAM میتواند عامل تعیینکننده عملکرد باشد.