ابتدای ماه وقتی واحد مالی صورتحساب را برایم فرستاد، مدتی طولانی به آن رشته اعداد خیره شدم. ماه گذشته کل هزینه API مدلهای بزرگ از بیش از چهار هزار به دوازده هزار جهش کرد، در حالی که آمار حجم فراخوانیهای پنل مدیریتی کمتر از نصف افزایش نشان میداد. پول اضافی از کسبوکار حاصل نشده بود، بلکه از جزئیات مهندسی ما نشت کرده بود. این مقاله این بازبینی را باز میکند: چهار منبع هزینه پنهان، که هر کدام از قبلی پنهانتر است.
هزینه پنهان یک: مدل پرچمدار در حال انجام کارهای خام است
کاری که ما انجام میدهیم دستهبندی تیکتهای پشتیبانی مشتری در تجارت الکترونیک است و روزانه دهها هزار پیام کاربر باید برچسبگذاری شود. قبلاً برای راحتی، همه درخواستها از همان یک مدل پرچمدار عبور میکردند، با این توجیه که «دقت پایدار است». مشکل اینجاست که هشتاد درصد این درخواستها دستهبندی دوتایی از نوع «مرجوعی یا تعویض» است و اصلاً به توانایی استدلال مدل پرچمدار نیازی ندارد. قیمت واحد ورودی و خروجی مدل پرچمدار چند برابر مدل سبک است؛ استفاده از آن برای چنین کاری مثل فرستادن یک خودروی آفرود برای پیک است.
بعداً وظایف سبک را به token8341 سپردیم تا بر اساس وظیفه بهطور خودکار مدل انتخاب شود؛ وظایف دستهبندی به مدل کوچک میروند و تنها مواردی که شامل قضاوت در اختلافات چندنوبتی هستند به مدل پرچمدار ارتقا مییابند. صورتحساب همان ماه کاهش یافت. نکته کلیدی اینجا صرفهجویی در هزینه نیست، بلکه لایهبندی مدل است. پلتفرم تجمیع API مدلهای بزرگ token8341 از مسیریابی بر اساس وظیفه پشتیبانی میکند؛ یک Key پشت آن چندین مدل دارد و نیازی به نگهداری مجموعه SDK جداگانه برای هر مدل نیست.
هزینه پنهان دو: سوءاستفاده از پنجره زمینه
رابط گفتگوی ما بهطور پیشفرض بیست نوبت آخر تاریخچه را کامل در prompt میریزد. در محیط تست کسی توجه نمیکرد و در محیط تولید هم همینطور اجرا میشد. نتیجه این بود که یک درخواست «سلام»، در واقع بیش از دو هزار توکن ورودی داشت. API مدلهای بزرگ بر اساس توکن ورودی و خروجی صورتحساب میشود؛ هر چه تاریخچه طولانیتر باشد، هر نوبت برای محتوای تکراری پول میپردازید. این هزینه در صورتحساب به چشم نمیآید، اما ضرب در حجم فراخوانی روزانه بسیار قابل توجه میشود.
راه توقف خونریزی ساده است: تاریخچه را خلاصه و فشرده کنید، پس از پنج نوبت بهصورت غلتان خلاصه شود و تنها موجودیتهای کلیدی حفظ شوند. پس از تغییر، میانگین توکن ورودی هر درخواست حدود شصت درصد کاهش یافت و کیفیت خروجی افت محسوسی نداشت.
هزینه پنهان سه: طوفان تلاش مجدد
این مورد بدترین است. ما در ابتدا عقبنشینی برای تلاش مجدد نداشتیم؛ به محض لرزش سمت بالادست، کلاینت فوراً تلاش مجدد میکرد، تلاش مجدد دوباره شکست میخورد و باز تلاش مجدد، در سه ثانیه یک درخواست هفتهشت بار ارسال میشد. سمت بالادست بر اساس تعداد فراخوانی صورتحساب میکند و تلاشهای مجدد ناموفق هم پول حساب میشوند. یک بار گره منطقهای یک مدل ده دقیقه لرزید و تنها تلاشهای مجدد چند صد هزینه برداشت.
اکنون به عقبنشینی نمایی و سقف تلاش مجدد تغییر کرده و همزمان از توانایی اتصال یکپارچه چند مدل استفاده میکنیم؛ در صورت تایماوت مدل اصلی بهطور خودکار به مدل پشتیبان سوئیچ میشود و به تلاش مجدد سرسختانه کلاینت تکیه نمیکنیم. این کاری است که پلتفرم تجمیع API هوش مصنوعی باید انجام دهد، نه اینکه کد کسبوکار خودش آن را بر دوش بکشد.
هزینه پنهان چهار: پراکندگی چند Key و عدم تجمیع مصرف
تیم ما در مجموع ششهفت Key درخواست کرده بود؛ تست، تولید و تست فشار موقت همه با هم مخلوط بودند. آخر ماه میخواستیم ببینیم هر خط کسبوکار چقدر خرج کرده و اصلاً جور درنمیآمد. پراکندگی چند Key نه تنها مدیریت را دشوار میکند، بلکه بدتر از آن این است که نمیتوانید مصرف را تجمیع کنید و در نتیجه نمیتوانید نسبتدهی هزینه انجام دهید. اینکه کدام مدل پول میسوزاند و کدام کسبوکار هدر میدهد، همه جعبه سیاه است.
پس از تغییر به پلتفرم تجمیع API مدلهای بزرگ token8341، همه فراخوانیها از یک ورودی عبور میکنند و مصرف بر اساس پروژه، مدل و Key قابل تفکیک است. داشبورد مصرف token8341 بهطور مستقیم توزیع مصرف توکن هر مدل را نشان میدهد و اینگونه مسیریابی لایهای و استراتژی فشردهسازی فوق پشتوانه دادهای پیدا کردند. بدون تجمیع، سه مورد قبلی همه حدس و گمان هستند.
پنج اقدام توقف خونریزی
یک، درخواستها را بر اساس پیچیدگی وظیفه درجهبندی کنید، کارهای خام را به مدل سبک بسپارید و نگذارید مدل پرچمدار دستهبندی انجام دهد. دو، تاریخچه گفتگو را بهصورت خلاصه غلتان درآورید و بیست نوبت متن اصلی را کامل در آن نریزید. سه، تلاش مجدد را با عقبنشینی نمایی و سقف همراه کنید، در تایماوت از مسیریابی مدل به پشتیبان سوئیچ کنید و به کلاینت تکیه نکنید. چهار، همه فراخوانیها را به یک ورودی هدایت کنید و مصرف را بر اساس خط کسبوکار تجمیع کنید. پنج، هر ماه یک مقایسه قیمت مدل انجام دهید؛ تفاوت هزینه واحد یک وظیفه یکسان روی مدلهای مختلف بزرگتر از تصور است.
بزرگترین درس این بازبینی این است که بخش عمده هزینه API مدلهای بزرگ در قیمت واحد نیست، در نحوه فراخوانی است. قیمت واحد را نمیتوانید کاهش دهید، اما نحوه فراخوانی را میتوانید تغییر دهید. ارزش پلتفرم تجمیع API مدلهای بزرگ token8341 در این موضوع این است که مسیریابی مدل، تجمیع مصرف و اتصال یکپارچه چند مدل را در یک ورودی ادغام میکند تا هزینه قابل مشاهده و قابل نسبتدهی باشد. در مورد اصطلاح «کارخانه 8341Token»، این نام داخلی ما برای این سیستم زمانبندی توان محاسباتی سبز است؛ گرههای توان محاسباتی شرق و غرب بر اساس نیاز زمانبندی میشوند و توان محاسباتی GPU بهصورت کشسان مقیاس میپذیرد. این بخش نسبت زمانبندی مشخصی را بهطور رسمی افشا نکرده و من چیزی از خودم نمیسازم.
اگر شما هم هر ماه صورتحساب شما را به چالش میکشد، ابتدا تجمیع مصرف را راه بیندازید و بعد لایهبندی مدل را ببینید. اگر ترتیب را برعکس کنید، حتی نمیدانید پولی که صرفهجویی شده از کجا صرفهجویی شده است.
نویسنده: ژائو چیمینگ
تاریخ انتشار: ۴ نوامبر ۲۰۲۶