حافظه‌ی این سامانه با طول سند بزرگ نمی‌شود؛ ۱۳۴۷۳ خانه، هر خانه ۳۲۸ عدد و هر عدد چهار بایت، جمعا ۱۷٫۷ مگابایت، چه سند هزار توکن باشد و چه یک میلیون.
حافظه‌ی این سامانه با طول سند بزرگ نمی‌شود؛ ۱۳۴۷۳ خانه، هر خانه ۳۲۸ عدد و هر عدد چهار بایت، جمعا ۱۷٫۷ مگابایت، چه سند هزار توکن باشد و چه یک میلیون.

یک میلی‌متر مکعب

یک تکه قشر مغز انسان، کوچک‌تر از یک دانه برنج، زیر میکروسکوپ الکترونی نقشه‌برداری شده و ۱۳۴۷۳ نرون ازش در اومده. کسی این نقشه رو گرفته و به‌جای حافظه به یک مدل زبانی کوچک وصل کرده. مدل هر بار فقط یک تکه‌ی کوتاه از متن رو می‌بینه، ولی کلمه‌ای رو که خیلی قبل‌تر گفته شده بود و دیگه جلوی چشمش نبود، صد درصد درست به یاد آورد. بعد همون آدم اتصال‌های این گراف رو تصادفی به‌هم ریخت، ۹۹٫۹۴ درصدشون رو، و جواب همون صد درصد موند.

در سال ۲۰۲۴ یک همکاری میان هاروارد و گوگل چیزی منتشر کرد به اسم H01؛ یک میلی‌متر مکعب از قشر گیجگاهی مغز انسان، نقشه‌برداری‌شده با میکروسکوپ الکترونی در مقیاس نانومتر. حجمش از یک دانه برنج کمتره و حدود ۵۷ هزار سلول و چیزی نزدیک ۱۵۰ میلیون سیناپس داخلش هست. برای همین یک تکه، یک پتابایت تصویر گرفته شده. تا امروز ریزدانه‌ترین نقشه‌ای‌ست که از بافت عصبی انسان وجود داره.

حالا کسی این نقشه رو برداشته و به‌جای حافظه به یک مدل زبانی وصل کرده، و گزارش داده که مدل یک کلمه‌ی شش‌حرفی رو صد درصد درست به یاد میاره. عدد واقعیه، کد و وزن‌ها عمومیه، و هر کسی می‌تونه تکرارش کنه. ولی چیزی که این ماجرا رو خواندنی می‌کنه نتیجه نیست؛ اینه که خود نویسنده آزمایشی رو هم منتشر کرده که نشون می‌ده مغز انسان کار رو نمی‌کرده.

چی به چی وصل شده

اول ببینیم اصلا چه چیزی ساخته شده، چون خیلی از بدفهمی‌ها از همین‌جا شروع می‌شه. مدل زبانی عوض نشده. یک Qwen2.5-0.5B-Instruct معمولی و دست‌نخورده وسط ماجراست که هیچ وزنی‌ش تغییر نمی‌کنه و هیچ چیزی هم داخلش ادغام نمی‌شه.

چیزی که اضافه شده یک فایل جداست، و خودشون هم تأکید می‌کنن که محصول همین فایله نه مدل. داخل این فایل گراف نرون‌هاست، علامت تحریکی یا مهاری بودن هر سیناپس، و چند وزن آموزش‌دیده‌ی کوچک. این گراف مثل یک حافظه‌ی تداعی‌گر (associative memory) کار می‌کنه، یعنی حافظه‌ای که با محتوا آدرس می‌شه و نه با شماره‌ی خانه. سر وقت بازیابی هم توکن‌های حافظه وسط لایه‌های مدل تزریق می‌شن و خروجی لایه‌ها خونده می‌شه.

پس تقسیم کار روشنه. زبان و استدلال از خود مدل میاد و ۱۳۴۷۳ خانه‌ی این گراف فقط یک انبارند. خود نویسنده هم همین رو صریح می‌گه که این چیز یادش می‌مونه ولی استدلال نمی‌کنه.

ادعای اصلی این نیست که مغزه، اینه که بزرگ نمی‌شه

سوال درست اینه که اگه مدل دست‌نخورده مونده، این گراف چه دردی رو دوا می‌کنه. جوابش با حافظه‌ی خود ترنسفورمر شروع می‌شه.

