پرش به محتوای اصلی
پرش به محتوای مقاله

پژوهش فارس علافی: ترکیب Mamba-2 و مدل انتشار پیچیدگی ترنسفورمرها را گرفت

·۱۴ تیر ۱۴۰۵۱۰ دقیقه مطالعه
مدل زبانی که پایتخت ژاپن را پاریس می‌داند: آزمایشی درباره توهمات هوش مصنوعی
مدل زبانی که پایتخت ژاپن را پاریس می‌داند: آزمایشی درباره توهمات هوش مصنوعی
اشتراک‌گذاری
واقعاً چه چیز جدید است؟

ترکیب عملی Mamba-2 با Masked Diffusion برای حذف تکرارهای دسته‌ای در مدل‌های زیر ۵۰۰ میلیون پارامتر؛ چیزی که پیش‌تر فقط در مدل‌های غول‌پیکر یا معماری‌های کند ترنسفورمر دیده می‌شد.

تصور کنید مدلی که در یک نقطه باور داشت پایتخت ژاپن، پاریس است. این نقطهٔ آغازی بود برای فارس علافی (Faris Allafi)، پژوهشگر ۱۳ ساله‌ای در Hamiltonian Research، که با هزینه شخصی و صرف ساعت‌ها زمان در مسیر دشوار آموزش مدل‌های کوچک، معماری DIMBA II را توسعه داد. او تمام این مسیر را با تحمل آزمون و خطاهای آموزش مدل‌های مقیاس کوچک طی کرد تا به این نتیجه برسد. این معماری نوآورانه با هدف حل مشکلات تکرار (Repetition) و پیچیدگی درجه دوم (Quadratic Complexity) که در ترنسفورمرهای استاندارد وجود دارد، طراحی شده است. علافی با ترکیب ستون‌های فقرات دوجهته مامبا (Bidirectional Mamba spines) با فرآیندهای انتشار (Diffusion processes)، مدلی ساخته است که قادر است میانهٔ جملات را پر کند؛ دستاوردی که به‌طور سنتی برای مدل‌های زبانی بزرگ خودبازگشتی (Autoregressive LLMs) غیرممکن بود، زیرا این مدل‌ها تنها می‌توانند توکن بعدی را پیش‌بینی کنند.

بسیاری از مدل‌های هوش مصنوعی مدرن به معماری ترنسفورمر وابسته هستند؛ معماری‌ای که پس از مقاله «Attention Is All You Need» در سال ۲۰۱۷ توسط واسوانی و همکارانش، به استاندارد صنعت تبدیل شد. این معماری بر پایه مکانیزم توجه است که جزئیات ریاضیاتی و موتور محاسباتی آن نقش کلیدی در عملکرد مدل‌های بزرگی چون GPT و Claude ایفا می‌کند. اگرچه این مدل‌ها جهان را به سمت هوش مصنوعی عمومی (AGI) سوق داده‌اند، اما از پیچیدگی درجه دوم رنج می‌برند: هزینه‌های توجه (Attention costs) با مجذور طول بافت (Context length) رشد می‌کند. این مسئله باعث می‌شود پردازش برای عامل‌های کدنویسی که باید کل مخازن کد را در حافظه نگه دارند، دستیارهایی با تاریخچه چت یک هفته‌ای و خطوط بازیابی (Retrieval pipelines) که ده‌ها سند را در یک پرامپت می‌چینند، بسیار دشوار، کند و هزینه‌بر باشد. برای رفع این مشکل، علافی سیستمی ساخت که کارایی بی‌نظیر بافت در Mamba-2 (دائو و گو، ۲۰۲۴) را با قابلیت‌های تولید موازی مدل‌های زبانی انتشار ترکیب می‌کند تا محدودیت‌های خطی را به چالش بکشد.

معماری DIMBA II

DIMBA II نسل دوم این معماری است. نسل اول، یعنی DIMBA I، به‌گونه‌ای توصیف شده که «هرگز از محیط GPU خارج نشد»، به این معنی که در عمل هیچ خروجی کاربردی نداشت و برای تمام مقاصد عملی، نسخه فعلی تنها انتشار اصلی محسوب می‌شود. این مدل تقریباً ۳۰۰ میلیون پارامتر دارد (دقیقاً ۲۸۷.۹ میلیون پارامتر) و از طریق تقطیر متقاطع معماری (Cross-architecture distillation) از مدل SmolLM-135M استخراج شده است. برخلاف مدل‌های استاندارد که کلمه بعدی را پیش‌بینی می‌کنند، DIMBA II از «انتشار ماسک‌شده» (Masked Diffusion) استفاده می‌کند، جایی که مدل متنی با توکن‌های [MASK] را می‌بیند و یاد می‌گیرد آن‌ها را مستقیماً با توکن‌های مناسب پر کند.

