بافت طولانی

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

کدی که قبلاً برای مواردی مثل تولید نوشتار یا ورودی‌های چندحالتی استفاده می‌کردید، بدون هیچ تغییری با بافت طولانی کار خواهد کرد.

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

برای اطلاع از اندازه پنجره بافت مدل‌های خاص، به صفحه مدل‌ها مراجعه کنید.

پنجره زمینه‌ای چیست؟

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

در Gemini 4 (gemini-4-argon)، پنجره زمینه‌ای ۱ میلیون داده‌واحد (توکن) بین داده‌واحدهای ورودی، تفکر، و خروجی مشترک است، و مدل می‌تواند بااستفاده از رمزگشایی طولانی تا ۱ میلیون داده‌واحد خروجی تولید کند. اگر داده‌واحدهای ورودی شما به‌علاوه max_output_tokens از ۱٬۰۴۸٬۵۷۶ داده‌واحد بیشتر شود، API به‌طور خودکار حد برونداد را به فضای باقی‌مانده در پنجره بافت (1,048,576 منهای داده‌واحدهای ورودی شما) محدود می‌کند. مدل‌های Gemini 3 و 2.5 قبلی از بودجه‌های ورودی ۱ میلیون و خروجی ۶۴ هزار جداگانه استفاده می‌کنند.

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

شروع به کار با بافت طولانی

نسخه‌های قبلی مدل‌های زایا فقط می‌توانستند ۸٬۰۰۰ واحد هم‌زمان را پردازش کنند. مدل‌های جدیدتر با پذیرفتن ۳۲٬۰۰۰ یا حتی ۱۲۸٬۰۰۰ واحد اطلاعاتی این محدودیت را بیشتر کردند. ‫Gemini اولین مدلی است که می‌تواند ۱ میلیون داده‌واحد (توکن) را بپذیرد.

در عمل، ۱ میلیون داده‌واحد به‌این شکل خواهد بود:

  • ‫۵۰٬۰۰۰ خط کد (با ۸۰ نویسه استاندارد در هر خط)
  • همه پیامک‌هایی که در ۵ سال گذشته ارسال کرده‌اید
  • ۸ رمان انگلیسی با طول متوسط
  • ترانویسی بیش‌از ۲۰۰ قسمت پادکست با طول متوسط

پنجره‌های زمینه‌ای محدودتر که در بسیاری از مدل‌های دیگر رایج است اغلب به راهبردهایی مانند حذف خودسرانه پیام‌های قدیمی، خلاصه کردن محتوا، استفاده از RAG با پایگاه‌های داده برداری، یا فیلتر کردن پیام‌واره‌ها برای ذخیره کردن نشانه‌ها نیاز دارند.

اگرچه این تکنیک‌ها در سناریوهای خاص همچنان ارزشمند هستند، پنجره زمینه‌ای گسترده Gemini رویکردی مستقیم‌تر را می‌طلبد: ارائه همه اطلاعات مرتبط از ابتدا. چون مدل‌های Gemini به‌طور هدفمند با قابلیت‌های بافتار عظیم ساخته شده‌اند، یادگیری درون‌بافتی قدرتمندی را نشان می‌دهند. برای مثال، Gemini بااستفاده از فقط مطالب آموزشی درون‌متنی (دستور زبان مرجع ۵۰۰ صفحه‌ای، فرهنگ لغت، و ≈۴۰۰ جمله موازی)، ترجمه کردن از انگلیسی به کالامانگ (یکی از زبان‌های پاپوآ با کمتر از ۲۰۰ گویشور) را با کیفیتی مشابه کیفیت یک زبان‌آموز انسانی که از همان مطالب استفاده می‌کند یاد گرفت. این امر نشان‌دهنده تغییر الگویی است که به‌واسطه بافت طولانی Gemini ممکن شده است، و امکانات جدیدی را ازطریق یادگیری قوی در بافت فراهم می‌کند.

موارد استفاده از بافت طولانی

درحالی‌که مورد استفاده استاندارد برای اکثر مدل‌های زایا هنوز ورودی نوشتاری است، خانواده مدل Gemini پارادایم جدیدی از موارد استفاده چندحالتی را ممکن می‌سازد. این مدل‌ها می‌توانند به‌طور بومی نوشتار، ویدیو، صدا، و تصویر را درک کنند. این مدل‌ها با Gemini API که انواع فایل‌های چندوجهی را برای راحتی بیشتر می‌پذیرد همراه هستند.