ترنسفورمر برای اینکه چیزی رو به یاد بیاره باید توکن‌هاش رو در حافظه نگه داره، و این حافظه با هر توکن تازه بزرگ‌تر می‌شه؛ اسم فنی‌ش KV cache است. مشکل اینه که مدل هر بار فقط یک تکه‌ی محدود از متن رو جلوی چشمش داره، و وقتی سند از اون تکه بلندتر بشه، اول سند دیگه نیست و هیچ راهی هم برای برگشتن به اون نداری.

این گراف اما بزرگ نمی‌شه، و دلیلش یک ضرب ساده‌ست که ارزش داره خودت حسابش کنی. حافظه یک خانه به ازای هر نرون داره و در هر خانه ۳۲۸ عدد می‌نشینه. برای مغز مگس ۸۵۵۲ خانه ضربدر ۳۲۸ عدد ضربدر چهار بایت می‌شه ۱۱٫۲ مگابایت، و برای مغز انسان ۱۳۴۷۳ خانه با همون حساب می‌شه ۱۷٫۷ مگابایت. این عدد ثابته و به طول سند هیچ ربطی نداره. سند هزار توکن باشه یا یک میلیون توکن، حافظه همین ۱۷٫۷ مگابایته.

آزمون ساده بود، شاهدهاش نبودن

آزمون خودش یک خط توضیح داره. یک رشته‌ی شش‌حرفی یک بار در متن گفته می‌شه و زیر انبوهی حرف بی‌ربط گم می‌شه. مدل هیچ‌وقت بیشتر از ۱۲۸ توکن رو با هم نمی‌بینه، و سوال جایی پرسیده می‌شه که اون رشته دیگه در این ۱۲۸ توکن نیست، پس امکان نداره اون واقعیت و اون سوال هم‌زمان جلوی چشمش باشن. کلمه‌های پرکننده هم در هر بار آزمایش از نو ساخته می‌شن تا چیزی برای حفظ کردن باقی نمونه.

چهار عدد گزارش شده، و ارزش سه تای آخر از اولی بیشتره.

سنجش نتیجه
بدون گراف، واقعیتی که مدل دیگه نمی‌بینه ۰٪
با گراف انسان ۱۰۰٪
شاهد، کلمه‌ای که هیچ‌وقت در سند نبوده ۰٪
شاهد، گرافی که سند دیگری خونده ۰٪

چرا این سه تا مهم‌ترن؟ چون بدون اون‌ها نمی‌فهمی چی رو داری اندازه می‌گیری. سطر اول می‌گه بدون حافظه این کار غیرممکنه، پس صد درصد از توانایی خود مدل نمی‌آد. دو سطر آخر جلوی حالتی رو می‌گیرن که سامانه داره از جای دیگری نشت می‌کنه؛ اگه گرافی که سند دیگری خونده هم جواب درست بده، معلوم می‌شه جواب از خود سند نمی‌آمده. عبارتی که در کارت مدل آمده دقیق‌تر از این نمی‌شه گفت؛ گرافی که هم سطر اول رو بگیره و هم دو سطر آخر رو، در حال نشت دادنه نه در حال یادآوری.

از یک میلی‌متر مکعب تا یک گراف، سه تله

اینجا جالب‌ترین قسمت مهندسی ماجراست، و برای هر کسی که با داده‌ی زیستی کار کرده آشناست. اگه جدول سلول‌های H01 رو برداری و ساده‌لوحانه گرافش رو در بیاری، چیزی که دستت می‌آد با اطمینان کامل غلطه.

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

تله‌ی دوم، علامت. تحریکی یا مهاری بودن یک سیناپس شوخی نیست، چون همین تعیین می‌کنه شبکه سر جایش آرام بگیره یا از کنترل خارج بشه. آشکارساز H01 خودش برای هر سیناپس علامت پیشنهاد می‌ده و وسوسه‌انگیز هم هست که همون رو برداری. ولی این‌ها علامت‌ها رو با قانون دیل سنجیدن، یعنی این اصل که یک نرون در همه‌ی پایانه‌هاش یک ناقل عصبی آزاد می‌کنه و پس نرون هرمی همه‌جا تحریکیه و نرون میان‌واسط همه‌جا مهاری. توافق ۵۷٫۵ درصد بود، یعنی کمی بهتر از شیر یا خط. علامت رو از نوع سلول برداشتن و اون اختلاف رو هم گزارش کردن به‌جای اینکه بی‌صدا هرکدام که خوشایندتر بود رو انتخاب کنن. حاصلش ۹۹۴۰ نرون تحریکی و ۳۵۳۳ نرون مهاری شد، یعنی ۲۶٫۲ درصد مهاری.