جزئیات فنی کلیدی شامل موارد زیر است:

  • میکسر مبتنی بر مامبا: این بخش به عنوان یک ستون فقرات مامبای دوجهته عمل کرده و جایگزین ستون فقرات ترنسفورمر در سایر مدل‌های انتشار ماسک‌شده مانند LLaDA، MDLM و Dream شده است.
  • دوجهته بودن (Bidirectionality): مدل هم‌زمان یک پشته پیش‌رو (Forward stack) و یک پشته بازگشتی (Backward stack) را اجرا می‌کند تا بافت هر دو طرف یک توکن ماسک‌شده را ببیند. این ویژگی باعث می‌شود مدل دید جامع‌تری به متن داشته باشد، اما اندازه میکسر را تقریباً دو برابر می‌کند.
  • تقطیر متقاطع معماری: دانش از یک مدل استاد با ۱۳۵ میلیون پارامتر، با استفاده از ۲۸ میلیارد توکن بر روی MLPهای استخراج‌شده منتقل شده است تا ویژگی‌های آموزشی مدل بزرگتر به معماری جدید منتقل شود.
  • هدایت بدون طبقه‌بند (Classifier-Free Guidance): در ۱۰٪ از ردیف‌های آموزشی، پرامپت به‌طور کامل پنهان می‌شود. علافی این استراتژی را به عنوان بزرگترین اهرم کیفیت در کل پروژه شناسایی کرده است که باعث می‌شود مدل مستقل‌تر عمل کند.
  • محاسبه تلفات (Loss Computation): تلفات تنظیم دقیق (Fine-tuning loss) روی پاسخ به علاوه دقیقاً یک توکن پایان-سکانس (End-of-sequence) محاسبه می‌شود. این کار به‌طور مشخص برای اجتناب از «دم پدینگ» (Padding tail) انجام شده تا مدل یاد نگیرد که بهترین پاسخ، یک پاسخ خالی است.
  • نمونه‌گیر ضد-تکرار: این سیستم شامل یک جریمه فرکانسی است که اولین استفاده از هر کلمه را می‌بخشد اما تکرارها را جریمه می‌کند، همچنین یک ممنوعیت سخت‌گیرانه برای ثبت یک توکن مشابه به‌صورت متوالی در دو جایگاه پشت سر هم دارد.

طبق گزارش hamiltonianresearch.xyz، اندازه این مدل بزرگتر از مدل استاد آن است زیرا دوجهته بودن از نظر محاسباتی هزینه‌بر است. پشته‌های دوجهته اساساً حقایق یکسانی را دو بار ذخیره می‌کنند، به این معنی که مدل ۲۸۸ میلیون پارامتری در واقع ظرفیت دانشی یک مدل کلاس ۱۳۵ میلیون پارامتری را دارد و پارامترهای اضافی صرفاً برای مدیریت جهت‌های مختلف جریان داده شده‌اند. این چالش در مدیریت وزن‌ها، یادآور پژوهش‌هایی است که با استفاده از نقشه‌های حافظه، سعی در شناسایی نحوه ذخیره‌سازی اطلاعات و اثر انسان‌ها در وزن‌های مدل‌های زبانی دارند.

غلبه بر «سالاد کلمات» و باگ‌های آموزشی

فرآیند توسعه با شکست‌های قابل توجهی همراه بود. DIMBA I از انتشار در فضای نهان (Latent-space diffusion) استفاده می‌کرد، به این معنی که نویز گاوسی را در یک فضای پیوسته منتشر می‌کرد و سپس نتیجه را به نزدیک‌ترین کلمات می‌چسباند (Snap). علافی این «چسباندن نهایی» را نقطه‌ای توصیف می‌کند که در آن همه چیز از هم پاشید، زیرا بردارهای نرم به «سالاد کلمات» تبدیل می‌شدند؛ یعنی توالی‌هایی از کلمات که هیچ معنای دستوری یا منطقی نداشتند. DIMBA II برای حل این مشکل به انتشار ماسک‌شده تغییر مسیر داد که رویکرد پیشرو فعلی در این حوزه است.

