آموزش نصب Ollama روی سرور مجازی لینوکس؛ ساخت هوش مصنوعی شخصی و API اختصاصی
اگر بخواهید یک مدل هوش مصنوعی را بدون وابستگی دائمی به API سرویسهای خارجی اجرا کنید، یکی از روشهای جذاب این است که Ollama را روی سرور مجازی لینوکس نصب کنید. با این روش میتوانید مدلهایی مانند Llama، Gemma، Qwen و مدلهای سازگار دیگر را روی سرور خود اجرا کنید و از طریق API به برنامه، سایت یا پروژه شخصی خود متصل شوید.
در این آموزش از مرحله انتخاب VPS و بررسی منابع شروع میکنیم، Ollama را روی Ubuntu نصب میکنیم، اولین مدل را دانلود و اجرا میکنیم و سپس API اختصاصی آن را با curl آزمایش میکنیم. در ادامه نیز روش مدیریت مدلها، مشاهده مصرف منابع، اجرای خودکار سرویس، تنظیم Context و اصول دسترسی از راه دور را بررسی خواهیم کرد.
📌 پاسخ سریع: Ollama یک روش ساده برای اجرای مدلهای زبانی روی سیستم یا سرور شخصی است. پس از نصب Ollama روی Linux VPS میتوانید مدل مورد نظر را دانلود کنید و از API محلی آن در آدرس 127.0.0.1:11434 استفاده کنید. به این ترتیب برنامههای شما میتوانند بهجای ارسال هر درخواست به یک سرویس AI خارجی، با مدل اجراشده روی سرور خودتان ارتباط برقرار کنند.
Ollama چیست و چرا آن را روی VPS نصب کنیم؟
Ollama ابزاری برای دانلود، مدیریت و اجرای مدلهای هوش مصنوعی است که پیچیدگی راهاندازی بسیاری از مدلهای Local را کاهش میدهد. بهجای اینکه برای هر مدل مجموعهای از وابستگیها و اسکریپتهای مختلف را بهصورت دستی مدیریت کنید، Ollama بخش بزرگی از این فرایند را یکپارچه میکند.
اجرای Ollama روی کامپیوتر شخصی برای آزمایش بسیار خوب است؛ اما سرور مجازی یک مزیت مهم دارد: سرویس میتواند بدون روشن ماندن کامپیوتر شما، بهصورت دائمی فعال باشد.
🔹 اجرای مدل هوش مصنوعی روی سرور شخصی
🔹 ساخت API برای سایت یا نرمافزار
🔹 امکان اجرای سرویس بهصورت ۲۴ ساعته
🔹 مدیریت چند مدل از یک محیط
🔹 استفاده در پروژههای اتوماسیون و برنامهنویسی
🔹 کنترل بیشتر روی محل اجرای مدل و دادههای پردازششده
Ollama روی VPS چه کاری برای ما انجام میدهد؟
فرض کنید یک اپلیکیشن دارید که باید متن دریافت کند و از مدل زبانی پاسخ بگیرد. در حالت رایج، برنامه درخواست را به API یک ارائهدهنده خارجی میفرستد. در معماری Self-hosted میتوانید Ollama را روی سرور خود اجرا کنید و برنامه را به API همان سرور متصل کنید.
ساختار ساده چنین پروژهای به شکل زیر است:
Website / App
|
v
Your Backend
|
v
Ollama API
127.0.0.1:11434
|
v
Local AI Model
این معماری یک نکته امنیتی مهم هم دارد: لازم نیست Ollama مستقیماً برای همه اینترنت قابل دسترسی باشد. Backend شما میتواند روی همان سرور با API محلی ارتباط برقرار کند و فقط بخش مورد نیاز برنامه در معرض اینترنت قرار بگیرد.
برای نصب Ollama روی سرور چه منابعی لازم داریم؟
مهمترین اشتباه قبل از نصب Ollama، انتخاب VPS بدون توجه به مدل مورد نظر است. Ollama خودش باعث نمیشود یک مدل بزرگ روی سرور کمحافظه اجرا شود. منابع مورد نیاز بیشتر به مدل، Quantization، Context و تعداد درخواستهای همزمان بستگی دارند.
| نوع استفاده | مدل پیشنهادی اولیه | RAM پیشنهادی برای شروع | کاربرد |
|---|---|---|---|
| آزمایش و یادگیری | مدلهای حدود ۱B تا ۳B | حداقل ۴ تا ۸ گیگابایت بسته به مدل | چت ساده و تست API |
| استفاده عمومی سبک | مدلهای کوچک تا متوسط | ۸ تا ۱۶ گیگابایت یا بیشتر | اتوماسیون و API شخصی |
| مدلهای بزرگتر | وابسته به مدل | ۱۶، ۳۲ گیگابایت و بالاتر | کار حرفهایتر |
⚠️ مهم: اعداد جدول تخمین عمومی برای انتخاب نقطه شروع هستند و تضمین اجرای هر مدل نیستند. قبل از تهیه VPS، اندازه و نیاز حافظه مدل مورد نظر را بررسی کنید. Context بزرگتر، اجرای موازی و بارگذاری همزمان چند مدل میتوانند مصرف RAM یا VRAM را افزایش دهند.
آیا Ollama بدون GPU روی VPS اجرا میشود؟
بله. برای شروع و مدلهای کوچک میتوان Ollama را روی CPU اجرا کرد. در این حالت سرعت پاسخگویی به قدرت CPU، مدل و تنظیمات بستگی دارد. برای بارهای سنگینتر، GPU سازگار میتواند تفاوت بزرگی در سرعت ایجاد کند.
پس برای آموزش و ساخت API سبک الزاماً به GPU نیاز ندارید؛ اما نباید انتظار سرعت یک سرور GPU را از VPS معمولی CPU-only داشته باشید.
برای ساخت سرور هوش مصنوعی شخصی به VPS نیاز دارید؟
اگر میخواهید Ollama را برای آموزش، توسعه API، اجرای مدلهای سبک یا اتصال به پروژههای شخصی روی یک سرور همیشهروشن آزمایش کنید، میتوانید پلنهای سرور مجازی ایران ایرانیکاسرور را بررسی کنید. برای Local AI بهتر است RAM را بر اساس مدل انتخاب کنید و قبل از خرید، حجم مدل و میزان حافظه مورد نیاز آن را در نظر بگیرید.
برای مدلهای بزرگ و پروژههای پرترافیک، انتخاب VPS صرفاً بر اساس قیمت اشتباه است؛ CPU، RAM، نوع Storage و در صورت نیاز GPU باید متناسب با workload انتخاب شوند.
📞 تماس با پشتیبانی: 021-91302467 | ایرانیکاسرور
مرحله اول: اتصال به سرور لینوکس با SSH
در این آموزش فرض میکنیم سرور Ubuntu دارید. ابتدا از کامپیوتر خود با SSH به سرور متصل شوید:
ssh root@SERVER_IP
بهجای SERVER_IP آدرس IP سرور خود را وارد کنید. در محیط عملیاتی بهتر است بهجای کار دائمی با root، کاربر مدیریتی مناسب با sudo داشته باشید.
مرحله دوم: بهروزرسانی Ubuntu
قبل از نصب سرویس جدید، فهرست بستهها و پکیجهای نصبشده را بهروز کنید:
sudo apt update
sudo apt upgrade -y
اگر curl روی سیستم نصب نیست، آن را نصب کنید:
sudo apt install curl -y
مرحله سوم: نصب Ollama روی Ubuntu
روش سریع رسمی Ollama در لینوکس استفاده از اسکریپت نصب است. دستور زیر را اجرا کنید:
curl -fsSL https://ollama.com/install.sh | sh
پس از اتمام نصب، نسخه Ollama را بررسی کنید:
ollama -v
مرحله چهارم: بررسی سرویس Ollama
در نصب استاندارد لینوکس، Ollama میتواند بهصورت سرویس systemd اجرا شود. وضعیت آن را بررسی کنید:
sudo systemctl status ollama
اگر سرویس فعال نبود، آن را Start کنید:
sudo systemctl start ollama
برای فعال شدن سرویس هنگام Boot:
sudo systemctl enable ollama
مشاهده Logهای Ollama
اگر سرویس اجرا نشد یا مدل هنگام Load خطا داد، Log یکی از اولین جاهایی است که باید بررسی کنید:
journalctl -e -u ollama
مرحله پنجم: دانلود اولین مدل هوش مصنوعی
حالا باید مدل مورد نظر را دانلود کنیم. فهرست مدلهای قابل استفاده را میتوانید در کتابخانه مدلهای Ollama بررسی کنید.
برای VPSهای دارای منابع محدود بهتر است کار را با یک مدل کوچک شروع کنید. بهعنوان نمونه، ابتدا مدل انتخابی خود را Pull کنید:
ollama pull llama3.2:1b
پس از دانلود میتوانید همان مدل را اجرا کنید:
ollama run llama3.2:1b
اگر Prompt دریافت کرد، اولین مدل هوش مصنوعی شما روی VPS در حال اجراست.
مدلهای نصبشده را چگونه ببینیم؟
برای مشاهده مدلهایی که روی سرور دانلود شدهاند:
ollama list
برای مشاهده مدلهایی که همین حالا در حافظه Load هستند:
ollama ps
خروجی ollama ps علاوه بر مدل فعال، میتواند مشخص کند پردازش روی CPU، GPU یا ترکیبی از آنها انجام میشود.
مرحله ششم: تست API اختصاصی Ollama
تا اینجا مدل را از Terminal اجرا کردیم. بخش مهمتر برای توسعهدهندگان، API است. Ollama بهصورت پیشفرض API محلی خود را روی آدرس زیر ارائه میکند:
http://127.0.0.1:11434
برای ارسال یک درخواست Chat از داخل همان VPS میتوانیم از curl استفاده کنیم:
curl http://127.0.0.1:11434/api/chat \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.2:1b",
"messages": [
{
"role": "user",
"content": "سلام، خودت را کوتاه معرفی کن."
}
],
"stream": false
}'
اگر مدل دانلود شده و Ollama فعال باشد، پاسخ بهصورت JSON برمیگردد. متن اصلی پاسخ در ساختار پیام خروجی قرار دارد.
API Key کجاست؟
برای API محلی Ollama روی localhost، درخواست به مدل Local به API Key احتیاج ندارد. این موضوع استفاده داخلی را ساده میکند، اما دقیقاً به همین دلیل نباید پورت خام Ollama را بدون طراحی امنیتی مناسب مستقیماً روی اینترنت باز کنید.
تفاوت /api/chat و /api/generate چیست؟
برای پروژههای مختلف میتوانید از Endpointهای متفاوت استفاده کنید. برای یک چت چندپیامی، endpoint مربوط به Chat طبیعیتر است؛ در حالی که Generate برای ارسال Prompt مستقیم کاربرد دارد.
| Endpoint | کاربرد | مناسب برای |
|---|---|---|
| /api/chat | پیامهای دارای Role | چتبات و Conversation |
| /api/generate | Prompt مستقیم | تولید متن و پردازش ساده |
Ollama و سازگاری با OpenAI API
یکی از قابلیتهای کاربردی Ollama برای توسعهدهندگان، ارائه مسیرهای سازگار با بخشی از OpenAI API است. Base URL محلی آن در مستندات فعلی به شکل زیر معرفی شده است:
http://127.0.0.1:11434/v1
این قابلیت میتواند مهاجرت بعضی ابزارها و برنامههایی را که Client سازگار با OpenAI دارند سادهتر کند؛ البته باید بررسی کنید قابلیت API مورد استفاده برنامه شما در لایه Compatibility پشتیبانی میشود یا خیر.
چطور API را از کامپیوتر دیگری در دسترس قرار دهیم؟
Ollama بهصورت پیشفرض روی 127.0.0.1:11434 Bind میشود؛ یعنی فقط برنامههای همان سرور میتوانند مستقیماً به آن دسترسی داشته باشند.
از نظر فنی میتوان با متغیر OLLAMA_HOST آدرس Listen را تغییر داد. روی Linux با systemd میتوانید Override سرویس ایجاد کنید:
sudo systemctl edit ollama.service
و در بخش Service مقدار مورد نیاز را اضافه کنید:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
سپس systemd را Reload و سرویس را Restart کنید:
sudo systemctl daemon-reload
sudo systemctl restart ollama
⚠️ هشدار امنیتی مهم: تنظیم 0.0.0.0 باعث میشود Ollama روی Interfaceهای شبکه Listen کند. این کار بهتنهایی به معنی ساخت یک API عمومی امن نیست. API محلی Ollama را بدون Firewall، Authentication و معماری دسترسی مناسب مستقیماً در معرض اینترنت قرار ندهید. برای پروژه واقعی بهتر است دسترسی را محدود کنید یا از Backend، Reverse Proxy و لایه احراز هویت استفاده کنید.
روش امنتر: Ollama پشت Backend یا Reverse Proxy
اگر سایت شما روی همان سرور است، در بسیاری از پروژهها اصلاً لازم نیست Ollama را روی 0.0.0.0 قرار دهید. برنامه Backend میتواند مستقیماً با 127.0.0.1:11434 ارتباط برقرار کند.
برای دسترسی کنترلشده از بیرون نیز میتوان معماریای شبیه این ساخت:
Internet
|
v
HTTPS / Authentication
|
v
Nginx or Application Backend
|
v
127.0.0.1:11434
|
v
Ollama
در مقاله جداگانهای میتوان این قسمت را کاملتر کرد و Nginx، SSL، دامنه، محدودسازی IP، Rate Limit و Authentication را قدمبهقدم روی Ollama پیادهسازی کرد.
چطور Ollama را فقط Local نگه داریم؟
اگر هدفتان اجرای کاملاً Local است، Ollama در نسخههای فعلی امکان غیرفعال کردن قابلیتهای Cloud را نیز فراهم کرده است. یکی از روشها استفاده از متغیر محیطی زیر است:
OLLAMA_NO_CLOUD=1
اگر این تنظیم را برای سرویس systemd اعمال کردید، پس از تغییر تنظیمات سرویس را Restart کنید. با غیرفعال کردن قابلیتهای Cloud، امکانات وابسته به Ollama Cloud و Web Search نیز در دسترس نخواهند بود.
مدلهای Ollama کجا ذخیره میشوند؟
در نصب استاندارد Linux، مستندات Ollama مسیر مدلها را به شکل زیر اعلام میکنند:
/usr/share/ollama/.ollama/models
اگر دیسک اصلی VPS فضای کمی دارد، میتوان مسیر ذخیره مدلها را با متغیر OLLAMA_MODELS تغییر داد. در این حالت کاربر سرویس ollama باید روی مسیر جدید دسترسی Read/Write داشته باشد.
چرا فضای دیسک VPS برای Ollama مهم است؟
مدلهای AI میتوانند چند صد مگابایت تا دهها گیگابایت فضا مصرف کنند. اگر چند مدل را Pull کنید، فضای دیسک خیلی سریعتر از یک وبسرور معمولی مصرف میشود.
به همین دلیل هنگام انتخاب سرور فقط RAM را نبینید. فضای NVMe یا SSD و ظرفیت آزاد دیسک نیز اهمیت دارد؛ مخصوصاً اگر قصد آزمایش مدلهای متعدد را دارید.
تنظیم Context در Ollama و تأثیر آن روی RAM
Context Window مشخص میکند مدل چه مقدار از متن گفتگو یا ورودی را در یک نوبت در نظر بگیرد. افزایش Context میتواند برای اسناد طولانی مفید باشد، اما حافظه بیشتری نیز مصرف میکند.
برای نمونه میتوان Context پیشفرض سرویس را با متغیر محیطی تنظیم کرد:
OLLAMA_CONTEXT_LENGTH=8192
اما افزایش عدد بدون بررسی RAM یا VRAM ایده خوبی نیست. روی VPS دارای منابع محدود، Context بزرگ میتواند باعث افزایش شدید مصرف حافظه شود.
مدل چه مدت در RAM باقی میماند؟
Ollama برای سریعتر شدن درخواستهای بعدی، مدل را مدتی پس از استفاده در حافظه نگه میدارد. اگر روی VPS کوچک کار میکنید، مدیریت این رفتار میتواند مهم باشد.
برای خارج کردن یک مدل از حافظه میتوانید از دستور زیر استفاده کنید:
ollama stop llama3.2:1b
در API نیز پارامتر keep_alive برای کنترل مدت باقی ماندن مدل در حافظه وجود دارد. این قابلیت زمانی مهمتر میشود که چند مدل یا چند کاربر از یک سرور استفاده کنند.
CPU، RAM و GPU را هنگام اجرای Ollama بررسی کنیم
هنگام تست مدل بهتر است یک Terminal دیگر باز کنید و منابع سرور را زیر نظر بگیرید.
بررسی RAM:
free -h
بررسی CPU و Processها:
top
بررسی فضای دیسک:
df -h
اگر NVIDIA GPU دارید:
nvidia-smi
و برای دیدن اینکه خود Ollama مدل را روی چه Processorی Load کرده است:
ollama ps
خطاهای رایج نصب Ollama روی VPS
مدل دانلود میشود اما اجرا نمیشود
ابتدا RAM آزاد را با free -h بررسی کنید. اگر مدل برای حافظه سرور بزرگ باشد، مدل کوچکتری انتخاب کنید. همچنین Log سرویس را بررسی کنید.
Connection refused روی پورت 11434
وضعیت سرویس را با systemctl status ollama بررسی کنید. اگر درخواست از دستگاه دیگری ارسال میشود، به یاد داشته باشید Ollama بهصورت پیشفرض روی localhost Bind است.
سرور بعد از اجرای مدل بسیار کند میشود
ممکن است مدل تقریباً تمام RAM یا CPU سرور را مصرف کرده باشد. مدل سبکتر انتخاب کنید و Context و تعداد درخواستهای همزمان را کاهش دهید.
فضای دیسک ناگهان پر شده است
مدلهای دانلودشده میتوانند فضای زیادی مصرف کنند. با ollama list مدلهای موجود را بررسی کنید و مدلهایی را که استفاده نمیکنید حذف کنید.
API از داخل سرور کار میکند اما از اینترنت نه
این رفتار در تنظیم پیشفرض طبیعی است؛ چون Ollama روی 127.0.0.1 Bind میشود. قبل از تغییر آن به 0.0.0.0، معماری امنیتی API را مشخص کنید.
در نصب Ollama یا انتخاب منابع VPS مشکل دارید؟
اگر Ollama اجرا نمیشود، مدل به دلیل کمبود RAM Load نمیشود یا برای انتخاب منابع مناسب سرور مطمئن نیستید، میتوانید درخواست بررسی و کانفیگ خود را برای ایرانیکاسرور ارسال کنید.
در درخواست خود نام مدل، سیستمعامل، مقدار RAM، تعداد vCPU و خروجی خطا را ارسال کنید تا تشخیص مشکل سریعتر انجام شود.
📞 تماس با پشتیبانی: 021-91302467 | ایرانیکاسرور
Ollama روی کامپیوتر شخصی یا VPS؛ کدام بهتر است؟
| ویژگی | کامپیوتر شخصی | VPS |
|---|---|---|
| آزمایش Local AI | بسیار مناسب | مناسب |
| فعال بودن ۲۴ ساعته | نیازمند روشن بودن سیستم | مناسبتر |
| API برای سایت | برای توسعه محلی | برای سرویس دائمی مناسبتر |
| GPU | وابسته به سیستم شما | فقط در سرویس دارای GPU |
| کنترل منابع | وابسته به PC | بر اساس پلن سرور |
با API شخصی Ollama چه پروژههایی میتوان ساخت؟
وقتی API کار کند، تازه بخش جذاب پروژه شروع میشود. Ollama دیگر فقط یک چت در Terminal نیست و میتواند Backend هوش مصنوعی برنامههای مختلف باشد.
🔹 چتبات داخلی سایت یا شرکت
🔹 خلاصهسازی متن و اسناد
🔹 دستهبندی خودکار پیامها
🔹 استخراج اطلاعات از متن
🔹 اتصال به n8n و سیستمهای اتوماسیون
🔹 دستیار برنامهنویسی داخلی
🔹 ساخت RAG برای جستوجو و گفتگو با اسناد
🔹 اتصال نرمافزارهای داخلی به یک LLM Self-hosted
برای برخی از این سناریوها تنها Ollama کافی نیست و باید لایههای دیگری مانند Database، Vector Database، Authentication یا رابط کاربری اضافه شوند. Ollama در این معماری موتور اجرای مدل و API آن است.
سؤالات متداول نصب Ollama روی سرور مجازی
آیا Ollama روی Ubuntu Server نصب میشود؟
بله. Ollama نسخه Linux دارد و میتوان آن را روی سرور لینوکسی سازگار نصب و بهصورت سرویس systemd اجرا کرد.
آیا برای Ollama حتماً GPU لازم است؟
خیر. مدلهای متناسب را میتوان روی CPU اجرا کرد. GPU بیشتر برای افزایش سرعت و اجرای workloadهای سنگینتر اهمیت پیدا میکند.
Ollama روی چه پورتی اجرا میشود؟
سرور محلی Ollama بهصورت پیشفرض روی پورت 11434 و آدرس localhost در دسترس است.
آیا API محلی Ollama به API Key نیاز دارد؟
برای درخواست محلی به مدل دانلودشده روی Local Ollama، API Key لازم نیست. به همین دلیل نباید Endpoint خام آن بدون لایه امنیتی مناسب مستقیماً عمومی شود.
آیا میتوان چند مدل روی یک VPS نصب کرد؟
بله. میتوانید چند مدل را Pull کنید، اما فضای دیسک و میزان RAM یا VRAM برای Load کردن مدلها را باید در نظر بگیرید.
برای Ollama چقدر RAM لازم است؟
عدد ثابتی وجود ندارد. مدلهای کوچک به حافظه بسیار کمتری نسبت به مدلهای بزرگ نیاز دارند و Context و تعداد درخواستهای موازی نیز روی مصرف حافظه اثر میگذارند.
آیا میتوان Ollama را به سایت وردپرسی متصل کرد؟
بله. بهتر است WordPress یا Backend واسط شما با API Ollama ارتباط برقرار کند و Endpoint خام Ollama مستقیماً در اختیار مرورگر کاربران قرار نگیرد.
آیا اطلاعات Prompt به Ollama.com ارسال میشود؟
طبق مستندات Ollama، هنگام اجرای Local مدل، Prompt و داده اجرای محلی توسط Ollama.com دیده نمیشوند. استفاده از قابلیتها و مدلهای Cloud سناریوی متفاوتی است و برای حالت Local-only میتوان قابلیتهای Cloud را غیرفعال کرد.
جمعبندی؛ از یک VPS لینوکسی تا API هوش مصنوعی شخصی
با نصب Ollama روی Linux VPS میتوانید یک مدل زبانی را روی زیرساخت خود اجرا کنید و از طریق API به برنامهها و سرویسهای دیگر متصل شوید. برای شروع، یک Ubuntu Server، منابع متناسب با مدل و چند دستور ساده کافی است.
اما بخش مهم پروژه بعد از نصب شروع میشود: انتخاب مدل متناسب با RAM، کنترل Context، مدیریت مصرف حافظه و امنسازی دسترسی API. برای آزمایش، یک مدل ۱B یا ۳B انتخاب منطقیتری از شروع با مدلهای بسیار بزرگ است.
اگر قرار است API از اینترنت در دسترس باشد، پورت 11434 را بدون طراحی امنیتی عمومی نکنید. قرار دادن Ollama پشت Backend یا Reverse Proxy همراه با HTTPS و Authentication معماری مناسبتری برای محیط عملیاتی است.
ایرانیکاسرور؛ ارائهدهنده سرور مجازی ایران و خارج برای میزبانی پروژهها، سرویسهای لینوکسی و کاربردهای توسعه.
📞 تماس با پشتیبانی: 021-91302467 | ایرانیکاسرور
دیدگاهها
0 دیدگاه برای این مطلب ثبت شده است.