تله‌ی سوم، مرز بلوک. از حدود ۱۶۶ میلیون سیناپسی که آشکار شده، فقط نزدیک ۰٫۳ درصدشون دو سلولی رو به هم وصل می‌کنن که جسم سلولی هر دو داخل همین حجم باشه. باقی روی شاخه‌هایی می‌نشینن که لبه‌ی بلوک بریده شده‌ان، و دلیلش هم ساده‌ست؛ شاخه و برگ یک نرون قشری خیلی فراتر از یک میلی‌متر مکعب می‌ره. پس ابزار استخراج همه‌ی ۱۶۶ تکه‌ی فایل رو یکی‌یکی می‌خونه، همون ۰٫۳ درصد رو نگه می‌داره و بعد هر تکه رو دور می‌ریزه، و با همین ترفند بیشترین فضای دیسکی که لازم داره، به‌جای ۳۳ گیگابایت، ۲۰۰ مگابایت می‌شه.

آنچه از این سه صافی رد می‌شه ۱۳۴۷۳ نرون و ۷۵۴۵۲ اتصال است که مجموعا ۱۱۴۲۲۷ سیناپس حمل می‌کنن، با لایه‌ی قشری ثبت‌شده برای هر سلول.

انسان در برابر مگس

نسخه‌ی قبلی همین کار روی مغز مگس سرکه انجام شده بود و مقایسه‌شان چند چیز رو روشن می‌کنه.

گراف سلول سیناپس حافظه صد درصد در گام
مگس، هسته‌ی تداعی‌گر ۸۵۵۲ ۳۰۰۸۸۰ ۱۱٫۲ مگابایت ۲۶
قشر مغز انسان H01 ۱۳۴۷۳ ۱۱۴۲۲۷ ۱۷٫۷ مگابایت ۴۴

گراف مگس از کل مغزش نیست؛ کل اون حجم ۱۸۸۷۷۸ نرون و بیش از ۲۶ میلیون سیناپس داره و از اون، فقط بخش‌هایی که در خود مگس هم نقش حافظه‌ی تداعی‌گر دارن برداشته شده، یعنی جسم قارچی و مجموعه‌ی مرکزی، هرس‌شده تا ۸۵۵۲ نرون.

عددها رو کنار هم بگذار. گراف انسان ۱٫۶ برابر سلول بیشتری داره ولی سیناپس‌هاش کمترن؛ به ازای هر جفت متصل ۱٫۵۱ سیناپس، در برابر سیم‌کشی متراکم مگس. دلیلش اون تله‌ی سوم است. گراف مگس یک مغز کامله و H01 تکه‌ای از یک مغز عظیم، پس بیشتر اتصال‌های واقعی هر نرون قشری از حجم بیرون زده‌ان. نتیجه‌اش اینه که گراف انسان به‌جای گام ۲۶ در گام ۴۴ به صد درصد می‌رسه، یعنی کمی کندتر یاد می‌گیره و آخرش به همان جا می‌رسه.

آزمایشی که نویسنده روی کار خودش اجرا کرد

تا اینجا همه‌چیز شبیه یک خبر خوب درباره‌ی مغز انسانه. حالا بخشی که این نوشته به خاطرش نوشته شده.

نویسنده گراف مگس رو برداشته و به‌هم ریخته. ولی نه هر به‌هم ریختنی؛ همون نرون‌ها سر جاشون، همون تعداد سیناپس، وزن‌ها همون مجموعه، و مهم‌تر از همه تعداد یال ورودی و خروجی هر نرون دقیقا دست‌نخورده. فقط اینکه کدام یال به کدام نرون می‌رسه تصادفی عوض شده، اون هم برای ۹۹٫۹۴ درصد یال‌ها.

این گراف به‌هم‌ریخته در همان گام آموزشی به صد درصد رسید.