دو باگ بحرانی اجرای اولیه تقطیر ۲۸ میلیارد توکنی را که علافی با پرداخت چندین صد دلار از هزینه شخصی تأمین کرده بود، مختل کرد:

  • باگ استاد: در مرحله تقطیر، مدل استاد عملاً برای تقریباً تمام مدت اجرا «خاموش» بود. علافی این وضعیت را به پرداخت هزینه برای معلمی تشبیه می‌کند که هرگز به کلاس نیامده است، اما دانش‌آموز (مدل) همچنان سعی در یادگیری داشته است.
  • باگ نهان: اجرای مدل روی انتشار نهان هدف‌گذاری شده بود که منجر به تولید همان سالاد کلمات مذکور شد و نتایج را غیرقابل استفاده کرد.

زمانی که این مشکلات درک شدند، برای شروع مجدد از صفر دیر شده بود. برای نجات وزن‌ها و بازیابی مدل، علافی یک اجرای ترمیمی با ۱.۶ میلیارد توکن در حالی که مدل استاد روشن بود انجام داد و پس از آن یک مرحله تبدیل برای آموزش انتشار ماسک‌شده به سبک LLaDA و تنظیم نظارت‌شده (SFT) روی حدود ۴۲۲ هزار جفت دستورالعمل اجرا کرد. نتیجه این تلاش‌ها مدلی بود که می‌توانست «تا حدی» انگلیسی صحبت کند و ساختار جملات را تشخیص دهد.

تلاش با خود-اصلاحی در مقیاس کوچک

یکی از مهم‌ترین یافته‌های این گزارش این است که مدل‌های کوچک نمی‌توانند خروجی خود را قضاوت یا اصلاح کنند. اکثر مدل‌های پیشرو (SOTA) به اندازه کافی هوشمند هستند که خود را قضاوت کنند، اما علافی ۶ روش مختلف را کشف کرد که نشان می‌دهد این کار در مقیاس ۳۰۰ میلیون پارامتر ممکن نیست:

  • بازرتبه‌بندی پرپلکسیتی (Perplexity Reranking): تولید ۸ پاسخ کاندید و اجازه دادن به مدل برای انتخاب مورد علاقه. این روش شکست خورد زیرا مدل به‌طور قابل پیش‌بینی تکرارهای تخریبی را انتخاب می‌کرد، چون حلقه‌ها (Loops) راحت‌تر پیش‌بینی می‌شوند و پرپلکسیتی پایین‌تری دارند.
  • باز‌ماسک‌گذاری مبتنی بر اعتماد (Confidence-based Remasking): شناسایی توکن‌هایی که مدل کمترین اطمینان را به آن‌ها دارد و دوباره پر کردن آن‌ها. دقت تغییری نکرد، حتی با استفاده از یک استراتژی پر کردن هوشمندتر.
  • آموزش ترمیمی (Repair Training): تنظیم دقیق روی متونی با خطاهای تصادفی برای شناسایی فساد متن. تشخیص از ۰٪ به ۷.۱٪ رسید، اما وقتی مدل روی اشتباهات نمونه‌برداری شده توسط خود مدل آموزش دید، تشخیص به صفر سقوط کرد؛ زیرا اشتباهات خود مدل دقیقاً همان چیزهایی هستند که مدل آن‌ها را پذیرفتنی و محتمل می‌یابد.
  • اتاق پژواک (Echo Chamber): این شکست به ناتوانی مدل در شناسایی سوگیری‌های ذاتی خود در الگوهای خطا اشاره دارد؛ مدل نمی‌بیند کجا اشتباه می‌کند چون الگوی خطایش با الگوی باورهایش یکی است.
  • باز‌ماسک‌گذاری با کاهش اعتماد: رصد توکن‌هایی که احتمال آن‌ها با پر شدن بافت کاهش می‌یابد. این مورد تقریباً هرگز اتفاق نیفتاد؛ اعتماد مدل به اشتباهاتش با پیشروی در ثبت آن‌ها فقط رشد می‌کند. مدل تردید نمی‌کند؛ بلکه توجیه می‌کند.
  • تأیید پیش‌رو (Lookahead Verification): ثبت توکن‌ها و بلافاصله امتیازدهی مجدد به آن‌ها. این مورد نیز تقریباً هرگز عمل نکرد زیرا مدل در مرحله دوم، خطای مرحله اول را توجیه می‌کند.

