رفتن به محتوای اصلی
کوهستان
توضیح کوهستانچاه‌های توجه· 7 دقیقه مطالعه· در هوش مصنوعی

چگونه نرمال‌سازی سافت‌مکس چاه‌های توجه را ایجاد می‌کند و مانع از فروپاشی بافتار در پردازش جریانی می‌شود

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

به قلم آزاده ابراهیمی

به‌طور خلاصه

  • مدل‌های زبانی از تابع سافت‌مکس بهره می‌برند که ایجاب می‌کند مجموع اوزان توجه دقیقاً ۱٫۰ باشد؛ امری که مدل را ناچار به ریختن مقادیر سرریز روی نخستین توکن‌ها می‌کند.
  • روش‌های سنتی بهینه‌سازی حافظه این توکن‌های آغازین را دور می‌ریختند که این کار با برهم زدن مخرج محاسبات، خروجی مدل را فوراً به متونی نامفهوم بدل می‌کرد.
  • فناوری StreamingLLM با حفظ همیشگی چهار توکن نخست در حافظه موقت، توازن محاسباتی را تثبیت کرده و امکان تولید بی‌پایان متن را بدون نیاز به آموزش دوباره فراهم می‌سازد.

وقتی یک مدل زبانی بزرگ گفت‌وگویی پیوسته را پردازش می‌کند، حافظه موقت درونی آن موسوم به کَش کلید-مقدار (KV cache) به ازای هر توکن حدود ۱۲ کیلوبایت حجیم‌تر می‌شود. در یک بافتار ۸ هزار توکنی، نشست یک کاربر حدود ۱۰۰ مگابایت حافظه می‌گیرد؛ اما تعمیم این فرآیند به هزاران کاربر یا نشست‌های چندروزه، فوراً تجهیزات پردازشی را با کمبود حافظه مواجه می‌کند.[3]

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

با این حال، این حذف ساده‌انگارانه به خطایی فاجعه‌بار می‌انجامید. درست در لحظه‌ای که نخستین توکن‌های توالی از حافظه پاک می‌شدند، کارایی مدل فرو می‌پاشید. سیستم به‌جای تولید متن معنادار، ناگهان خروجی‌هایی حاوی کاراکترهای نامفهوم یونیکد، خط‌های خالی پی‌درپی و عبارات نامربوط و تکراری تولید می‌کرد.[3]

در اواخر سال ۲۰۲۳، تیمی از پژوهشگران موسسه فناوری ماساچوست (ام‌آی‌تی)، متا ای‌آی و دانشگاه کارنگی ملون مقاله‌ای منتشر کردند که ریشه این فروپاشی را به‌طور دقیق تبیین می‌کرد. این نقصان ماهیتی معنایی نداشت، بلکه پیامد یک ناهماهنگی ریاضی در بطن معماری ترنسفورمر بود.[1]

حساب و کتاب در مکانیسم توجه

در کانون هر مدل زبانی مدرن، مکانیسم توجه قرار دارد که میزان تمرکز توکن جدید روی واژگان قبلی را معین می‌سازد. این توزیع از طریق تابعی به نام سافت‌مکس کنترل می‌شود که طبق قاعده دقیق ریاضی‌اش، مجموع اوزان توجه در سرتاسر توکن‌های پیشین باید دقیقاً برابر با عدد ۱٫۰ باشد.[4]

الزام ریاضی سافت‌مکس برای رسیدن جمع اوزان به ۱٫۰ مدل را ناگزیر به انباشت وزن مازاد در نقطه‌ای امن می‌کند.

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

پژوهشگران دریافتند که «حتی زمانی که پرسمان جاری تطابق معنایی پررنگی در میان توکن‌های پیشین پیدا نمی‌کند، مدل ناگزیر است این مقادیر بلااستفاده را در جایی بارگذاری کند تا حاصل‌جمع به عدد یک برسد». از این رو، مدل مجبور است این جرم ریاضی مازاد را فارغ از معنای واقعی واژه بر سر مقصدی بریزد.[1]

تیم پژوهشی با بررسی بصری مدل‌هایی نظیر لاما ۲ متوجه یک بی‌قاعدگی پایدار شدند: در تقریباً تمامی لایه‌ها و سرهای توجه، سهم هنگفتی از امتیاز توجه همواره و به شکلی ثابت به همان نخستین توکن‌های توالی واگذار می‌شد.[1]

