اطلاعات تماس

تهران ، آیت الله کاشانی ، پلاک 160 واحد 6

92001474 - 021

[email protected]

ناحیه کاربری
آموزش نصب Open WebUI روی سرور
به‌روزرسانی شده در ۳۱ شهریور ۱۴۰۵

آموزش نصب 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 روی سرور
آموزش نصب 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 می‌تواند عامل تعیین‌کننده عملکرد باشد.

اشتراک گذاری
نگارنوین

نگارنوین اولین و بزرگترین مرجع ارائه دهنده سرویس های ابری از 75 لوکیشن و 100 دیتاسنتر برتر داخلی و بین المللی ، رفع تمامی نیازهای آنلاین شما!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Hi AI, learn about this page