برای حل این مشکل، علافی یک «سر منتقد» (Critic Head) جداگانه اضافه کرد؛ یک افزونه ۳۰۰ هزار پارامتری که ویژگی‌های داخلی منجمد شده را می‌خواند. این سر خارجی توکن‌های غلط را با دقت ۵۲.۵٪ نشانه‌گذاری می‌کند (در حالی که احتمال تصادفی ۱۰٪ است) و یک توکن غلط را ۷۸.۹٪ از مواقع بالاتر از توکن درست رتبه‌بندی می‌کند (در حالی که احتمال تصادفی ۵۰٪ است). اعتماد داخلی خود مدل در همین تست، تنها در سطح شانس عمل کرد.

با این حال، متصل کردن منتقد به یک حلقه اصلاحی به روشی «کتاب‌درسی گودهارت» (Goodhart way) شکست خورد: امتیاز منتقد بهبود یافت در حالی که پاسخ‌های واقعی بهبود نیافتند، زیرا عملیات پر کردن مجدد هنوز توسط همان مدل کوچک انجام می‌شد که توانایی تولید پاسخ درست را نداشت. برداشت علافی این است که در مقیاس کوچک، کیفیت باید از محدودیت‌های خارجی بیاید زیرا خود-قضاوت اولین تلفات مقیاس کوچک است. این چالش در ایجاد تعادل میان توانایی‌های مدل و محدودیت‌های عملی، یادآور بررسی‌های فنی در مورد نحوه مدیریت تعادلات عملیاتی و اخلاقی در مدل‌هایی مانند Claude است که نشان می‌دهد هر معماری با محدودیت‌های خاص خود در مقیاس‌های مختلف روبروست.

بنچمارکینگ عملکرد و پیچک استنتاج

علافی یک «پیچک استنتاج» (Inference Dial) منحصر‌به‌فرد پیاده کرد که سرعت را با کیفیت معاوضه می‌کند. این کار با تنظیم مراحل انتشار (از ۱۶ تا ۲۵۶) و تعداد پاسخ‌های کاندید (از ۱ تا ۸) انجام می‌شود. این پیچک کنترل می‌کند که در هر مرحله چند توکن ثبت شوند؛ مراحل بیشتر به معنای توکن‌های کمتر در هر مرحله است که اشتباهات تثبیت‌شده را کاهش می‌دهد. یک تأییدکننده (Verifier) برنده را از میان کاندیدها انتخاب می‌کند؛ این کار با ماسک کردن بخش‌هایی از پاسخ‌ها و اندازه‌گیری میزان توافق پیش‌بینی‌های شرطی‌شده با پرامپت با متن انجام می‌شود و از سر منتقد به عنوان تعیین‌کننده در موارد تساوی استفاده می‌کند.

اجراهای اندازه‌گیری شده برای این پیچک، یک محور هزینه هموار اما یک محور دقت نویزدار را نشان می‌دهد:

  • تنظیم ۰.۱: ۱ مرحله، ۱ کاندید، ۱۷.۵٪ دقت QA، ۲.۲ ثانیه برای هر پاسخ.
  • تنظیم ۰.۳: (درون‌یابی شده) دقت حدود ۱۷.۵٪ باقی می‌ماند، تأخیر به ۳.۹ ثانیه می‌رسد.
  • تنظیم ۰.۵: ۶۴ مرحله، ۲ کاندید، ۱۰.۰٪ دقت QA، ۷.۱ ثانیه برای هر پاسخ.
  • تنظیم ۰.۷: (درون‌یابی شده) ۱۲.۵٪ دقت QA، ۱۲.۲ ثانیه برای هر پاسخ.
  • تنظیم ۰.۹: (درون‌یابی شده) ۱۷.۵٪ دقت QA، ۲۱.۲ ثانیه برای هر پاسخ.
  • تنظیم ۱.۰: ۲۵۶ مرحله، ۸ کاندید، ۲۰.۰٪ دقت QA، ۲۷.۷ ثانیه برای هر پاسخ.