کشف چاه‌های توجه

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

آزمایشگاه هان در ام‌آی‌تی توضیح داد: «ما دریافتیم که مدل‌ها حجم عظیمی از توجه را به عنوان چاه‌های توجه روی توکن‌های اول می‌ریزند تا توجه بلااستفاده را در آن انبار کنند، زیرا سافت‌مکس ایجاب می‌کند مجموع اوزان همیشه یک شود». این واژگان حامل اطلاعات زمینه‌ای نبودند و صرفاً حکم تکیه‌گاه‌های فرمولی را داشتند.[2]

این یافته بی‌درنگ نشان داد که چرا روش پنجره لغزان به چنان شکستی دچار می‌شد. سیستم هنگام پاک کردن قدیمی‌ترین توکن‌ها برای آزادسازی رم، ناخواسته چاه‌های توجه را دور می‌انداخت و انبار ذخیره سرریز توجه را از بین می‌برد.[1]

با حذف چاه‌هایی که مازاد بار ریاضی را جذب می‌کردند، مخرج کسر سافت‌مکس دچار اختلال اساسی می‌شد. توجه مصرف‌نشده به‌ناچار روی توکن‌های باقی‌مانده در پنجره لغزان پخش می‌شد و جهش ناشی از این توجه‌های نامربوط، نمایه‌های درونی مدل را متلاشی می‌کرد.[3]

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

تحقیقات بعدی ابعاد عمیق‌تری از علت این فروپاشی کامل را روشن کرد. بررسی‌ها نشان دادند چاه‌های توجه از پدیده «بیش‌آمیزی» پیشگیری می‌کنند؛ وضعیتی نامطلوب که طی آن لایه‌های عمیق در توالی‌های طولانی تمایز میان توکن‌های جداگانه را محو می‌سازند.[6]

چاه توجه با دور کردن توجه غیرضروری از بقیه توالی، جلوی گسترش نویز را می‌گیرد و تضمین می‌کند سیگنال اصلی در میان پارازیت‌های سراسر بافتار گم نشود.[6]

چارچوب نوآورانه StreamingLLM

با درک این مکانیسم، پژوهشگران راهکاری شگفت‌انگیز و ساده موسوم به StreamingLLM ارائه دادند. آنها به‌جای تغییر در بطن معماری یا آموزش پرهزینه مجدد، رویکرد تخلیه کَش را بر اساس نیاز ریاضی چاه‌ها بازتنظیم کردند.[1]

روش StreamingLLM بر پایه سیستم کَش دوگانه کار می‌کند. این سازوکار بردارهای کلید-مقدار چهار توکن نخست را همواره تثبیت می‌کند تا به عنوان چاه عمل کنند، و در کنار آن یک پنجره لغزان از توکن‌های متأخر را برای حفظ پیوستگی کلامی نگه می‌دارد.[1]

هرگاه کَش پر شود، StreamingLLM توکن‌های میانی را حذف می‌کند؛ بخش‌هایی که میان لنگرهای ابتدایی و پنجره متأخر قرار دارند. از آنجا که چهار توکن نخست حفظ می‌شوند، مخرج سافت‌مکس تعادل خود را از دست نمی‌دهد و توزیع توجه موزون باقی می‌ماند.[5]

با این حال، حذف توکن‌های میانی چالشی در کدگذاری موقعیت توکن‌ها ایجاد کرد. مدل‌ها ترتیب واژگان را با اندیس‌های مکانی مطلق می‌شناسند؛ اگر توکن‌های ۵ تا ۱۰۰ دور ریخته شوند، توکن صد و یکم با حفظ موقعیت خود یک جهش عددی بزرگ پدید می‌آورد.[1]

چارچوب StreamingLLM مصرف حافظه را با نگه‌داشتن هم‌زمان لنگرهای ساختاری و بافتار متأخر در اندازه‌ای ثابت نگاه می‌دارد.

فناوری StreamingLLM این مانع را با بازتعریف بافتار مکانی برطرف ساخت. سیستم به‌جای تکیه بر موقعیت مطلق کلمات در متن اصلی، شماره‌گذاری را صرفاً بر اساس موقعیت حضور توکن درون کَش انجام می‌دهد تا زنجیره متن از نگاه مدل، پیوسته و بدون گسست جلوه کند.[2]