نوشتار طولانی

نوشتار ثابت کرده است که لایه هوشمندی است که بخش زیادی از شتاب پیرامون مدل‌های زبانی بزرگ را تقویت می‌کند. همان‌طور که قبلاً اشاره شد، بسیاری از محدودیت‌های عملی مدل‌های زبانی بزرگ به‌دلیل نداشتن پنجره زمینه‌ای به‌اندازه کافی بزرگ برای انجام برخی‌از وظایف بود. این امر منجر به پذیرش سریع تولید افزوده بازیابی (RAG) و سایر تکنیک‌هایی شد که به‌طور پویا اطلاعات زمینه‌ای مرتبط را به مدل ارائه می‌دهند. اکنون، با پنجره‌های زمینه بزرگ‌تر و بزرگ‌تر، روش‌های جدیدی دردسترس قرار می‌گیرند که موارد استفاده جدیدی را باز می‌کنند.

برخی‌از موارد استفاده نوظهور و استاندارد برای بافت طولانی مبتنی بر نوشتار عبارت‌اند از:

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

یادگیری درون‌بافتی چندنمونه‌ای یکی از منحصربه‌فردترین قابلیت‌هایی است که مدل‌های بافت طولانی ارائه می‌دهند. پژوهش‌ها نشان داده است که استفاده از الگوی نمونه «تک‌نمونه‌ای» یا «چندنونه‌ای» رایج، که در آن یک یا چند نمونه از تکلیف به مدل ارائه می‌شود، و مقیاس‌بندی آن به صدها، هزاران، یا حتی صدها هزار نمونه، می‌تواند به قابلیت‌های جدید مدل منجر شود. همچنین نشان داده شده است که این رویکرد چندنمونه‌ای عملکردی مشابه مدل‌هایی دارد که برای یک تکلیف خاص تنظیم دقیق شده‌اند. برای موارد استفاده‌ای که عملکرد مدل Gemini هنوز برای عرضه تولید کافی نیست، می‌توانید رویکرد چندنمونه‌ای را امتحان کنید. همان‌طور که ممکن است بعداً در بخش بهینه‌سازی بافت طولانی کاوش کنید، حافظه پنهان بافت این نوع حجم کاری بالای توکن ورودی را از نظر اقتصادی بسیار امکان‌پذیرتر می‌کند و حتی در برخی موارد تأخیر را کاهش می‌دهد.

ویدیو طولانی

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

برخی‌از موارد استفاده نوظهور و استاندارد برای بافت طولانی ویدیو عبارت‌اند از:

  • پرسش و پاسخ ویدیویی
  • حافظه ویدیو، همان‌طور که در پروژه Astra از Google نشان داده شده است
  • شرح‌نویسی ویدیو
  • سیستم‌های توصیه ویدیو، با غنی‌سازی فراداده‌های موجود با درک چندوجهی جدید
  • سفارشی‌سازی ویدیو، با نگاه کردن به مجموعه داده‌ها و فراداده‌های ویدیو منسوب و سپس حذف بخش‌هایی از ویدیوها که برای بیننده نامربوط است
  • تعدیل محتوای ویدیو
  • پردازش هم‌زمان ویدیو

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

صوت طولانی

مدل‌های Gemini اولین مدل‌های زبانی بزرگ چندوجهی بومی بودند که می‌توانستند صدا را درک کنند. ازنظر تاریخی، گردش کار توسعه‌دهنده معمولی شامل به‌هم پیوستن چندین مدل خاص دامنه، مانند مدل گفتار به نوشتار و مدل نوشتار به نوشتار، برای پردازش صدا بود. این امر منجر به تأخیر اضافی موردنیاز برای انجام چندین درخواست رفت‌وبرگشت شد و عملکرد را کاهش داد که معمولاً به معماری‌های جداشده از تنظیم چند مدل نسبت داده می‌شود.

برخی‌از موارد استفاده نوظهور و استاندارد برای بافت صوتی عبارت‌اند از:

  • ترجمه و ترانویسی هم‌زمان
  • پرسش و پاسخ پادکست / ویدیو
  • ترانویسی و خلاصه‌سازی جلسه
  • دستیارهای صوتی

در راهنمای پیام‌واره‌ها می‌توانید درباره پیام‌واره‌نویسی با فایل‌های صوتی بیشتر بدانید.

بهینه‌سازی‌های زمینه طولانی