در عمل، دقت در تنظیمات تولیدی حدود ۱۵٪ و در حالت حداکثری ۲۰٪ باقی می‌ماند. نتیجه‌گیری علافی این است که اگر آموزش دانش را ذخیره نکرده باشد، نمی‌توان آن را از طریق استنتاج استخراج کرد؛ «باک بنزین» به دلیل باگ استاد تنها تا حدودی پر شده بود و استراتژی‌های استنتاج نمی‌توانند جایگزین دانش پایه شوند.

در مقایسه با سایر مدل‌های کوچک در یک تست واقعیت ۴۰ سوالی، DIMBA II (hr-diffuse-1-nano) نتایج زیر را نشان داد:

مدل دقت QA نرخ حلقه (تکرار) بازیابی Infill ثانیه/پاسخ
hr-diffuse-1-nano 15.0% 7.5% 14.0% 13.3
SmolLM-135M (استاد) 82.5% 37.5% 2.9% 0.63
SmolLM-135M-Instruct 60.0% 2.5% 0.0% 0.62
GPT-2 (124M) 20.0% 90.0% 0.0% 0.18
Pythia-160M 10.0% 15.0% 1.7% 0.19

مدل DIMBA II در تست دانش به دلیل حجم توکن‌های کمتر (۲۸ میلیارد در مقابل ۶۰۰ میلیارد برای استاد) شکست می‌خورد اما Pythia-160M را شکست می‌دهد. مهم‌تر اینکه، در ساختار پیروز است: میانه‌های ماسک شده را در ۱۴٪ بازسازی می‌کند (در حالی که مدل‌های خودبازگشتی به دلیل عدم توانایی در شرطی شدن روی متن آینده، نمره نزدیکی به صفر می‌گیرند) و نرخ حلقه‌ها را در ۷.۵٪ نگه می‌دارد که بسیار کمتر از ۹۰٪ در GPT-2 است. این پیروزی‌های ساختاری از خود هدف انتشار ناشی می‌شوند و در مقیاس‌های بالاتر به‌صورت رایگان رشد می‌کنند.

بهینه‌سازی بودجه پارامترها

برای رفع مشکل «ذخیره هر حقیقت دو بار» در پشته‌های دوجهته، علافی آزمایشی را در اواخر بعدازظهر برای تست سه مدل مختلف از ابتدا طی ۲,۰۰۰ گام اجرا کرد:

  • پشته دوگانه کامل (فعلی): ۲۸۷.۹ میلیون پارامتر، تلفات ۶.۶۹۷.
  • اشتراک کامل وزن‌ها: ۲۲۵.۵ میلیون پارامتر، تلفات ۶.۹۶۸.
  • اشتراک + لورای (LoRA) هر جهت: ۲۲۸.۴ میلیون پارامتر (شامل ۲.۹ میلیون آداپتور)، تلفات ۶.۷۹۷.

اشتراک خالص ۶۲.۵ میلیون پارامتر ذخیره کرد اما ۰.۲۷۱ نات (nats) به تلفات افزود. افزودن تنها ۲.۹ میلیون پارامتر لورا، ۶۳٪ از آن آسیب را جبران کرد و مدلی ایجاد کرد که ۲۱٪ کوچک‌تر از نسخه اصلی بود اما جریمه حداقلی داشت. این پیکربندی «اشتراک-به-اضافه-لورا» در حال حاضر بهترین مدل پارامتر-به-تلفات اندازه‌گیری شده است، هرچند علافی اشاره می‌کند که ۲,۰۰۰ گام سرعت یادگیری اولیه را می‌سنجد و نه ظرفیت هم‌گرا شده در پایان آموزش را.

نقشه راه آینده و نیازهای محاسباتی

کل این پروژه تقریباً ۵۰۰ دلار هزینه روی GPUهای اجاره‌ای H100 داشت. علافی اکنون به دنبال شرکای محاسباتی، اسپانسر GPU یا سرمایه برای اجرای مدلی با ۱.۵ تا ۳ میلیارد پارامتر است. این محدوده جایی است که تحقیقات LLaDA پیشنهاد می‌کنند انتشار ماسک‌شده با مدل‌های خودبازگشتی هم‌اندازه رقابتی می‌شود.