بازدهی این تغییر محاسباتی کوچک، شگفت‌انگیز بود. با حفظ چهار توکن اولیه، مدل‌هایی که پس از چند هزار واژه فرومی‌پاشیدند، توانستند جریان‌های نامحدودی از متون را پردازش کنند؛ بی آنکه میزان «سردرگمی» (شاخص ابهام مدل) دچار جهش شود.[1]

جهش پردازش به مقیاس میلیون‌ها توکن

در ارزیابی‌ها، محققان نشان دادند StreamingLLM پردازش پایدار بیش از ۴ میلیون توکن را در مدل‌هایی همچون لاما ۲، فالکون و پیتیا میسر می‌سازد؛ آن هم بدون نیاز به هیچ‌گونه بازنشانی کَش یا تیونینگ تکمیلی.[1]

این دستاورد در مدل‌های مختلف لاما ۲ با ابعاد ۷، ۱۳ و ۷۰ میلیارد پارامتر و نیز مدل‌های MPT و پیتیا بازآزمایی شد و در تمام آزمون‌ها، حضور چهار توکن چاه مانع از انفجار میزان سردرگمی گردید.[1]

پایداری یادشده با میزان حافظه ثابت به دست آمد. به علت اینکه ابعاد کَش هرگز از مجموع چهار توکن ابتدایی و توکن‌های پنجره لغزان فراتر نمی‌رفت، پیچیدگی حافظه ثابت ماند و اجرای نامحدود یک گفت‌وگو روی تنها یک پردازنده گرافیکی محقق شد.[3]

این سازوکار صرفه‌جویی عظیمی در بار محاسباتی به ارمغان آورد. پیش از این، حفظ بافتار طولانی تنها با «پنجره لغزان با بازمحاسبه» ممکن بود که در هر گام کَش را از صفر می‌ساخت، اما StreamingLLM این هزینه مضاعف را یکسره برچید.[4]

طبق نتایج ام‌آی‌تی، StreamingLLM تا ۲۲٫۲ برابر سرعت اجرای بالاتری نسبت به روش بازمحاسبه ثبت کرد. این جهش، اجرای گفتگوهای چندمرحله‌ای نامحدود را از سطح یک فرضیه به ابزاری کاربردی روی تراشه‌های مصرفی بدل ساخت.[1]

پذیرش در صنعت و دگرگونی فرآیندها

اکوسیستم هوش مصنوعی به‌سرعت از این سازوکار استقبال کرد. پلتفرم هاگینگ فیس این مکانیسم را به کتابخانه اصلی ترنسفورمرز خود افزود تا توسعه‌دهندگان بتوانند دستیارهای متنی را بدون افت پایداری راه‌اندازی کنند.[3]

طرح‌واره: با تفکیک طول آموزش اولیه از طول استنتاج، شبکه‌ها اکنون می‌توانند جریان‌های پیوسته داده را به شکل نامحدود تحلیل کنند.

انویدیا نیز StreamingLLM را در نرم‌افزار بهینه‌سازی TensorRT-LLM گنجاند و در اسناد توسعه خود کارایی آن را برای پایداری دستیارهای متنی روزمره تأیید کرد.[5]

این دستاورد طول بافتار در مرحله پیش‌آموزش را از طول تولید در زمان استنتاج جدا کرد. پیش‌تر هوش مصنوعی به همان طول توالی آموزش‌دیده محدود بود، اما اکنون مدلی با بافتار ۸ هزار توکنی می‌تواند میلیون‌ها کلمه را پیاپی تولید نماید.[4]

اکنون تلاش‌ها برای بهبود بیشتر این مکانیسم در جریان است. پژوهش‌ها نشان داده‌اند تعریف یک توکن اختصاصی و آموزش‌پذیر برای نقش چاه در طول پیش‌آموزش، عملکردی پایدارتر از اختصاص دادن توکن‌های متنی معمولی به همراه دارد.[1]

بررسی تیم ام‌آی‌تی نشان داد با تعبیه چنین توکن اختصاصی در فرآیند آموزش از صفر، تنها یک توکن برای مهار سرریز ریاضی سافت‌مکس کفایت می‌کند؛ در حالی که مدل‌های پیشین به چهار توکن نیاز داشتند.[2]

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

