Input tokens
توکن ورودی تمام اطلاعاتیه که قبل از هر درخواست به Model فرستاده میشه و چون کل Session بارها و بارها ارسال میشه، معمولاً بخش بزرگی از هزینهی کار با LLM ها از همین Input Tokens میاد.
توکن ورودی یا Input Tokens همون Tokenهایی هستن که Harness قبل از هر درخواست برای Model میفرسته. یعنی هر چیزی که مدل باید بخونه، مثل System Prompt، تاریخچهی مکالمه، نتیجهی Toolها و هر اطلاعات دیگهای که داخل Context قرار داره.
معمولا هزینهی Input Tokens از Output Tokens کمتره، چون مدل فقط اونها رو میخونه و لازم نیست چیزی تولید کنه.
نکتهی مهم اینه که توی AI Coding بیشتر هزینهای که پرداخت میکنی، مربوط به همین Input Tokens ـه، نه جوابی که مدل تولید میکنه.
دلیلش هم اینه که Model یه سیستم Statelessـه و چیزی از درخواست قبلی یادش نمیمونه. پس Harness مجبور میشه قبل از هر Model Provider Request دوباره کل Session رو براش بفرسته.
مثلاً اگه الان توی پیام پنجاهم باشی، مدل فقط پیام آخرت رو نمیبینه بلکه هر چیزی که از اول این Session رد و بدل شده دوباره براش ارسال میشه. در نتیجه ممکنه مدل فقط چند صد Output Token تولید کنه، ولی قبلش صدها هزار Input Token رو دوباره خونده باشه.
برای اینکه این هزینه کمتر بشه، Model Providerها از چیزی به اسم Prefix Cache استفاده میکنن. اگه بخش زیادی از Context نسبت به درخواست قبلی تغییری نکرده باشه، لازم نیست هزینهی کاملش دوباره حساب بشه و با قیمت خیلی کمتری محاسبه میشه.
با این حال، اگه Session خیلی طولانی بشه، حتی Prefix Cache هم همیشه کافی نیست. اون موقع بهترین راه اینه که Context رو کوچیکتر کنی. ( یه راه ساده اش شروع کردن یه Session جدیده )