فاز بعدی شامل موارد زیر خواهد بود:

  • تقطیر با استاد فعال: از مدل‌های سری SmolLM با رفع و تأیید باگ گیتینگ تا دانش به‌طور کامل منتقل شود.
  • بهینه‌ساز Muon: تست‌های A/B روی این معماری نشان داد که Muon به تلفات نهایی ۵.۴۵۳ رسید در حالی که AdamW عدد ۵.۴۷۰ را ثبت کرد. تا جایی که علافی می‌داند، این اولین نتیجه Muon روی یک مدل زبانی انتشار مامبا است.
  • معماری اشتراک-به-اضافه-لورا برای به حداکثر رساندن کارایی پارامترها در مدل‌های بزرگتر.
  • یک فاز آزمایشی ارزان برای اعتبارسنجی انتخاب‌ها با تست‌های A/B کوچک قبل از تخصیص کل بودجه برای جلوگیری از تکرار باگ‌های قبلی.

هدف علمی، تولید یک مجموعه داده چهار نقطه‌ای برای ردیابی نحوه تکامل معیارهای خود-اصلاحی است (به‌ویژه تشخیص خطاهای کاشته شده، نرخ فعال‌سازی باز‌ماسک‌گذاری، دقت منتقد و شیب پیچک استنتاج) از مقیاس ۱۳۵ میلیون تا ۳ میلیارد پارامتر. این کار تعیین خواهد کرد که مرز دقیق ظهور خود-قضاوت کجاست یا یک نتیجه منفی ارزشمند درباره دینامیک‌های انتشار در مقیاس کوچک ارائه می‌دهد. آرشیو کامل توسعه، چک‌پوینت‌های شکست خورده و کدهای آموزش در Hugging Face در دسترس هستند تا دیگران از این تجربیات استفاده کنند.

چرا این موضوع مهم است؟

این پژوهش ثابت می‌کند که مدل‌های انتشار می‌توانند مشکل تکرار مزمن در مدل‌های زبانی کوچک را حل کنند و قابلیت Infilling را به آن‌ها ببخشند. اعتبار این یافته‌ها از تجربه عملی در آموزش مدل‌های زیر ۱ میلیارد پارامتر می‌آید که برای توسعه‌دهندگان Edge AI حیاتی است.

تأثیر برای ایران

این پروژه به‌دلیل هزینه بسیار پایین (۵۰۰ دلار) و استفاده از مدل‌های باز، الگویی برای پژوهشگران ایرانی است که با محدودیت شدید منابع پردازشی (Compute) دست‌وپنجه نرم می‌کنند.

·نگاه ما
تحریریه دات‌هوش

شکست‌های متوالی علافی در پیاده‌سازی خود-اصلاحی در مقیاس ۳۰۰ میلیون پارامتر، یک حقیقت تلخ را برملا می‌کند: «شعور» مدل برای تشخیص خطا، یک ویژگی نوظهور است که تنها پس از عبور از یک آستانهٔ حجمی خاص ظاهر می‌شود و با مهندسی پرامپت یا لایه‌های کوچک جان‌بخشی ممکن نیست. این یافته نشان می‌دهد که تلاش برای ساخت مدل‌های کوچکِ «هوشمند و منتقد»، مسیر بن‌بستی است مگر اینکه منتقد را به صورت یک مدل مجزا یا یک لایه سخت‌افزاری تعریف کنیم.

منابع

این گزارش با خط‌لولهٔ خودکار دات‌هوش از منابع معتبر جهانی تدوین و زیر نظر تحریریه منتشر شده است. روش کار ما

گفتگو

پنج‌شنبه‌های هوش‌محور

بسته‌ی هفتگی دات‌هوش

۵ خبر، ۲ ابزار، ۱ پرامپت در هر شماره. به‌زودی راه‌اندازی می‌شود — هر پنج‌شنبه صبح.

خبر کلیدی
ابزار کاربردی
پرامپت حرفه‌ای
تحلیل پژوهش
به‌زودی
زاویه‌ی ایرانی
به‌زودی
تمرین این هفته
به‌زودی

راهنماهای دات‌هوش

راهنماهای کاربردیِ دات‌هوش برای کار با هوش مصنوعی — از همین‌جا شروع کنید:

دات‌هوش

راهنمای فارسی هوش مصنوعی — با نگاه به ایران

اخبار روزانه، معرفی ابزارها و مدل‌ها، و آموزشِ کار با هوش مصنوعی؛ همیشه با این پرسش که از ایران چه چیزی کار می‌کند و چه چیزی نه.