Qwen چیست؟ راهنمای انتخاب مدل و اجرای محلی امن در ویندوز
در این راهنمای عملی با خانواده مدلهای Qwen آشنا میشوید، تفاوت مدلهای Dense و MoE و نسخههای Thinking را میفهمید، مدل مناسب سختافزار را انتخاب میکنید و آن را با Ollama و API محلی بهصورت امن اجرا میکنید.
Qwen نام خانوادهای از مدلهای زبانی و چندوجهی است که تیم Qwen در Alibaba Cloud توسعه میدهد. در این خانواده مدلهایی برای گفتوگو، استدلال، کدنویسی، پردازش تصویر، Embedding و کاربردهای Agent وجود دارد. بخشی از مدلها با وزنهای قابل دریافت منتشر میشوند و میتوان آنها را با ابزارهایی مانند Ollama، llama.cpp، Transformers، vLLM یا SGLang روی زیرساخت خود اجرا کرد.
اما سؤال مهم «کدام Qwen جدیدتر است؟» نیست؛ سؤال درست این است که کدام مدل با سختافزار، نوع داده، زبان، سرعت و سطح ریسک پروژه شما تناسب دارد. نام بزرگتر همیشه انتخاب بهتر نیست و نتیجه Benchmark عمومی لزوماً کیفیت کار فارسی یا کد اختصاصی شما را پیشبینی نمیکند. این مقاله یک مسیر عملی برای خواندن نام مدل، انتخاب نسخه، اجرای محلی در ویندوز و ارزیابی امن ارائه میدهد.
Qwen چیست و خانواده مدل چه معنایی دارد؟
Qwen یک مدل واحد نیست. هر نسل میتواند چند اندازه، معماری و نوع آموزش داشته باشد. مدل Base برای ادامه آموزش و پژوهش مناسبتر است؛ مدل Instruct یا Chat برای پیروی از دستور و گفتگو آماده شده است. نسخه Vision-Language ورودی تصویری را میپذیرد و مدل Coder روی وظایف برنامهنویسی تمرکز بیشتری دارد.
مخزن رسمی Qwen3 خانوادهای از مدلهای Dense و Mixture-of-Experts یا MoE را معرفی میکند. در مدل Dense همه پارامترهای اصلی برای هر Token درگیرند، اما در MoE فقط بخشی از Expertها فعال میشوند. تعداد کل پارامتر و تعداد پارامتر فعال دو عدد متفاوتاند و نباید تنها از روی نام مدل درباره RAM، سرعت یا کیفیت نتیجهگیری کرد.
| نوع مدل | کاربرد معمول | نکته انتخاب |
|---|---|---|
| Base | پژوهش، Fine-tuning و ادامه آموزش | برای چت روزمره بدون قالب مناسب انتخاب اول نیست. |
| Instruct یا Chat | پرسشوپاسخ، تولید متن و دستیار | نسخه و Chat Template باید با Runtime سازگار باشد. |
| Coder | تولید، توضیح و بازبینی کد | با Repository و زبان واقعی خودتان ارزیابی شود. |
| Vision-Language | متن همراه تصویر و سند بصری | Runtime باید ورودی تصویر همان مدل را پشتیبانی کند. |
| Embedding | جستوجوی معنایی و RAG | خروجی Chat نیست و معیارهای بازیابی جدا دارد. |
| MoE | ظرفیت بالا با پارامتر فعال کمتر | فایل وزن و حافظه همچنان میتواند بسیار بزرگ باشد. |
نام مدل Qwen را چگونه بخوانیم؟
نامی مانند Qwen3-8B معمولاً نسل و اندازه تقریبی پارامتر را نشان میدهد. پسوندهایی مانند Instruct، Thinking، Coder، VL، GGUF، AWQ یا GPTQ درباره نوع آموزش، قابلیت یا قالب و Quantization اطلاعات میدهند. منبع حقیقت باید Model Card همان فایل باشد؛ شباهت نام دو فایل تضمین نمیکند Context، License یا رفتار یکسانی دارند.
Thinking و Non-Thinking
در Qwen3 حالتهای Thinking و Non-Thinking برای ایجاد تعادل میان استدلال عمیق و پاسخ سریع معرفی شدند. Thinking میتواند برای مسئله چندمرحلهای مفید باشد، اما تأخیر و مصرف Token را افزایش میدهد. برای استخراج ساده، طبقهبندی یا پاسخ کوتاه، حالت سریع ممکن است مناسبتر باشد. همیشه روش فعال یا غیرفعالکردن این حالت را در مستندات همان نسخه و Runtime بررسی کنید.
Dense و MoE
در نام MoE ممکن است دو عدد ببینید؛ برای مثال کل پارامترها و پارامترهای فعال. کمتر بودن پارامتر فعال به معنی کوچک بودن فایل کامل نیست. برای اجرای محلی، اندازه فایل Quantized، حافظه KV Cache، Context، تعداد درخواست همزمان و Offload روی GPU اهمیت عملی بیشتری دارند.
Quantization چیست؟
Quantization دقت عددی وزنها را کاهش میدهد تا فایل و مصرف حافظه کمتر شود. نسخههای سبکتر اجرای مدل روی سختافزار معمولی را ممکن میکنند، اما ممکن است بخشی از کیفیت از دست برود. دو Quant با اندازه مشابه نیز الزاماً رفتار یکسان ندارند؛ روش ساخت، نوع داده و تنظیم Runtime اثرگذار است.
کدام مدل Qwen برای من مناسب است؟
انتخاب را از کار شروع کنید، نه از جدول Benchmark. سه وظیفه واقعی بنویسید: مثلاً «خلاصهکردن گزارش فارسی»، «ساخت Unit Test برای C#» و «پاسخ بر اساس سند داخلی». سپس سقف قابل قبول برای زمان پاسخ، RAM و کیفیت را تعیین کنید. کوچکترین مدلی که معیار شما را پاس میکند معمولاً نگهداری سادهتری دارد.
| وضعیت | نقطه شروع پیشنهادی | دلیل |
|---|---|---|
| لپتاپ با منابع محدود | مدل کوچک Quantized | زمان بارگذاری و فشار حافظه کمتر است. |
| گفتگو و خلاصه فارسی | Instruct چندزبانه در اندازه متوسط | تعادل کیفیت زبان و سرعت قابل سنجش است. |
| کدنویسی Repository | Coder سازگار با Context موردنیاز | تخصص کد و قالب Tool اهمیت دارد. |
| تصویر و سند بصری | مدل VL با Runtime پشتیبان | مدل متنمحور پیکسل را تحلیل نمیکند. |
| سرویس چندکاربره | Deployment Engine و مدل اندازهگیریشده | Throughput، Queue و محدودیت همزمانی مهماند. |
اعداد RAM ثابت نیستند و با Quant، Context، Backend و سختافزار تغییر میکنند. پیش از دانلود مدل بزرگ، اندازه Artifact و توضیحات Runtime را ببینید. مدل 27B یا MoE بزرگ ممکن است روی یک دستگاه معمولی بارگذاری شود اما تجربه تعاملی قابل قبول ندهد.
اجرای محلی Qwen در ویندوز با Ollama
برای شروع ساده در ویندوز، Ollama مسیر مناسبی است. ابتدا Ollama را از منبع رسمی نصب و نسخه را بررسی کنید. سپس نام دقیق مدل را از Library رسمی بردارید. از حدسزدن Tag پرهیز کنید؛ نگاشت نامهای Ollama با نام اصلی Qwen همیشه یکسان نیست.
# بررسی نصبollama --version # دریافت و اجرای یک مدل کوچکتر برای آزمایش اولیهollama run qwen3:4b # نمایش مدلهای موجود روی دستگاهollama listTag بالا یک نمونه قابل دسترس از خانواده Qwen3 است و جدیدترین مدل برای همه زمانها نیست. پیش از اجرا صفحه Library را کنترل کنید. اگر نسخه تازهتری انتخاب میکنید، اندازه فایل، قابلیت Vision، طول Context و نیاز Runtime را بخوانید. برای نصب، تغییر مسیر مدل و تنظیمات Windows، مقاله آموزش نصب Ollama در ویندوز را دنبال کنید.
اولین آزمون فارسی
برای آزمون، درخواست مبهم «فارسی بلدی؟» کافی نیست. یک مجموعه کوچک با پاسخ مرجع بسازید: خلاصه یک متن، استخراج سه عدد، بازنویسی رسمی، پاسخ به پرسش خارج از متن و تولید کد. خروجی را از نظر صحت، حفظ جهت فارسی، نیمفاصله، اصطلاح فنی و پرهیز از ساختن منبع امتیاز دهید.
متن زیر را فقط در پنج نکته فارسی خلاصه کن. هر عدد و نام نسخه باید عیناً حفظ شود. اگر پاسخ یک سؤال در متن نیست، عبارت «در متن ذکر نشده» را برگردان.
این دستور سه رفتار را همزمان میسنجد: خلاصهسازی، حفظ Fact و مقاومت در برابر حدس. نتیجه را با متن مرجع مقایسه کنید و خطاها را ثبت کنید.
اتصال Python به API محلی Qwen
Ollama یک API محلی ارائه میدهد و مستندات رسمی Qwen نیز مسیر سازگار با OpenAI را برای بعضی Runtimeها شرح میدهد. قبل از اجرای نمونه، مدل را یکبار با Ollama دریافت کنید و سرویس را روی localhost نگه دارید. کلید نمونه فقط مقدار محلی است و نباید برای سرویس ابری استفاده شود.
from openai import OpenAI client = OpenAI( base_url="http://localhost:11434/v1", api_key="ollama",) response = client.chat.completions.create( model="qwen3:4b", messages=[ {"role": "system", "content": "کوتاه و دقیق پاسخ بده."}, {"role": "user", "content": "سه کاربرد امن مدل محلی را بنویس."}, ],) print(response.choices[0].message.content)در برنامه واقعی Timeout، لغو درخواست، محدودیت اندازه ورودی و ثبت خطا اضافه کنید. پاسخ مدل را داده غیرقابل اعتماد بدانید و آن را بدون Encode داخل HTML، بدون Parameterization داخل SQL یا بدون تأیید داخل Shell اجرا نکنید.
حالت محلی، Cloud و Deployment چه تفاوتی دارند؟
Qwen را میتوان از رابط رسمی یا API ابری آزمایش کرد، وزن مدل را محلی اجرا کرد یا روی سرور با Engineهایی مانند vLLM و SGLang مستقر کرد. انتخاب به داده، مقیاس و توان نگهداری تیم وابسته است. اجرای محلی کنترل بیشتری میدهد، اما Patch، ظرفیت، مانیتورینگ و امنیت سرویس را به عهده شما میگذارد.
| روش | مناسب برای | مسئولیت اصلی |
|---|---|---|
| رابط Chat | آزمایش سریع و کار فردی | بررسی سیاست داده و محدودیت حساب |
| Ollama محلی | یادگیری، Prototype و داده کنترلشده | سختافزار، فایل مدل و امنیت localhost |
| Transformers | کنترل پژوهشی و توسعه Python | وابستگیها، Device Map و حافظه |
| vLLM یا SGLang | API چندکاربره و Throughput بیشتر | احراز هویت، TLS، Queue و پایش |
| API ابری | شروع سریع بدون GPU محلی | هزینه، کلید API و سیاست داده |
امنیت اجرای Qwen در پروژه واقعی
localhost را بیدلیل عمومی نکنید
API محلی Ollama برای استفاده همان دستگاه مناسب است. Bind کردن سرویس روی همه Interfaceها بدون Authentication میتواند Prompt، مدل و منابع سیستم را در اختیار شبکه قرار دهد. برای دسترسی تیمی از Gateway دارای TLS، احراز هویت، Rate Limit و Log کنترلشده استفاده کنید.
مدل را از منبع رسمی بگیرید
نام Qwen در مخزنهای مختلف استفاده میشود. وزن اصلی، Quant جامعه و نسخه تغییریافته یکسان نیستند. ناشر، Commit، License، Hash و Model Card را ثبت کنید. فایل با عنوان «Uncensored» یا ناشر ناشناس نباید خودکار وارد محیط سازمانی شود.
Prompt Injection در مدل محلی هم وجود دارد
اگر مدل سند، وبسایت یا خروجی ابزار را میخواند، متن ورودی میتواند دستور مخرب پنهان داشته باشد. داده بیرونی را Instruction معتبر تلقی نکنید. Toolها را Allowlist کنید، مسیر فایل را محدود نگه دارید و عملیات نوشتن، اجرا یا ارسال را به تأیید انسانی وابسته کنید.
خروجی کد را اجرا نکنید؛ بازبینی کنید
مدل Coder میتواند Package جعلی، فرمان حذف یا تنظیم ناامن پیشنهاد کند. Diff را بخوانید، تست مستقل اجرا کنید و Secret را در Prompt نگذارید. برای طراحی مجوز عاملهای کدنویسی، مقاله نصب OpenCode و تنظیم Permissionها نیز مفید است.
چگونه کیفیت Qwen را برای فارسی بسنجیم؟
مدل رسمی Qwen3 پشتیبانی چندزبانه از جمله فارسی را ذکر میکند، اما پشتیبانی زبانی به معنی کیفیت یکسان در همه وظایف نیست. یک مجموعه آزمون کوچک، ثابت و قابل تکرار بسازید. Prompt، نسخه مدل، Quant، دما، Context و پاسخ مرجع را ذخیره کنید.
- صحت: عدد، تاریخ و نام خاص تغییر نکرده باشد.
- زبان: جمله طبیعی، نشانهگذاری و نیمفاصله قابل قبول باشد.
- اطاعت: قالب، طول و محدودیت درخواست رعایت شود.
- عدم حدس: برای داده خارج از منبع پاسخ قطعی ساخته نشود.
- کدنویسی: نمونه Build شود و تستها بدون دستکاری معیار عبور کنند.
- سرعت: زمان اولین Token و نرخ تولید برای کاربر قابل قبول باشد.
- حافظه: اجرای طولانی باعث Swap یا ناپایداری نشود.
امتیازدهی ساده و قابل دفاع
برای هر وظیفه از صفر تا دو امتیاز بدهید: صفر برای شکست، یک برای نتیجه قابل اصلاح و دو برای نتیجه قابل قبول. کیفیت و سرعت را جدا ثبت کنید. مدلی که پاسخ کمی بهتر اما سه برابر کندتر است ممکن است برای چت تعاملی انتخاب ضعیفتری باشد.
Context طولانی همیشه بهتر نیست
Context بزرگتر حافظه KV Cache را افزایش میدهد و ممکن است سرعت را کاهش دهد. سقف اعلامشده مدل الزاماً اندازه بهینه روی دستگاه شما نیست. ابتدا با Context کوچک و واقعی شروع کنید، سپس بر اساس طول سند و نتیجه آزمون افزایش دهید.
اگر باید صدها سند را جستوجو کنید، قرار دادن همه متن در یک Prompt راه پایداری نیست. Chunking، Embedding، Retrieval و Citation طراحی کنید. در چنین معماریای مدل فقط بخشهای مرتبط را میبیند و سیستم باید منشأ پاسخ را نگه دارد.
License و استفاده تجاری
مخزن رسمی Qwen3 اعلام میکند مدلهای Open-Weight آن تحت Apache 2.0 منتشر شدهاند، اما هر Artifact را جدا بررسی کنید. Derivative، Quant یا مدل Community ممکن است License متفاوت داشته باشد. علاوه بر مجوز وزن، مجوز Dataset، کتابخانه Runtime و محتوای تولیدشده را نیز در پروژه تجاری ارزیابی کنید.
فایل License و Model Card نسخهای را که واقعاً Deploy میکنید کنار مستندات فنی نگه دارید. وابستگی به نام کلی «Qwen» برای ممیزی کافی نیست؛ شناسه کامل مدل، Revision و منبع دانلود باید مشخص باشد.
رفع خطاهای رایج
مدل روی دستگاه اجرا نمیشود
ابتدا اندازه فایل و RAM آزاد را بررسی کنید. Context و تعداد درخواست همزمان را کاهش دهید و مدل Quantized کوچکتر بگیرید. بستهشدن ناگهانی Runtime معمولاً با Log و وضعیت حافظه بهتر از حدس تشخیص داده میشود.
پاسخ بسیار کند است
مطمئن شوید Backend از GPU قابل پشتیبانی استفاده میکند. Driver، Offload و دمای دستگاه را کنترل کنید. مدل بزرگتر از ظرفیت یا Context غیرضروری، سرعت را شدیداً کم میکند.
خروجی فارسی ناپایدار است
System Prompt کوتاه فارسی، قالب خروجی صریح و دمای کمتر را آزمایش کنید. مدل و Quant دیگری را با همان مجموعه آزمون مقایسه کنید. تغییر همزمان چند تنظیم، علت بهبود یا افت را پنهان میکند.
Tag مورد انتظار پیدا نمیشود
نامها میان Hugging Face، Ollama و مخزن Qwen یکسان نیستند. صفحه رسمی Runtime را باز کنید و Tag موجود را کپی کنید. از ساختن Tag بر اساس نام بازاریابی خودداری کنید.
چکلیست قبل از استفاده پروژهای
- وظیفه و معیار پذیرش پیش از انتخاب مدل نوشته شده است.
- شناسه کامل مدل، Revision، ناشر و License ثبت شدهاند.
- اندازه فایل، RAM، VRAM و Context روی سختافزار واقعی سنجیده شدهاند.
- کیفیت فارسی و کد با مجموعه آزمون ثابت ارزیابی شده است.
- API محلی روی localhost یا پشت Gateway امن قرار دارد.
- ورودی بیرونی غیرقابل اعتماد و Toolها Allowlist شدهاند.
- Secret، اطلاعات شخصی و کد محرمانه بدون مجوز وارد Prompt نمیشوند.
- خروجی کد با Diff، Build، Test و بازبینی انسانی کنترل میشود.
- Rollback و حذف نسخه مدل قدیمی برنامه مشخص دارد.
- هزینه نگهداری محلی با گزینه Cloud مقایسه شده است.
جمعبندی
Qwen یک اکوسیستم از مدلهای متن، کد، تصویر و Embedding است؛ نه یک فایل واحد. انتخاب موفق از خواندن Model Card، شناخت Instruct، Thinking، Dense، MoE و Quantization و سپس آزمون روی وظیفه واقعی به دست میآید. برای شروع محلی، یک مدل کوچکتر را با Ollama روی localhost اجرا و کیفیت، سرعت و حافظه را اندازهگیری کنید.
نسخه بزرگ یا جدید را فقط وقتی جایگزین کنید که معیار مشخصی را بهتر کند. منبع مدل، License، تنظیمات و نتایج آزمون را ثبت کنید تا تصمیم قابل تکرار باشد. برای یادگیری پروژهمحور مدلهای هوش مصنوعی، Python و ساخت ابزارهای قابل ارائه، مسیرهای آموزشی خانه برنامه نویسان البرز را بررسی کنید.