برتری چشمگیر StreamingLLM در بی‌نیازی کامل آن به فاین‌تیونینگ نهفته است. این متد یک راهکار استنتاجی محض است که روی هر مدل خودبازگشتی مستقر می‌شود و به همین خاطر در فضای متن‌باز فراگیر شده است.[1]

برتری چشمگیر StreamingLLM در بی‌نیازی کامل آن به فاین‌تیونینگ نهفته است.

با گذار هوش مصنوعی به سوی کارگزارهای مستقل و دائمی که نیازمند تحلیل مستمر جریان‌های ویدیویی یا گفتگوهای پیوسته هستند، مدیریت حافظه بزرگ‌ترین سد راه است؛ تبیین نقش لنگرهای توجه دقیقاً همان سوپاپ اطمینانی است که این سامانه‌ها برای ادامه کار به آن متکی هستند.[6]

این تحلیل چگونه انجام شد

روش
یکسان‌سازی پیچیدگی حافظه و الگوهای حفظ توکن در سه رویکرد مدیریت بافتار (توجه متراکم، پنجره لغزان ساده و StreamingLLM) با هدف جداسازی ریشه ریاضی پدیده فروپاشی بافتار.
یافته
از آنجا که تابع سافت‌مکس ایجاب می‌کند مجموع اوزان توجه دقیقاً ۱٫۰ باشد، توکن‌های نخستین به جای محتوای معنایی نقش مخرج الزامی رابطه ریاضی را ایفا می‌کنند؛ حذف آنها تعادل معادله را نابود می‌سازد و این ثابت می‌کند فروپاشی بافتار یک اختلال ساختاری در محاسبات است نه از دست رفتن داده‌های معنایی.
داده‌هایی که بر پایهٔ آن‌ها کار کردیم
  • تخلیه ساده کَش در پنجره لغزان: Evicts initial tokens, causing immediate perplexity explosion — arXiv
  • نگه‌داشت کَش دوگانه در StreamingLLM: Retains 4 initial tokens plus recent window, enabling 4M+ tokens — arXiv
محدودیت‌های این تحلیل
این تحلیل مبتنی بر مدل‌های خودبازگشتی با توجه سافت‌مکس استاندارد است؛ مدل‌هایی که از سازوکارهای دیگر نرمال‌سازی مانند Softmax1 یا Softpick بر پایه ReLU استفاده می‌کنند ممکن است چنین وابستگی ساختاری به توکن‌های اولیه نشان ندهند.

اصطلاحات کلیدی

چاه توجه (Attention Sink)
نخستین توکن‌های دنباله که سرریز وزن‌های ریاضی را در سازوکار توجه جذب می‌کنند و نقشی فرمولی دارند نه معنایی.
نرمال‌سازی سافت‌مکس (Softmax Normalization)
تابعی ریاضی در شبکه‌های عصبی که برداری از اعداد را به مقادیر احتمالاتی تبدیل می‌کند، به گونه‌ای که مجموع آنها همواره دقیقاً ۱٫۰ شود.
کَش کلید-مقدار (KV Cache)
بخشی از حافظه موقت مدل‌های زبانی که بازنمایی محاسباتی توکن‌های پیشین را برای پیشگیری از محاسبه دوباره ذخیره می‌سازد.
توجه با پنجره لغزان (Sliding Window Attention)
روشی در مدیریت رم که تنها بخش متأخر توکن‌ها را نگه می‌دارد و اطلاعات دورتر را همزمان با رشد دیالوگ پاک می‌کند.
سردرگمی یا پرپلکسیتی (Perplexity)
شاخصی برای ارزیابی میزان توانایی مدل در پیش‌بینی متن؛ افزایش ناگهانی آن نشان‌دهنده سقوط کیفیت و نامفهوم شدن خروجی است.

پرسش‌های متداول

آیا StreamingLLM به مدل حافظه‌ای نامحدود می‌دهد؟

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

چرا مدل‌ها مشخصاً نخستین توکن‌ها را به عنوان چاه انتخاب می‌کنند؟

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

آیا می‌توان این شیوه را روی مدل‌های کنونی پیاده کرد؟

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

