اجرای مدل GLM روی VPS با Ollama
مدل GLM 5.2 در Ollama فقط ابری است و روی VPS اجرا نمیشود. در این راهنما مدل جایگزین GLM-30B-A3B را معرفی کرده و میزان دقیق RAM مورد نیاز برای هر کوانتایز را بررسی میکنیم.
آیا میتوان GLM 5.2 را روی یک VPS اجرا کرد؟
خیر، و دانستن دلیل آن پیش از اجاره هرگونه سرور ضروری است. تا تاریخ 18 August 2026، مدل GLM 5.2 در کتابخانه Ollama دقیقاً دارای یک تگ به نام glm-5.2:cloud است. یک تگ :cloud روی سرورهای Ollama اجرا میشود. سرور شما فقط prompt را ارسال و توکنها را دریافت میکند، بنابراین وزنهای مدل هرگز روی دیسک شما قرار نمیگیرند. این مدل دارای 756 میلیارد پارامتر است. چهار بیت به ازای هر پارامتر در 756 میلیارد پارامتر، تقریباً معادل 378 GB وزن مدل است و این محاسبات ساده پیش از در نظر گرفتن context، فعالسازیها یا سیستمعامل است. هیچ پلن استاندارد VPS چنین مقدار حافظهای را ارائه نمیدهد.
مدل GLM که برای سرورهای اجارهای مناسب است، glm-4.7-flash میباشد. این مدل با وزنهای قابل دانلود در 4 تگ منتشر شده است. این یک مدل mixture-of-experts است، به این معنی که برای هر توکن فقط بخش کوچکی از شبکه اجرا میشود و Z.ai آن را به صورت 30B-A3B توصیف میکند: 30 میلیارد پارامتر در مجموع، و حدود 3 میلیارد پارامتر فعال به ازای هر توکن. بنابراین این راهنما به سوالی پاسخ میدهد که میتوانید بر اساس آن اقدام کنید. یک تگ را انتخاب کنید، اندازه سرور را تعیین کنید، سرعت خود را بسنجید و endpoint را خصوصی نگه دارید.
پیش از کپی کردن هر دستوری، از جمله دستورات موجود در اینجا، تگ را بررسی کنید. کتابخانه Ollama بدون اطلاع قبلی تغییر میکند. لیست تگهای glm-4.7-flash را باز کنید و مطمئن شوید که تگ همچنان وجود دارد. اگر نسخه جدیدتری از GLM با وزنهای محلی منتشر شده است، آن را ترجیح دهید و یادداشت کنید که کدام تگ را واقعاً تست کردهاید.
اگر به هر حال میخواهید از خود GLM 5.2 استفاده کنید، ollama run glm-5.2:cloud پس از ollama signin کار میکند و از سمت کلاینت، مشابه هر مدل دیگر Ollama رفتار میکند. درک کنید که با چه چیزی موافقت میکنید: prompt سرور شما را ترک میکند. اگر دلیل شما برای self-hosting این است که دادهها باید روی دستگاه شما باقی بمانند، یک تگ :cloud این شرط را برآورده نمیکند.
چه تگهای GLM وجود دارند و کدام را باید ثابت (Pin) کرد
در اینجا سه ورودی رسمی GLM اهمیت دارند. glm-5.2 و glm-5.1 فقط ابری هستند. glm-4.7-flash نسخه محلی است و اینها تگهای منتشرشده برای آن به همراه حجم دانلودی هستند که Ollama برای هر کدام فهرست کرده است.
The data behind this chart
[
{
"label": "q4_K_M",
"download_gb": 19
},
{
"label": "latest",
"download_gb": 19
},
{
"label": "q8_0",
"download_gb": 32
},
{
"label": "bf16",
"download_gb": 60
}
]این ارقام، مقادیر منتشرشده در صفحه کتابخانه هستند، نه اندازهگیریهای واقعی. latest و q4_K_M هر دو با حجم 19 GB فهرست شدهاند، بنابراین latest در حال حاضر به نسخه Q4 اشاره دارد. این موضوع با هر بار انتشار مجدد میتواند تغییر کند، به همین دلیل است که هرگز نباید یک ollama pull glm-4.7-flash بدون پسوند را در اسکریپت یا Dockerfile بنویسید. نوع کوانتیزاسیون (quantisation) را مشخص کنید. بزرگترین تگ، یعنی bf16، یک دانلود 60 GB است که شامل وزنهای bfloat16 بدون کوانتیزاسیون میباشد.
جستجو در کتابخانه همچنین آپلودهای دارای فضای نام (namespaced) با یک اسلش در نام را برمیگرداند، مانند someuser/glm-5.2. وجود اسلش به این معنی است که یک حساب کاربری آن را منتشر کرده است، بنابراین این یک آپلود مجدد توسط جامعه کاربری است و نه ورودی رسمی. هیچکس تضمین نمیکند که چه وزنهایی درون آن قرار دارد. با چنین فایلی همانطور رفتار کنید که با هر فایل باینری امضانشدهای که بهصورت آنلاین پیدا میکنید، رفتار میکنید.
نصب Ollama و دریافت تگ دقیق
نصبکننده لینوکسی Ollama تنها با یک دستور اجرا میشود.
curl -fsSL https://ollama.com/install.sh | sh
ollama --versioncurl -fsSL https://ollama.com/install.sh | sh
نصبکننده یک سرویس systemd ایجاد میکند که با کاربر ollama اجرا میشود. پیش از دریافت هر فایلی، از اجرای آن اطمینان حاصل کنید.
systemctl status ollama --no-pagersystemctl status ollama
Active: active (running) به این معناست که API روی پورت 11434 در حال گوش دادن است. اگر این unit وجود ندارد، نصبکننده به حالت نصب فایل باینری ساده بازگشته است؛ در این صورت، مستندات لینوکسی Ollama فایل سرویس مورد نیاز برای ایجاد دستی را ارائه میدهد.
صفحه glm-4.7-flash حداقل نسخه مورد نیاز Ollama را فهرست کرده است. یک فایل باینری قدیمی، مدل را بهکندی اجرا نمیکند، بلکه اجرای آن را رد میکند: عملیات pull با پیامی مبنی بر اینکه مدل به نسخه جدیدتری از Ollama نیاز دارد، با شکست مواجه میشود. برای ارتقا، اسکریپت نصب را دوباره اجرا کنید. تا تاریخ 18 اوت 2026، نسخه فعلی 0.32.14 است که از آن حداقل نسخه فراتر است.
اکنون یک تگ را با نام آن دریافت (pull) کنید.
ollama pull glm-4.7-flash:q4_K_M
ollama lsollama pull llama3.1:8b
ollama ls باید glm-4.7-flash:q4_K_M را با اندازهای نزدیک به 19 گیگابایت که منتشر شده است، فهرست کند. عملیاتی که در میانه راه متوقف شود، هیچ فایل قابل اجرایی باقی نمیگذارد، بنابراین همان دستور را دوباره اجرا کنید. شایعترین علت شکست در عملیات pull روی پلنهای کوچک، پر شدن دیسک است و نه مشکلات شبکه، زیرا مدل در مسیر /usr/share/ollama/.ollama/models روی فایلسیستم ریشه نوشته میشود. پیش از شروع، با دستور df -h /usr/share/ollama وضعیت را بررسی کنید.
هر کوانتیزاسیون به چه مقدار RAM نیاز دارد؟
با حجم دانلود به عنوان حداقل مقدار شروع کنید و سپس مقداری به آن بیفزایید. وزنها باید در حافظه مستقر باشند. علاوه بر آنها، KV cache (حافظه کش کلید/مقدار) قرار دارد که حافظهای است که runtime برای به خاطر سپردن توکنهای موجود در گفتگو از آن استفاده میکند؛ به اینها بافرهای محاسباتی و میزان مصرف سیستمعامل را نیز اضافه کنید. سیستمی که دقیقاً 19 GB رم دارد، نمیتواند تگ 19 GB را اجرا کند.
هیچ ضریب واحدی وجود ندارد که برای همه درست باشد، زیرا KV cache با طول متنی که مجاز میدانید رشد میکند و بقیه موارد نیز بین نسخههای مختلف runtime تغییر میکنند. بنابراین به جای حدس زدن، اندازهگیری کنید. مدل را با یک prompt ساده بارگذاری کنید و سپس میزان حافظه رزرو شده توسط سرور را بخوانید.
ollama run glm-4.7-flash:q4_K_M "Reply with the single word: ready"
ollama psollama ps مدل بارگذاریشده را با ستون SIZE و ستون PROCESSOR چاپ میکند. SIZE مقداری است که runtime واقعاً رزرو کرده است و این عددی است که باید با برنامه خود مقایسه کنید. PROCESSOR به شما میگوید که پردازش در کجا انجام میشود، بنابراین 100% CPU به این معنی است که هیچ GPU درگیر نشده است.
وقتی مدل در حافظه جا نمیشود، شکست به صورت خاموش رخ میدهد و به دو شکل ظاهر میشود. اگر swap فعال باشد، به نظر میرسد بارگذاری موفقیتآمیز بوده است اما تولید متن بسیار کند میشود، زیرا برای هر توکن، صفحات حافظه بین دیسک و RAM جابهجا میشوند. بدون swap، پردازش بلافاصله توسط سیستمعامل کشته میشود و journalctl -k | grep -i "out of memory" خط Out of memory: Killed process مربوط به هسته (kernel) را نشان میدهد که نام ollama را ذکر میکند. هر دو مورد را بررسی کنید، زیرا هیچکدام پیام مفیدی در ترمینالی که در آن تایپ میکردید، چاپ نمیکنند.
تغییر از تگ Q4 با حجم 19 GB به تگ Q8 با حجم 32 GB، اصلیترین اهرم شما برای کنترل این عدد است. Q4 مقداری از کیفیت خروجی را کاهش میدهد و میزان این کاهش به نوع وظیفه بستگی دارد؛ خروجیهای ساختاریافته و زنجیرههای طولانی استدلال، بیشتر از چتهای معمولی آسیب میبینند. مطالعه تفاوتهای عملی Q4، Q8 و FP16 پیش از تصمیمگیری نهایی ارزشمند است، زیرا در یک VPS که فقط از CPU استفاده میکند، انتخاب کوانتیزاسیون معمولاً تعیین میکند که آیا مدل اصلاً اجرا میشود یا خیر.
در یک VPS بدون GPU چه اتفاقی میافتد
بیشتر پلنهای VPS فاقد GPU هستند و Ollama بدون هشدار، مدل را روی CPU اجرا میکند. اینکه آیا نتیجه قابل استفاده است یا خیر، به حجم کاری و میزان صبر شما بستگی دارد.
طراحی mixture-of-experts به سرعت کمک میکند. برای هر توکن، تنها حدود 3 میلیارد از 30 میلیارد پارامتر استفاده میشود، بنابراین محاسبات ریاضی برای هر توکن بسیار کمتر از چیزی است که یک مدل متراکم 30B نیاز دارد. چیزی که کاهش نمییابد، حافظه است. تمام expertها باید در حافظه مقیم باشند، زیرا router ممکن است هر کدام از آنها را برای توکن بعدی انتخاب کند. بنابراین یک سرور فقط-CPU همچنان به 19 گیگابایت یا بیشتر برای تگ Q4 نیاز دارد و توان عملیاتی آن بیشتر از سرعت کلاک، تحت تأثیر پهنای باند حافظه است.
این موضوع یک نتیجه عملی دارد: دو پلن با تعداد هسته و رم یکسان میتوانند سرعتهای متفاوتی داشته باشند، زیرا زیرسیستمهای حافظه آنها با هم فرق دارد. یک پلن اشتراکی متغیر دومی را نیز اضافه میکند، چرا که CPU steal time از یک همسایه پرمصرف به صورت عددی از توکن-در-ثانیه ظاهر میشود که ساعت به ساعت تغییر میکند. به همین دلیل است که اعداد منتشرشده توسط دیگران، پیشبینیکننده عملکرد شما نیستند و به همین دلیل بخش بعدی به جای جدول نتایج، یک دستورالعمل برای اندازهگیری است.
اندازهگیری تعداد توکن در ثانیه سیستم خود
اندپوینت generate در Ollama، فیلدهای زمانی را در شیء JSON نهایی خود بازمیگرداند. تعداد توکنهای تولیدشده را بر مدتزمان تولید تقسیم کنید تا عدد نهایی، بر اساس پلن و پرامپت خودتان، به دست آید.
sudo apt install -y jq
curl -s http://localhost:11434/api/generate -d '{
"model": "glm-4.7-flash:q4_K_M",
"prompt": "Write a 200 word explanation of how TCP congestion control works.",
"stream": false,
"options": {"num_ctx": 8192}
}' | jq '{
tokens: .eval_count,
tokens_per_second: (.eval_count / .eval_duration * 1e9),
prompt_seconds: (.prompt_eval_duration / 1e9),
load_seconds: (.load_duration / 1e9)
}'eval_count نشاندهنده تعداد توکنهای تولیدشده و eval_duration مدتزمان صرفشده برای تولید آنها به نانوثانیه است، بنابراین eval_count / eval_duration * 1e9 همان تعداد توکن در ثانیه است. prompt_eval_duration زمان خواندن پرامپت شما را پوشش میدهد؛ این همان زمانی است که کاربر به عنوان انتظار پیش از ظاهر شدن اولین توکن تجربه میکند. load_duration زمان صرفشده برای بارگذاری مدل از دیسک است، بنابراین در اولین فراخوانی پس از راهاندازی مجدد (restart) مقدار بزرگی دارد و در دفعات بعدی نزدیک به صفر است.
این عملیات را سه بار اجرا کنید و نتایج دوم و سوم را نگه دارید، زیرا نتیجه اول شامل زمان بارگذاری است. سپس آن را با یک پرامپت بسیار طولانیتر دوباره اجرا کنید، چرا که پردازش پرامپت با طول ورودی مقیاسپذیر است، در حالی که سرعت تولید توکن چنین نیست. اعداد بهدستآمده را کنار نام پلن و نوع کوانتیزاسیون (quantisation) خود یادداشت کنید. این رکورد از هر بنچمارکی که میخوانید ارزشمندتر است، زیرا روی سختافزاری اندازهگیری شده که شما بابت آن هزینه پرداخت میکنید.
چگونه طول کانتکست حافظه را چند برابر میکند
Ollama بهطور پیشفرض از کانتکست 4096 توکنی استفاده میکند. مدل ممکن است ظرفیت بسیار بیشتری مانند 198K توکن را برای glm-4.7-flash تبلیغ کند، اما شما بهصورت پیشفرض به آن دسترسی ندارید و فعالسازی آن بدون هزینه نیست.
حافظه کش KV برای هر توکن در هر لایه، یک بردار کلید (key vector) و یک بردار مقدار (value vector) نگه میدارد. حجم این حافظه با تعداد توکنهای مجاز، بهصورت خطی رشد میکند. افزایش از 4096 به 32768 توکن، کانتکست را هشت برابر میکند، بنابراین حجم کش KV نیز تقریباً هشت برابر میشود. در سیستمی که دقیقاً برای جایگیری وزنهای مدل تنظیم شده است، همین تخصیص اضافی دقیقاً همان چیزی است که سیستم را به استفاده از swap وامیدارد؛ به همین دلیل است که ماشینی که به درخواستهای کوتاه بهخوبی پاسخ میداد، هنگام چسباندن یک سند طولانی توسط کاربر، ناگهان کند میشود.
شما میتوانید این مقدار را برای هر درخواست با استفاده از num_ctx در شیء options، همانطور که در دستور curl بالا نشان داده شد، تنظیم کنید یا مقدار پیشفرض سرور را تغییر دهید.
sudo install -d -m 755 /etc/systemd/system/ollama.service.d
printf '[Service]\nEnvironment="OLLAMA_CONTEXT_LENGTH=16384"\n' \
| sudo tee /etc/systemd/system/ollama.service.d/override.conf
sudo systemctl daemon-reload
sudo systemctl restart ollama
systemctl show ollama --property=Environmentدستور آخر باید مقدار OLLAMA_CONTEXT_LENGTH شما را چاپ کند. اگر خروجی Environment= خالی باشد، فایل override در دایرکتوری اشتباه قرار دارد یا مرحله reload انجام نشده است. پس از بارگذاری مجدد مدل، ollama ps باید مقدار SIZE را بهطور محسوسی بزرگتر از حالت 4096 نشان دهد. مقدار را بهصورت مرحلهای افزایش دهید و هر بار آن عدد را بررسی کنید. تنظیم طول کانتکست Ollama با num_ctx توضیح میدهد که این پارامتر چگونه با keep-alive و درخواستهای موازی تعامل دارد؛ هر دوی این موارد هزینه مشابه را چند برابر میکنند. اگر قرار است بیش از یک کلاینت از سرور استفاده کنند، محدودیتهای همزمانی (concurrency) را همزمان با کانتکست تعیین کنید، زیرا هر اسلات موازی کش KV مخصوص به خود را دارد و تنظیمات صف تعیین میکند که آیا درخواست دوم در انتظار بماند یا مستقیماً رد شود.
زمانی که API ارزانتر از سرور شخصی است
میزبانی شخصی (Self-hosting) لزوماً همیشه ارزانتر نیست و برای این خانواده از مدلها، قیمتهای رسمی منتشرشده این موضوع را بهوضوح نشان میدهند.
The data behind this chart
[
{
"label": "GLM-5.2 input",
"usd_per_million_tokens": 1.4
},
{
"label": "GLM-5.2 output",
"usd_per_million_tokens": 4.4
},
{
"label": "GLM-4.7-Flash input",
"usd_per_million_tokens": 0
},
{
"label": "GLM-4.7-Flash output",
"usd_per_million_tokens": 0
}
]تا تاریخ 18 August 2026، شرکت Z.ai مدل GLM-5.2 را با قیمت $1.4 به ازای هر میلیون توکن ورودی و $4.4 به ازای هر میلیون توکن خروجی ارائه میدهد. همچنین مدل GLM-4.7-Flash که این راهنما برای اجرای محلی آن نوشته شده است، در هر دو جهت با قیمت $0 عرضه میشود. اینها قیمتهای رسمی هستند و تغییر میکنند؛ بنابراین پیش از برنامهریزی بودجه بر اساس هر یک از آنها، صفحه مربوطه را بررسی کنید.
بنابراین، استدلال اقتصادی برای میزبانی شخصی glm-4.7-flash در حال حاضر ضعیف است. یک سرور مجازی (VPS) با رم کافی، هر ماه هزینه واقعی دارد، در حالی که ارائهدهنده، همان مدل را با هزینهای بسیار ناچیز (یا رایگان) در اختیار شما میگذارد. آنچه با اجرای شخصی مدل به دست میآورید متفاوت است: پرامپتهای شما روی دستگاهی که کنترل آن در دست خودتان است باقی میمانند و نسخه مدل هرگز تغییر نمیکند مگر اینکه خودتان آن را تغییر دهید. اینها دلایل خوبی برای میزبانی شخصی هستند، اما هزینه، برای این مدل و با این قیمتها، یکی از آنها نیست.
محاسبات زمانی تغییر میکند که مدل مورد نظر شما رایگان نباشد، یا دادههای شما به دلایل قانونی اجازه خروج از شبکه شما را نداشته باشند. نقطه سربهسر بین یک VPS دارای GPU و توکنهای API این محاسبات را با در نظر گرفتن تمام متغیرها بررسی میکند. اگر هنوز در حال انتخاب سختافزار هستید، هزینه واقعی یک VPS در ماه نیمه دیگر این معادله است.
نگه داشتن endpoint روی localhost
این مرحلهای است که افراد از آن صرفنظر میکنند و در عین حال مهمترین بخش کار است.
سرویس Ollama بهصورت پیشفرض روی 127.0.0.1 و پورت 11434 گوش میدهد، بنابراین فقط از داخل خود سرور قابل دسترسی است. بهجای فرض کردن، این موضوع را روی سیستم خود تأیید کنید.
ss -ltnp | grep 11434شما باید 127.0.0.1:11434 را ببینید. مشاهده 0.0.0.0:11434 یا *:11434 به این معنی است که API روی تمام رابطهای شبکه، از جمله رابط عمومی، در حال گوش دادن است.
این موضوع اهمیت زیادی دارد زیرا API سرویس Ollama هیچگونه احراز هویتی ندارد. هیچ رمز عبور، توکن یا لیست مجاز (allowlist) وجود ندارد. هر کسی که بتواند به پورت 11434 دسترسی پیدا کند، میتواند مدلهای شما را لیست کند، روی سختافزاری که شما هزینه آن را میپردازید عملیات تولید (generation) انجام دهد، مدلهای جدید را تا پر شدن دیسک شما دانلود کند و مدلهای موجود را حذف نماید. پورت 11434 ثابت و شناختهشده است، بنابراین اسکنرها بهسرعت پورتهای باز را پیدا میکنند.
مقدار OLLAMA_HOST=0.0.0.0 را تنظیم نکنید. بسیاری از آموزشها این کار را بهعنوان راهحل زمانی که کلاینت روی لپتاپ شما متصل نمیشود پیشنهاد میدهند، اما این راهحل اشتباه است. بهجای آن از port forwarding استفاده کنید.
ssh -N -L 11434:127.0.0.1:11434 you@your-serverاین دستور پورت 11434 روی لپتاپ شما را از طریق SSH به آدرس loopback سرور متصل میکند، بنابراین هر کلاینتی که برای http://localhost:11434 پیکربندی شده باشد بدون تغییر کار میکند و هیچ چیز جدیدی در معرض دید قرار نمیگیرد. برای چندین نفر یا چندین دستگاه، سرور را روی یک شبکه تونل خصوصی قرار دهید و Ollama را به آدرس تونل متصل کنید، نه به 0.0.0.0.
از جایی غیر از سرور بررسی کنید. از روی لپتاپ خود، در حالی که تونل SSH بسته است:
curl -m 5 http://your-server-ip:11434/api/tagscurl: (28) Connection timed out یا curl: (7) Failed to connect نتیجه صحیح است. مشاهده یک لیست JSON از مدلهای شما به این معنی است که پورت برای اینترنت باز است و باید فوراً اصلاح شود. فایروال شبکه ارائهدهنده شما یک کنترل جداگانه از فایروال فعال روی خود سرور است، بنابراین هر دو را بررسی کنید. پرسش کلیتر درباره امنیت میزبانی VPS سایر موارد پایه برای ماشینی که بهصورت مداوم روشن میگذارید را پوشش میدهد.
اگر glm-4.7-flash همچنان بیش از حد بزرگ است
وقتی تگ Q4 در طرح شما جا نمیشود، راهحل استفاده از یک مدل کوچکتر است، نه کاهش context. کوتاه کردن context برای جای دادن مدل، منجر به وضعیتی میشود که مدل بارگذاری شده اما در اولین prompt طولانی با شکست مواجه میشود. مقاله Qwen 3 در ابعاد 8B و 27B روی VPS همان مسیر نصب را برای اندازههایی که مناسب سرورهای کوچکتر هستند دنبال میکند و راهنمای کلی میزبانی شخصی LLM با Ollama روی VPS بخشهایی را پوشش میدهد که فارغ از انتخاب مدل، ثابت باقی میمانند. به هر مدلی که رسیدید، تگ آن را ثابت (pin) کنید، عملکرد را روی طرح خود بسنجید و endpoint را روی loopback قرار دهید.
FAQ
آیا GLM 5.2 میتواند بهصورت محلی روی یک VPS اجرا شود؟
خیر. تا تاریخ 18 August 2026، مدل GLM 5.2 در کتابخانه Ollama فقط بهعنوان glm-5.2:cloud موجود است؛ تگی که روی زیرساخت خود Ollama اجرا میشود و پیش از کارکرد، به ollama signin نیاز دارد. این مدل دارای 756 میلیارد پارامتر است، بنابراین حتی با در نظر گرفتن 4 بیت برای هر پارامتر، وزنهای مدل بهتنهایی صدها گیگابایت حجم دارند که بسیار فراتر از ظرفیت هر پلن استاندارد VPS است. مدل GLM با وزنهای قابل دانلود که روی یک سرور اجارهای جای میگیرد، glm-4.7-flash است.
مدل glm-4.7-flash به چه مقدار RAM نیاز دارد؟
حجم دانلود تگ را بهعنوان حداقل در نظر بگیرید و فضای لازم برای KV cache و سیستمعامل را به آن اضافه کنید. Ollama تگ Q4 را 19 گیگابایت، تگ Q8 را 32 گیگابایت و تگ bfloat16 را 60 گیگابایت لیست کرده است. هیچ ضریب ثابتی برای همه مناسب نیست، زیرا KV cache با طول متنی (context length) که تنظیم میکنید، افزایش مییابد. مدل را بارگذاری کنید، دستور ollama ps را اجرا کنید و ستون SIZE را بخوانید تا عدد دقیق برای سرور خودتان را به دست آورید.
چگونه میتوانم تعداد توکن در ثانیه را روی VPS خود اندازهگیری کنم؟
یک درخواست به http://localhost:11434/api/generate با "stream": false ارسال کنید، سپس eval_count و eval_duration را از پاسخ بخوانید. تعداد توکن در ثانیه برابر است با eval_count / eval_duration * 1e9، زیرا eval_duration بر حسب نانوثانیه گزارش میشود. اجرای اول را نادیده بگیرید، زیرا load_duration در آن مرحله شامل خواندن وزنها از دیسک نیز هست. این کار را با یک پرامپت طولانی هم تکرار کنید، زیرا prompt_eval_duration با افزایش طول ورودی رشد میکند، در حالی که سرعت تولید ثابت میماند.
چرا نباید OLLAMA_HOST را روی 0.0.0.0 تنظیم کنم؟
زیرا API سرویس Ollama فاقد احراز هویت است و اتصال آن به 0.0.0.0، یک endpoint بدون احراز هویت را در معرض اینترنت عمومی قرار میدهد. هر کسی که به پورت 11434 دسترسی پیدا کند، میتواند روی سختافزار شما مدل تولید کند و مدلهای نصبشده را تغییر دهد. اتصال پیشفرض 127.0.0.1 را حفظ کنید، آن را با ss -ltnp | grep 11434 بررسی کنید و از طریق یک SSH tunnel مانند ssh -N -L 11434:127.0.0.1:11434 you@your-server از لپتاپ خود به API دسترسی پیدا کنید.