CodeNeuron
یه راه ساده برای سبکتر کردن Context مدلها
اگه با Coding Agentها یا سیستمهای RAG کار کرده باشید، احتمالاً دیدید که بعد از مدتی حجم اطلاعاتی که همراه هر درخواست به مدل فرستاده میشه، حسابی زیاد میشه. خروجی ابزارها، نتایج Search، لاگها و حتی فایلهایی که چند بار خونده شدن، دوباره وارد Context میشن و در نهایت هم هزینه بیشتری برای پردازش پرداخت میکنید.
خود هدروم اومده دقیقاً روی همین قسمت کار کنه. این پروژه بهعنوان یک لایه بین برنامه شما و مدل قرار میگیره و قبل از ارسال درخواست، محتوای اضافی رو متناسب با نوع داده فشرده میکنه. برای مثال، خروجیهای طولانی ابزارها، نتایج تکراری Search و دادههای ساختاریافته میتونن بدون اینکه لازم باشه کل معماری Agent رو تغییر بدید، کوچکتر بشن.
یکی از ویژگیهای جالبش اینه که برای همه دادهها از یک روش ثابت استفاده نمیکنه؛ برای لاگ، کد، JSON، نتایج Search و متن معمولی مسیرهای متفاوتی داره. در حالتهای مختلف هم میتونه دادههای فشردهشده رو به شکل قابل بازیابی نگه داره تا اگر Agent دوباره به نسخه کامل اطلاعات احتیاج داشت، امکان Retrieve وجود داشته باشه.
طبق Quickstart خود پروژه، در بعضی سناریوها کاهش مصرف قابلتوجهه؛ مثلاً برای خروجی ابزارهایی که شامل لیستهای بزرگ هستن حدود ۷۰ تا ۹۰٪ و برای نتایج جستوجوی تکراری حدود ۶۰ تا ۸۰٪ صرفهجویی گزارش شده. البته این اعداد به نوع داده و تنظیمات بستگی دارن و قرار نیست هر Context ای با همین نسبت کوچک بشه.
برای استفاده هم میتونی Headroom رو بهصورت Proxy جلوی Agent قرار بدی یا از headroom wrap برای بعضی ابزارها استفاده کنی؛ در نتیجه لازم نیست برای استفاده ازش کل کدت رو بازنویسی کنی.
در واقع ایدهاش خیلی سادهست: قبل از اینکه Context رو بزرگتر و پرهزینهتر کنی، ببین واقعاً کدوم قسمتهای اطلاعات برای مدل ضروریه
لینک مخزن این پروژه : Github
#Ai
88 ·