یعنی روی این کار مشخص، سیم‌کشی واقعی مغز در برابر یک گراف تصادفی که فقط درجه‌هاش با اون جور شده، هیچ برتری قابل اندازه‌گیری نداشت. آنچه کار می‌کنه شکل گراف و تنک بودنشه در مقیاسی مناسب، یعنی اینکه هر نرون فقط به تعداد کمی نرون دیگه وصله، و بازیابی رو همان حافظه‌ی تداعی‌گری انجام می‌ده که روش سوار شده. جمله‌ی خودش هم همین رو می‌گه که زیست‌شناسی یک بستر خوش‌رفتار فراهم کرده، نه یک راز.

و یک چیز دیگه هم هست که کمتر دیده می‌شه. در نسخه‌ی قبلی همین کارت مدل، ۹٫۲ امتیاز برتری برای کانکتوم ادعا شده بود، و خودش نوشته که اون عدد روی معماری دیگری اندازه‌گیری شده بوده و اینجا برقرار نیست. یعنی ادعای خودش رو پس گرفته و جایش رو با آزمایشی پر کرده که خلاف حرف اولش رو نشون می‌ده.

این کاری‌ست که آزمایش شاهد برای انجامش وجود داره. نتیجه سر جایش ماند و فقط روایتش مرد، و روایت درست کاربردی‌تر هم هست؛ چون حالا می‌دونی که برای ساختن همین سامانه به هیچ کانکتومی احتیاج نداری.

جایی که صد درصد می‌شه چهل‌وشش درصد

یک نکته در مستندات هست که به نظر ریز می‌آد و در واقع مشخصات فنی این حافظه رو تعریف می‌کنه.

هر توکن زیر اون چند کلمه‌ای بایگانی می‌شه که دقیقا پیش از اون آمده‌ان. پس پرسش هم باید همان کلمات رو بازتولید کنه تا به آدرس درست برسه. سند می‌گه «کلمه‌ی رمز این است» و پرسش هم باید با همان عبارت تمام بشه. اگه فقط بپرسی کلمه‌ی رمز چی بود، گرافی که صد درصد می‌گرفت، ۴۶ درصد می‌گیره.

این گزارش خرابی نیست، تعریف اون چیزیه که ساخته شده. این حافظه یک جدول کلید-مقدار نیست که هر طور صداش بزنی جواب بده؛ حافظه‌ای‌ست که آدرسش رو زمینه‌ی پیش از هر توکن می‌سازه. حافظه سالم سر جایش نشسته و فقط پرسش به نشانی اشتباه رسیده.

از همین جنس، محدودیت بعدی هم صریح گزارش شده. یادآوری یک واقعیت از یک سند حل شده، ولی وقتی چند واقعیت در یک سند باشه و باید درست‌ترش انتخاب بشه، دقت به ۷۲ تا ۸۰ درصد می‌افته. خود نویسنده هم این رو مسئله‌ی باز می‌دونه.

پس این چی رو نشون می‌ده

اگه بخوای یک جمله از این ماجرا برداری، اون جمله درباره‌ی مغز انسان نیست.

چیزی که نشان داده شده اینه که می‌شه حافظه‌ی بلندمدت یک مدل زبانی رو از خودش بیرون کشید و در یک انبار جداگانه گذاشت که با طول سند بزرگ نمی‌شه، و این کار روی یک مدل نیم‌میلیارد پارامتری با ۱۷٫۷ مگابایت حافظه جواب می‌ده. این برای هر کسی که با محدود بودن متنی که مدل یک‌جا می‌بینه دست‌وپنجه نرم کرده حرف مهمی‌ست، و به مغز هیچ ربطی نداره.

سهم مغز انسان در این ماجرا چیزی بود که می‌شد با یک گراف تصادفی هم گرفت، به شرط اینکه اندازه و تنکی و توزیع درجه‌اش درست باشه. و دلیل اینکه می‌تونیم این رو با اطمینان بگوییم، نه با احتیاط و نه با «شاید»، فقط یک چیزه؛ کسی زحمت اون آزمایش شاهد رو کشید و نتیجه‌اش رو منتشر کرد، حتی وقتی نتیجه علیه عنوان جذاب کار خودش بود.

مقالات مرتبط