تصور کنید برنامهای دارید که از مدل Claude استفاده میکند و یک کاربر با وجود داشتن تنها یک اعتبار، موفق میشود ۵۰ درخواست همزمان ارسال کند. این سوءاستفاده گسترده به این دلیل رخ میدهد که سیستم ابتدا موجودی را چک میکند، اما تا زمان پایان فراخوانی مدل — که چندین ثانیه طول میکشد — شمارنده را بهروز نمیکند.
بسیاری از قابلیتهای هوش مصنوعی امروز برای مدیریت هزینهها از سهمیه اعتبار ماهانه استفاده میکنند. وقتی این بررسیها در لایه برنامه و نه در پایگاهداده انجام شود، یک وضعیت رقابتی (Race Condition) ایجاد میشود. برای توسعهدهندهای که از Supabase و Postgres استفاده میکند، این یعنی کاربری که ۲۹ اعتبار از ۳۰ اعتبارش را مصرف کرده، میتواند با ارسال درخواستهای همزمان، بهطور کامل از سد محدودیت عبور کند. این چالش دقیقاً همان نقطهای است که بودجهبندی در سطح اجرا میتواند از صورتحسابهای سنگین و پیشبینینشده AI جلوگیری کند.
همانطور که در تحلیلهای قبلی ما درباره امنیت زیرساختهای مدلهای زبانی اشاره کردیم، اعتماد به لایه اپلیکیشن برای مدیریت منابع حساس، ریسکهای مالی بالایی دارد. به همین دلیل، در ۸ سپتامبر ۲۰۲۶، توسعهدهنده این سیستم یک تابع سفارشی PL/pgSQL به نام reserve_ai_credit پیادهسازی کرد. این تابع با استفاده از دستور INSERT ... ON CONFLICT تمام نوشتنها در ردیف مصرف کاربر را متوالی (Serialize) میکند. با افزودن شرط WHERE ai_usage.credits_used < p_limit مستقیماً به دستور بهروزرسانی، پایگاهداده تضمین میکند که فقط درخواستهای زیر سقف مجاز پردازش شوند.
جزئیات فنی پیادهسازی
- رزرو اتمیک: سیستم اکنون پیش از هرگونه فراخوانی مدل، یک اعتبار را رزرو میکند.
- مکانیزم بازگشت: طبق مستندات فنی، اگر فراخوانی Claude شکست بخورد یا پاسخ با ساختار موردنظر همخوانی نداشته باشد، تابع
refund_ai_creditاعتبار را بازمیگرداند. - یکپارچگی با لبه: تابع لبه (Edge Function) در Supabase اکنون در صورتی که رزرو دیتابیس مقدار null برگرداند، بلافاصله خطای ۴۲۹ (Too Many Requests) صادر میکند.
به گزارش توسعهدهندگان، این پاکسازی منجر به کشف باگهای جانبی دیگری شد؛ از جمله فیلدهای متنی بدون محدودیت که رشتههای بسیار طولانی را به پرامپتها میفرستادند و یک نقطه انتهایی (Endpoint) اشتراک که بهجای نمایش صفحه پرداخت، کاربران را با خطای ۴۰۱ از سیستم خارج میکرد. این رویکرد سختگیرانه در کنترل کیفیت، یادآور گردشکار جامع محمد صالح برای حذف تاییدات صوری کد است که بر دقت در هر مرحله از اجرا تاکید دارد.
این تغییر، فرض بنیادی مدیریت سهمیه در هوش مصنوعی را عوض میکند. برخورد با بررسی اعتبار بهعنوان یک منطق ساده در برنامه، در واقع شبیه به یک «پیشنهاد مودبانه» است که منجر به صورتحسابهای غیرمنتظره ابری میشود. اجرای واقعی محدودیتها باید بهصورت اتمیک (Atomic) — یعنی عملیاتی که یا بهطور کامل انجام میشود یا اصلاً انجام نمیشود — در پایگاهداده رخ دهد تا جلوی اکسپلویتهای همزمانی گرفته شود.
برای توسعهدهندگان، این به معنای انتقال «دروازه کنترل» به اولین نقطه ممکن در چرخه حیات درخواست است. تا زمانی که یک مدل زبانی بزرگ (LLM) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب میدهد — فراخوانی شود، هزینه باید پیشتر در دفتر کل ثبت شده باشد.
گام بعدی شما
- تمام سیستمهای محدودکننده نرخ (Rate-limiting) خود را که دارای اثرات جانبی کند (مانند APIهای شخص ثالث) هستند، بررسی کنید.
- برای تست استواری دروازههای کنترلی، از ابزارهای تست همزمانی بالا (High-concurrency) استفاده کنید.
- منطق کسر اعتبار را از لایه کد به لایه دیتابیس منتقل کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما درباره تراشههای Blackwell مراجعه کنید.




گفتگو