اگر چهار توکن نخست حاوی دستورات پرامپت اصلی باشند چه رخ می‌دهد؟

در این وضعیت دستورات اولیه همیشه در کَش ثابت می‌مانند و این بدان معناست که سیستم حتی در یک مکالمه طولانی چند روزه، خط‌مشی‌های بنیادین خود را از یاد نخواهد برد.

بررسی عمیق دیدگاه‌ها

عمل‌گرایان معماری

مهندسانی که راهکار مدیریت کَش در زمان استنتاج را بهترین شیوه برای حل محدودیت سافت‌مکس می‌دانند.

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

اصلاح‌طلبان بنیادین

پژوهشگرانی که برای حذف پدیده چاه‌های توجه، بر جایگزینی کامل تابع سافت‌مکس با فرمول‌های جدید اصرار دارند.

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

بهینه‌سازان سخت‌افزار

توسعه‌دهندگانی که بر فشرده‌سازی حداکثری کَش جهت جا دادن بافتارهای طولانی در پردازنده‌های گرافیکی تمرکز دارند.

برای طراحان سامانه‌های سخت‌افزاری، شناخت چاه‌های توجه یک پیشرفت ارزشمند است اما مشکل کمبود شدید رم پردازنده‌ها را یکسره حل نمی‌کند. چرا که حتی در مدل‌های پنجره لغزان نیز نگه‌داشتن بافتار متأخر کافی برای تکالیف دشوار به ظرفیت حافظه هنگفتی محتاج است. از این رو این گروه StreamingLLM را با روش‌های کوانتیزاسیون ۴ بیتی ترکیب می‌کنند تا وسعت پنجره لغزان را تا جای ممکن بالا ببرند و حجم واژگان حفظ‌شده را پیش از حذف به حداکثر برسانند.

عمل‌گرایان معماری 50%اصلاح‌طلبان بنیادین 25%بهینه‌سازان سخت‌افزار 25%
عمل‌گرایان معماری
مهندسانی که راهکار مدیریت کَش در زمان استنتاج را بهترین شیوه برای حل محدودیت سافت‌مکس می‌دانند.
اصلاح‌طلبان بنیادین
پژوهشگرانی که برای حذف پدیده چاه‌های توجه، بر جایگزینی کامل تابع سافت‌مکس با فرمول‌های جدید اصرار دارند.
بهینه‌سازان سخت‌افزار
توسعه‌دهندگانی که بر فشرده‌سازی حداکثری کَش جهت جا دادن بافتارهای طولانی در پردازنده‌های گرافیکی تمرکز دارند.

دیدگاه‌هایی که این گزارش پوشش نداده

  • تأمین‌کنندگان زیرساخت آموزش مدل‌ها
  • پیاده‌سازان راهکارهای سازمانی هوش مصنوعی

منابع

پوشش منابع

6 منبع

3 دیدگاه شناسایی‌شده

عمل‌گرایان معماری 50%اصلاح‌طلبان بنیادین 25%بهینه‌سازان سخت‌افزار 25%
  1. [1]arXivعمل‌گرایان معماری

    Efficient Streaming Language Models with Attention Sinks

    مطالعه در arXiv →
  2. [2]MIT Han Labعمل‌گرایان معماری

    Efficient Streaming Language Models with Attention Sinks

    مطالعه در MIT Han Lab →
  3. [3]Hugging Faceبهینه‌سازان سخت‌افزار

    Attention Sinks in Practice

    مطالعه در Hugging Face →
  4. [4]Continuum Labsبهینه‌سازان سخت‌افزار

    StreamingLLM: Efficient Streaming Language Models with Attention Sinks

    مطالعه در Continuum Labs →
  5. [5]NVIDIA Developerعمل‌گرایان معماری

    Introduction to StreamingLLM in TensorRT-LLM

    مطالعه در NVIDIA Developer →
  6. [6]تیم سردبیری کوهستاناصلاح‌طلبان بنیادین

    تحلیل تیم سردبیری کوهستان

    مطالعه در تیم سردبیری کوهستان →

نظرات

همیشه در جریان باشید

هر زاویه. هر روز.

اخبار هوش مصنوعی با پوشش کامل منابع و تحلیل دیدگاه‌ها، هر روز و رایگان.