بهینه‌سازی اصلی هنگام کار با بافت طولانی و مدل‌های Gemini استفاده از حافظه نهان بافت است. علاوه‌بر عدم امکان پردازش تعداد زیادی از توکن‌ها در یک درخواست، محدودیت اصلی دیگر هزینه بود. اگر برنامه «گپ با داده‌هایتان» دارید که در آن کاربر ۱۰ فایل PDF، یک ویدیو، و چند سند کاری بارگذاری می‌کند، در گذشته مجبور بودید با ابزار/ چارچوب پیچیده‌تر «تولید افزوده بازیابی» (RAG) کار کنید تا این درخواست‌ها را پردازش کنید و مبلغ قابل‌توجهی برای انتقال دادن کدهای به پنجره زمینه پرداخت کنید. اکنون می‌توانید فایل‌هایی را که کاربر بارگذاری می‌کند در حافظه نهان ذخیره کنید و برای ذخیره کردن آن‌ها به‌صورت ساعتی هزینه پرداخت کنید. برای مثال، هزینه ورودی / خروجی به‌ازای هر درخواست با Gemini Flash حدود ۴ برابر کمتر از هزینه ورودی / خروجی استاندارد است، بنابراین اگر کاربر به‌اندازه کافی با داده‌های خود گپ بزند، این امر منجر به صرفه‌جویی قابل‌توجهی در هزینه‌ها برای شما به‌عنوان توسعه‌دهنده می‌شود.

محدودیت‌های بافت طولانی

در بخش‌های مختلف این راهنما، درباره اینکه چگونه مدل‌های Gemini در ارزیابی‌های مختلف بازیابی سوزن در انبار کاه به عملکرد بالا دست می‌یابند صحبت کردیم. این آزمایش‌ها ابتدایی‌ترین تنظیمات را درنظر می‌گیرند، جایی که یک سوزن دارید که به‌دنبال آن هستید. در مواردی که ممکن است چندین «سوزن» یا اطلاعات خاصی داشته باشید که به‌دنبال آن‌ها هستید، مدل با همان دقت عمل نمی‌کند. عملکرد می‌تواند بسته به بافت به‌طور گسترده‌ای متفاوت باشد. این موضوع مهمی است که باید درنظر گرفته شود زیرا بین دریافت اطلاعات صحیح بازیابی‌شده و هزینه، یک موازنه ذاتی وجود دارد. می‌توانید برای یک پُرسمان حدود ۹۹٪ دریافت کنید، اما باید هر بار که آن پُرسمان را ارسال می‌کنید، هزینه رمز ورودی را پرداخت کنید. بنابراین برای بازیابی ۱۰۰ قطعه اطلاعات، اگر به عملکرد ۹۹٪ نیاز داشته باشید، احتمالاً باید ۱۰۰ درخواست ارسال کنید. این نمونه خوبی است از اینکه چگونه ذخیره‌سازی موقت بافت می‌تواند هزینه مرتبط با استفاده از مدل‌های Gemini را به‌طور قابل‌توجهی کاهش دهد و درعین‌حال عملکرد را بالا نگه دارد.

پرسشگان

بهترین مکان برای قرار دادن پُرسمان در پنجره زمینه‌ای کجاست؟

در بیشتر موارد، به‌ویژه اگر کل بافت طولانی باشد، اگر پُرسمان / پرسش خود را در انتهای پیام‌واره (پس‌از همه بافت‌های دیگر) قرار دهید، عملکرد مدل بهتر خواهد بود.

آیا وقتی به پُرسمانم توکن‌های بیشتری اضافه می‌کنم، عملکرد مدل کاهش می‌یابد؟

به‌طور کلی، اگر نیازی به ارسال کردن توکن‌ها به مدل ندارید، بهتر است از ارسال کردن آن‌ها خودداری کنید. بااین‌حال، اگر تعداد زیادی از توکن‌ها را با اطلاعاتی خاص دارید و می‌خواهید درباره آن اطلاعات سؤال بپرسید، مدل توانایی بالایی در استخراج آن اطلاعات دارد (تا ۹۹٪ دقت در بسیاری از موارد).

چگونه می‌توانم هزینه خود را با پُرسمان‌های بافت طولانی کاهش دهم؟

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

آیا طول بافت بر تأخیر مدل تأثیر می‌گذارد؟

در هر درخواست، صرف‌نظر از اندازه آن، مقدار ثابتی تأخیر وجود دارد، اما به‌طور کلی پُرسمان‌های طولانی‌تر تأخیر بیشتری (زمان تا اولین نشانه) خواهند داشت.