p99 SLAs പാലിച്ചുകൊണ്ട് ഞങ്ങളുടെ AI API ബില്ല് പകുതിയായി ഞാൻ എങ്ങനെ കുറച്ചു
ഞങ്ങളുടെ AI ബില്ല് വളരെ വേഗത്തിൽ വർദ്ധിച്ചുകൊണ്ടിരിക്കുകയായിരുന്നു. ഇത് നിലനിർത്താൻ കഴിയാത്ത ഒരു burn rate ആണെന്ന് എന്റെ CFO പറഞ്ഞു. ആ സമയത്ത്, ഞങ്ങൾ എല്ലാ കാര്യങ്ങൾക്കും GPT-4o ആണ് ഉപയോഗിച്ചിരുന്നത്. അത് നന്നായി പ്രവർത്തിച്ചുവെങ്കിലും, ചിലവ് വളരെ കൂടുതലായിരുന്നു കൂടാതെ p99 latency സ്ഥിരതയില്ലാത്തതുമായിരുന്നു.
AI മോഡൽ തിരഞ്ഞെടുപ്പിനെ ഒരു system design പ്രശ്നമായി കാണാൻ ഞാൻ തീരുമാനിച്ചു. ഏറ്റവും മികച്ച മോഡലിന് പകരം, ഞങ്ങളുടെ പ്രത്യേക SLA-കൾക്ക് ഏറ്റവും അനുയോജ്യമായ മോഡലിനായി ഞാൻ തിരയാൻ തുടങ്ങി.
ഞാൻ ആദ്യം വ്യക്തമായ ലക്ഷ്യങ്ങൾ നിശ്ചയിച്ചു: • ചാറ്റിനായി 1.5 സെക്കൻഡിൽ താഴെ p99 latency • 99.9% availability • Multi-region failover • പീക്ക് ലോഡിന്റെ 3 മടങ്ങ് throughput capacity
ഈ കണക്കുകൾ ലഭിച്ചതോടെ പരിഹാരം വ്യക്തമായി. ഓരോ ടോക്കണിനും ഏറ്റവും കുറഞ്ഞ നിരക്കുള്ള മോഡൽ എപ്പോഴും production-ന് അനുയോജ്യമാകണമെന്നില്ല. ഒരു വില കുറഞ്ഞ മോഡൽ നിങ്ങളുടെ latency ഇരട്ടിയാക്കിയാൽ, നിങ്ങൾ ഉപഭോക്താക്കളെ നഷ്ടപ്പെടുത്തും.
ഞാൻ പല മോഡലുകളും താരതമ്യം ചെയ്തു. വിലയിലുള്ള വ്യത്യാസം വളരെ വലുതായിരുന്നു. GPT-4o-യ്ക്ക് ഒരു ദശലക്ഷം output tokens-ന് $10.00 ആണ് ചിലവ്. GLM-4 Plus-ന് $0.80 ആണ്. summarization, extraction തുടങ്ങിയ ഞങ്ങളുടെ പ്രത്യേക ജോലികൾക്കായി GPT-4o-യെപ്പോലെ തന്നെ GLM-4 Plus മികച്ച രീതിയിൽ പ്രവർത്തിക്കുന്നതായി ഞങ്ങളുടെ പരിശോധനകളിൽ കണ്ടു.
ഇത് നിയന്ത്രിക്കുന്നതിനായി ഞാൻ ഒരു routing layer നിർമ്മിച്ചു. സിസ്റ്റം ഈ നിയമങ്ങൾ പാലിക്കുന്നു: • Workload type അടിസ്ഥാനമാക്കി റിക്വസ്റ്റുകൾ റൂട്ട് ചെയ്യുക • Latency വർദ്ധിച്ചാൽ ഒരു fallback model ഉപയോഗിക്കുക • ട്രാഫിക് വിവിധ റീജിയണുകളിലായി വിഭജിക്കുക • ആവർത്തിച്ചു വരുന്ന റിക്വസ്റ്റുകൾ cache ചെയ്യുക
ഞാൻ ഒരു Redis cache കൂടി ചേർത്തു. ഒരു ആഴ്ചയ്ക്കുള്ളിൽ ഇതിന്റെ hit rate 40% ആയി ഉയർന്നു. ഇത് ആവർത്തിച്ചുള്ള ക്വറികളിലുള്ള ടോക്കൺ ചിലവ് കുറയ്ക്കുകയും latency 1.4 സെക്കൻഡിൽ നിന്ന് 200 മില്ലിസെക്കൻഡിലേക്ക് കുറയ്ക്കുകയും ചെയ്തു.
ഫലങ്ങൾ: • പ്രതിമാസ inference spend 58% കുറഞ്ഞു • p99 latency 1.6s-ൽ നിന്ന് 1.18s ആയി കുറഞ്ഞു • Uptime 99.95% ആയി തുടർന്നു • Cache hit rate 42% ആയി
ഞാൻ പഠിച്ച മൂന്ന് പാഠങ്ങൾ:
- സ്വന്തമായി ഒരു evaluation suite നിർമ്മിക്കുക. പൊതുവായ benchmarks വിശ്വസിക്കരുത്. നിങ്ങളുടെ യഥാർത്ഥ production data ഉപയോഗിക്കുക.
- Rate limits സൂക്ഷ്മമായി നിരീക്ഷിക്കുക. Regional traffic അപ്രതീക്ഷിതമായ spikes ഉണ്ടാക്കിയേക്കാം.
- ഒരു kill switch നിർമ്മിക്കുക. ഒരു മോശം prompt ടോക്കൺ ഉപയോഗത്തിൽ വലിയ വർദ്ധനവിന് കാരണമായേക്കാം. Max tokens-ന് ഒരു പരിധി നിശ്ചയിച്ചത് ഒരിക്കൽ ഞങ്ങളെ $14,000 ലാഭിച്ചു.
നിങ്ങളുടെ AI ബില്ല് വളരെ കൂടുതലാണെങ്കിൽ, ആദ്യം നിങ്ങളുടെ SLA നിർവചിക്കുക. യഥാർത്ഥ ട്രാഫിക്കിൽ നിന്ന് ഒരു evaluation suite നിർമ്മിക്കുക. അതിനുശേഷം, നിങ്ങൾ നിലവിൽ അവഗണിക്കുന്ന മോഡലുകളുടെ വില പരിശോധിക്കുക.
Source: https://dev.to/bolddeck/how-i-cut-our-ai-api-bill-in-half-while-hitting-p99-slas-1l05
Optional learning community: https://t.me/GyaanSetuAi