Nimble یک مدل تصمیمگیری ۹ میلیارد پارامتری از Bespoke Labs است که برای تصمیمهای سریع، ساختاریافته و قابلامتیازدهی طراحی شده است. این مدل از Qwen3.5-9B fine-tune شده و برخلاف مدلهای چت عمومی، قرار نیست پاسخهای طولانی، توضیح مرحلهبهمرحله یا متن آزاد تولید کند. ورودی آن یک متن یا داده ساختاریافته بههمراه مجموعهای از سؤالها و گزینههای مجاز است و خروجی آن انتخاب نهایی بههمراه احتمال هر گزینه است.
منبع اصلی این راهنما: صفحه رسمی Nimble در کتابخانه Ollama. برای مشخصات نسخهها، Tagها و تغییرات جدید، همین صفحه رسمی مرجع اصلی در نظر گرفته شود.
Nimble دقیقاً برای چه کاری ساخته شده است؟
Nimble برای موقعیتهایی ساخته شده که سیستم باید بهجای «تولید متن»، یک تصمیم مشخص بگیرد. چند نمونه:
- مسیریابی تیکت پشتیبانی به Billing، Technical یا Sales
- تشخیص اینکه یک شرط برقرار است یا نه
- بررسی Policy Compliance پیش از اجرای یک Tool Call توسط Agent
- رتبهبندی شدت یا فوریت یک رخداد روی یک Rubric
- انتخاب مدل مناسب برای Route کردن یک Prompt
- طبقهبندی Lead، درخواست مشتری، پیام، رخداد امنیتی یا رکورد CRM
- ساخت Guardrail سریع برای Agentها
این ویژگی Nimble را برای معماریهای Agentic AI، CRM، Workflow Automation و Tool-Using Agents بسیار مناسب میکند.
تفاوت Nimble با یک LLM چت معمولی
مدلهایی مثل مدلهای عمومی Qwen معمولاً متن تولید میکنند. Nimble در workflow اصلی خود این کار را انجام نمیدهد. بهجای تولید یک reasoning متنی و سپس نتیجه، گزینههای مجاز را مستقیم score میکند و احتمال هر پاسخ را برمیگرداند.
نتیجه این است که خروجی:
- سریعتر است؛
- قالب مشخص و قابلپردازش دارد؛
- برای Backend و Automation سادهتر مصرف میشود؛
- نیاز به Parse کردن پاسخ آزاد و غیرقابلپیشبینی را کاهش میدهد.
طبق صفحه رسمی Ollama، در یک آزمایش روی MacBook Pro مجهز به M5 Max پاسخ Nimble زیر 100 میلیثانیه گزارش شده است. این عدد وابسته به سختافزار و اندازه ورودی است و نباید بهعنوان سرعت تضمینشده برای همه سیستمها در نظر گرفته شود.
مشخصات مهم Nimble
- سازنده: Bespoke Labs
- مدل پایه: Qwen3.5-9B
- اندازه: حدود 9B پارامتر
- نوع ورودی: Text
- نوع کاربرد: Typed Decision / Classification
- License: Apache 2.0
- نسخه Ollama موردنیاز: 0.35 یا جدیدتر
- محدودیت عملی Context در workflow تصمیمگیری: حدود 8,192 توکن
- تعداد سؤال در /v1/systemone: از 1 تا 64 سؤال در یک درخواست
- سه نوع سؤال اصلی: choice، noul و score
چرا در صفحه Ollama عدد 256K Context دیده میشود؟
ممکن است در صفحه Tags مربوط به مدل، عبارت 256K context window را مشاهده کنید. این مقدار میتواند از Metadata خانواده مدل پایه نمایش داده شود؛ اما مستندات checkpoint فعلی Nimble و workflow تصمیمگیری آن، محدودیت 8,192 توکن را مشخص میکنند.
بنابراین برای طراحی Production بهتر است Prompt و Schema خود را بر اساس حدود 8K Token طراحی کنید و Context را تا جای ممکن کوتاه، مرتبط و دقیق نگه دارید.
سه نوع سؤال در Nimble
1. Choice
برای انتخاب یک گزینه از میان چند گزینه استفاده میشود.
مثال:
این تیکت باید به کدام تیم ارسال شود؟
گزینهها میتوانند Billing، Technical و Sales باشند.
2. Noul
noul نامی است که در API فعلی Decision Models در Ollama برای سؤالهای Boolean از نوع True/False استفاده میشود.
مثال:
آیا مشتری صراحتاً درخواست Refund کرده است؟
3. Score
برای قرار دادن یک ورودی روی یک Rubric مرتبشده استفاده میشود.
مثال:
میزان فوریت این تیکت چقدر است؟
و سطوح میتوانند Routine، Soon و Urgent باشند.
در API فعلی /v1/systemone، برای choice و score معمولاً بین 2 تا 26 گزینه تعریف میشود. فرمت مستقیم مدل میتواند Schemaهای بزرگتری داشته باشد، اما هنگام استفاده از System One باید محدودیتهای API فعلی Ollama را ملاک قرار دهید.
پیشنیازهای نصب
برای سادهترین روش اجرای Nimble ابتدا باید Ollama را نصب کنید.
Windows
- Windows 10 یا جدیدتر
- نصب Ollama از صفحه رسمی Download
macOS
صفحه Download رسمی فعلی Ollama، macOS 14 Sonoma یا جدیدتر را ذکر میکند.
Linux
Ollama را میتوان با روش رسمی Linux یا Manual Installation نصب کرد.
سختافزار
Nimble یک مدل 9B است. اجرای آن روی CPU ممکن است امکانپذیر باشد، اما برای تجربه بهتر استفاده از GPU یا Apple Silicon توصیه میشود.
میزان دقیق RAM و VRAM به Quantization، سیستمعامل و Context Length بستگی دارد.
نصب Ollama روی Windows
- از صفحه رسمی دانلود Ollama برای Windows وارد شوید.
- میتوانید Installer را از همان صفحه دریافت کنید یا دستور رسمی زیر را در PowerShell اجرا کنید:
irm https://ollama.com/install.ps1 | iex- سپس نسخه نصبشده را بررسی کنید:
ollama --versionاگر نسخه Ollama پایینتر از 0.35 است، ابتدا آن را Update کنید.
نصب Ollama روی macOS
Ollama را از صفحه رسمی دانلود macOS دریافت کنید. روش رسمی Terminal نیز این است:
curl -fsSL https://ollama.com/install.sh | shبعد از نصب:
ollama --versionنصب Ollama روی Linux
راهنمای رسمی Linux در صفحه نصب Ollama برای Linux قرار دارد. نصب سریع رسمی:
curl -fsSL https://ollama.com/install.sh | shسپس:
ollama --versionدانلود و اجرای Nimble
صفحه رسمی مدل: Nimble در Ollama
برای دانلود نسخه پیشفرض:
ollama pull nimbleبرای اجرا:
ollama run nimbleبرای مشاهده مدلهای نصبشده:
ollama listتمام نسخههای موجود را میتوانید در صفحه Tags مدل Nimble مشاهده کنید.
نسخهها و حجم دانلود Nimble
در زمان انتشار این مقاله، نسخههای اصلی موجود در Ollama عبارتاند از:
| Tag | Quantization | اندازه تقریبی |
|---|---|---|
| nimble / nimble:latest | Q8_0 | 9.5 GB |
| nimble:9b | Q8_0 | 9.5 GB |
| nimble:9b-q4_K_M | Q4_K_M | 5.6 GB |
| nimble:9b-q8_0 | Q8_0 | 9.5 GB |
| nimble:9b-bf16 | BF16 | 18 GB |
نسخه Q4
اگر میخواهید حجم کمتری دانلود کنید و منابع سیستم محدودتر است:
ollama pull nimble:9b-q4_K_Mاین نسخه در زمان انتشار مقاله حدود 5.6 GB حجم دارد.
نسخه Q8
برای نسخه Q8:
ollama pull nimble:9b-q8_0حجم آن حدود 9.5 GB است.
نسخه BF16
ollama pull nimble:9b-bf16این نسخه حدود 18 GB حجم دارد و به حافظه بیشتری نیاز خواهد داشت.
برای بسیاری از سیستمهای شخصی، Q4 نقطه شروع سبکتری است. اگر حافظه کافی دارید میتوانید Q8 یا BF16 را نیز آزمایش کنید.
آیا ollama run nimble برای استفاده واقعی کافی است؟
برای Load کردن یا تست اولیه مدل مفید است؛ اما قابلیت اصلی Nimble یعنی Typed Decision از endpoint مخصوص Decision Models در Ollama استفاده میکند:
localhost:11434/v1/systemoneطبق مستندات فعلی Ollama، Decision Modelها هنوز دقیقاً مانند مدلهای Chat عادی در تمام قابلیتهای Python و JavaScript Library خود Ollama ارائه نمیشوند. برای workflow اصلی بهتر است از REST API یا TypeSafe SDK استفاده شود.
ساختار /v1/systemone
Request اصلی چند بخش مهم دارد:
model
نام مدل:
"model": "nimble"state
دادهای که قرار است درباره آن تصمیم گرفته شود. state میتواند String، Object یا Array باشد.
questions
یک یا چند سؤال ساختاریافته که Nimble باید درباره State پاسخ دهد.
keep_alive
یک مقدار اختیاری برای مشخص کردن مدت زمانی که مدل در حافظه Load باقی بماند.
اولین مثال واقعی با cURL
فرض کنید یک سیستم CRM باید تشخیص دهد پیام مشتری به کدام واحد برود، آیا Refund مطرح شده و Priority چقدر است:
curl -s localhost:11434/v1/systemone \
-H "Content-Type: application/json" \
-d '{
"model": "nimble",
"state": {
"message": "My card was charged twice and I need the extra payment reversed."
},
"questions": {
"department": {
"type": "choice",
"instructions": "Choose the best team for this request.",
"criteria": {
"billing": "Payments, invoices and refunds",
"technical": "Product bugs and integrations",
"sales": "Plans and purchases"
}
},
"needs_refund": {
"type": "noul",
"instructions": "Does the user request a refund or reversal?"
},
"priority": {
"type": "score",
"instructions": "Rate how quickly this should be reviewed.",
"criteria": ["Routine", "Soon", "Urgent"]
}
}
}'Nimble برای سؤالهای تعریفشده پاسخ ساختاریافته تولید میکند و احتمال گزینهها را نیز در اختیار برنامه قرار میدهد.
Probability چه کاربردی دارد؟
یکی از تفاوتهای مهم Nimble با Classificationهای ساده این است که فقط Label برنمیگرداند؛ بلکه توزیع Probability میان جوابهای مجاز را نیز ارائه میکند.
این ویژگی اجازه میدهد مثلاً بنویسید:
اگر احتمال Billing بیشتر از Threshold مشخص بود → Route مستقیم
اگر نتیجه نامطمئن بود → Human Reviewاما Threshold نباید بهصورت تصادفی انتخاب شود؛ باید با Dataset واقعی پروژه شما Calibration شود.
Confidence دقیقاً چیست؟
confidence میزان تمرکز Probability Distribution روی یک جواب را نمایش میدهد.
نکته مهم:
Confidence برابر با احتمال درست بودن پاسخ در دنیای واقعی نیست.
مثلاً Probability برابر 0.90 الزاماً به معنی Accuracy نود درصدی روی داده Production شما نیست.
برای یک سیستم حساس باید مدل را روی Dataset مرتبط با حوزه خودتان Evaluate کنید.
اصول طراحی Schema خوب
برای گرفتن نتیجه بهتر از Nimble:
- گزینهها را واضح تعریف کنید.
- گزینهها را تا حد ممکن mutually exclusive نگه دارید.
- اگر ممکن است هیچ جواب مناسبی وجود نداشته باشد، گزینهای مانند other یا no_match اضافه کنید.
- Context را کوتاه و مرتبط نگه دارید.
- Criteria را دقیق بنویسید.
- Policyها را بهصورت واضح در State یا Instructions وارد کنید.
- Thresholdها را روی Dataset واقعی Calibration کنید.
- قبل از Production، False Positive و False Negative را بررسی کنید.
سؤالهای Nimble مستقل هستند
هر سؤال مستقل Score میشود. بنابراین اگر دو جواب باید از نظر منطقی با هم سازگار باشند، این سازگاری را باید در Backend خودتان Validate کنید.
برای مثال اگر یک سؤال میگوید:
refund_allowed = falseو سؤال دیگری تصمیم میگیرد:
action = issue_refundBackend شما باید چنین تضادی را کنترل کند.
Nimble در معماری Agentic AI
یکی از جالبترین کاربردهای Nimble قرار گرفتن بین Agent و Tool است:
User Request
↓
LLM Agent
↓
Proposed Tool Call
↓
Nimble Decision Layer
↓
Policy / Risk / Approval Check
↓
Execute Tool OR Block OR Human Reviewاین معماری باعث میشود مدل Generative مستقیماً اجازه اجرای هر Tool Call را نداشته باشد.
مثال Tool Moderation
فرض کنید Agent قصد اجرای یک Shell Command را دارد.
میتوانید Tool Call را داخل State قرار دهید و سؤالهایی مانند موارد زیر تعریف کنید:
- آیا این دستور احتمال تخریب اطلاعات دارد؟
- آیا نیاز به Human Approval دارد؟
- آیا با Security Policy سازمان سازگار است؟
- Risk Level چقدر است؟
Nimble سپس میتواند بهعنوان یک Decision Layer سریع قبل از Execution عمل کند.
کاربرد Nimble در CRM
Nimble برای سیستمهای CRM کاربردهای زیادی دارد:
Ticket Routing
تشخیص اینکه تیکت باید به کدام تیم ارسال شود.
Lead Classification
طبقهبندی Lead بر اساس مشخصات و Context.
Refund Eligibility
بررسی اینکه درخواست مشتری شرایط Refund را دارد یا نه.
Priority Scoring
مشخص کردن فوریت Ticket یا Opportunity.
Escalation Detection
تشخیص اینکه یک مورد باید به Human Agent یا Manager ارجاع شود.
Policy Enforcement
بررسی تصمیم Agent نسبت به قوانین سازمان.
Human Handoff
تشخیص اینکه آیا ادامه Conversation باید به انسان منتقل شود.
Model Routing
انتخاب اینکه کدام LLM یا Agent برای درخواست بعدی مناسبتر است.
آیا Nimble جایگزین LLM اصلی پروژه است؟
معمولاً خیر.
یک معماری مناسب میتواند به شکل زیر باشد:
Generative LLM → تولید محتوا و Reasoning
Nimble → تصمیمهای محدود و Typed
Rules Engine → کنترل قوانین قطعی
Human → موارد حساس یا نامطمئنبنابراین Nimble بیشتر یک Decision Layer است تا یک Chatbot.
Nimble برای چه کارهایی مناسب نیست؟
این مدل برای موارد زیر طراحی نشده است:
- تولید مقاله
- پاسخ طولانی و آزاد
- Creative Writing
- Summarization آزاد
- Chain-of-Thought
- استخراج Quote آزاد از Context
- ساخت JSON دلخواه و پیچیده
- Question Answering باز
Nimble باید از میان جوابهایی که شما تعریف کردهاید تصمیم بگیرد.
چرا Contrastive Training مهم است؟
Bespoke Labs برای آموزش Nimble از دادههای Contrastive استفاده کرده است. در چنین Datasetهایی دو نمونه بسیار شبیهاند، اما یک Fact کلیدی تغییر میکند و همان تغییر باید تصمیم صحیح را عوض کند.
هدف این روش آن است که مدل یاد بگیرد دقیقاً کدام Evidence باید روی Decision اثر بگذارد.
ارزیابی و Benchmark
Ollama و Bespoke Labs نتایجی از Benchmarkهای عمومی برای Nimble منتشر کردهاند. در ارزیابی Ollama روی 13 Dataset عمومی و 3,880 Decision دارای Human Label، Nimble عملکرد رقابتی در Choice، Boolean و Score Tasks نشان داده است.
Benchmark باید بهعنوان نشانهای از قابلیت مدل دیده شود، نه تضمین عملکرد روی Dataset سازمان شما.
حریم خصوصی و اجرای Local
اگر Nimble را با Ollama بهصورت Local اجرا کنید، Inference روی سیستم خودتان انجام میشود.
برای پروژههایی که موارد زیر را دارند، این موضوع اهمیت زیادی دارد:
- دادههای CRM
- تیکت مشتریان
- اطلاعات داخلی سازمان
- Tool Callهای Agent
- Policyهای محرمانه
با این حال اگر سایر بخشهای معماری از APIهای خارجی استفاده کنند، Privacy کل سیستم به آن سرویسها نیز وابسته خواهد بود.
مشاهده مدلهای نصبشده
ollama listحذف Nimble
ollama rm nimbleاگر یک Tag مشخص نصب کردهاید میتوانید همان Tag را حذف کنید.
Update کردن Nimble
برای دریافت نسخه فعلی Tag پیشفرض:
ollama pull nimbleتوصیه برای Production
در Development استفاده از nimble یا latest راحت است، اما در Production بهتر است نسخه مشخصی را Pin کنید؛ مثلاً:
nimble:9b-q4_K_Mیا:
nimble:9b-q8_0سپس هر Update را پیش از Rollout روی Test Dataset خودتان بررسی کنید.
چکلیست سریع شروع کار
1. Install Ollama
2. Check Ollama >= 0.35
3. Choose Nimble Quantization
4. ollama pull nimble
5. Test /v1/systemone
6. Define Choice / Noul / Score questions
7. Evaluate on your own dataset
8. Calibrate thresholds
9. Add human review for uncertain/high-risk cases
10. Pin a model tag for productionلینکهای رسمی و دانلود
برای نصب و بررسی آخرین نسخهها، از لینکهای رسمی زیر استفاده کنید:
- صفحه رسمی Nimble در Ollama — معرفی مدل، روش اجرا و مستندات
/v1/systemone - تمام نسخهها و Tagهای Nimble — مشاهده Q4، Q8، BF16 و حجم هر نسخه
- دانلود Ollama برای Windows
- دانلود Ollama برای macOS
- نصب Ollama روی Linux
- مخزن رسمی Nimble در GitHub
- مدل Bespoke-Nimble-9B در Hugging Face
- مقاله رسمی Ollama درباره Decision Models
جمعبندی
Nimble یک LLM عمومی برای Chat نیست؛ یک Decision Model سریع و Typed است که برای تصمیمهای محدود، قابلکنترل و قابلپردازش طراحی شده است.
اگر پروژه شما به مواردی مانند Routing، Boolean Check، Rubric Scoring، Policy Enforcement، Tool Moderation، Human Handoff یا Model Routing نیاز دارد، Nimble میتواند یک لایه تصمیمگیری بسیار مفید در کنار LLM یا Agent اصلی باشد.
برای شروع کافی است Ollama را نصب کنید، نسخه 0.35 یا جدیدتر داشته باشید، دستور ollama pull nimble را اجرا کنید و workflow اصلی خود را روی /v1/systemone بسازید.