BlogKoszty
Przypisywanie wydatków na modele zespołom i pracy, które je spowodowały
Żeby wyjaśnić rachunek za LLM, przypisuj każde zapytanie w chwili, gdy przechodzi przez bramkę: klucz dla każdego zespołu lub usługi, tagi dla funkcji i zadania oraz identyfikator zapytania, który da się połączyć z wynikiem biznesowym. Wyceniaj te zapytania tak, jak rozlicza je twoja umowa, koszty, których nie spowodowało żadne pojedyncze zapytanie, rozdzielaj według reguły znanej wszystkim, a ponowienia i porzucone przebiegi licz jako koszt, a nie szum. Potem co miesiąc uzgadniaj sumę z raportem dostawcy. Wynik to wydatki na zespół i zadanie oraz koszt zaakceptowanego wyniku.
Oznaczaj zapytania na wejściu, a nie po przyjściu faktury
Faktura dostawcy pokazuje modele i tokeny, a nie zespoły. Brakujący kontekst może dodać bramka. Log wydatków LiteLLM zapisuje na przykład dla każdego zapytania zahashowany klucz, wewnętrznego użytkownika i zespół, do których należy klucz, tagi zapytania, model i użyty endpoint. Wydaj klucz dla każdego zespołu lub usługi i wymagaj tagów dla funkcji i zadania. Dokumentacja oznacza śledzenie wydatków i raporty według tagów jako funkcję wersji enterprise, więc sprawdź licencję, zanim na nich oprzesz rozliczenia.
O tym, czy tagi się sprawdzą, decydują dwa szczegóły. LiteLLM ostrzega, że pole użytkownika podane w treści zapytania jest deklarowane przez samego wywołującego i może przesunąć wydatki poza właściciela klucza, więc przypisuj według klucza, a nie tego pola. Osobne workspace'y lub klucze u dostawcy dla każdego zespołu dają też drugi, niezależny podział: Usage and Cost API Anthropic grupuje użycie według workspace'u i klucza API.
Wyceniaj zapytania tak, jak wystawia się fakturę
Bramki szacują koszt na podstawie tabeli cen. LiteLLM używa swojej mapy kosztów modeli, oznacza zapytania wycenione na zero z powodu brakującej stawki i opisuje procedurę dla rozbieżności kosztów: wyrównaj zakresy czasu, porównaj kategorie tokenów łącznie z cache, a potem ustal, czy różnica wynika z pobierania danych, wzoru czy mapy cen. Wpisz do tej tabeli wynegocjowane stawki, ceny odczytu i zapisu cache oraz warunki zobowiązań zakupowych, inaczej liczba każdego zespołu będzie błędna w tę samą stronę.
Licz ponowienia, fallbacki i porzucone przebiegi
Zapytanie, które użytkownik widzi raz, może zostać rozliczone kilka razy. Dokumentacja LiteLLM zaznacza, że liczba zapytań w logu wydatków obejmuje osobno każdą próbę wysłaną do dostawcy, a każdy wiersz zapisuje, czy obsłużył go fallback. Przebiegi agentów, które się zapętlają i kończą porażką, zużywają tokeny bez efektu. Pokazuj to jako osobną pozycję dla każdego zespołu. To bywa najtańsza dostępna oszczędność, bo nikt tych wydatków nie chciał.
Od kosztu zapytania do kosztu zaakceptowanego wyniku
Koszt zapytania nagradza tanie odpowiedzi, z których nikt nie korzysta. Połącz identyfikatory zapytań z wynikiem, który firma już rejestruje, na przykład z ekstrakcją przyjętą bez poprawek albo szkicem odpowiedzi dla klienta wysłanym z drobnymi zmianami. Hipotetyczny miesiąc, w którym 2000 € wspólnych kosztów platformy dzieli się według udziału w tokenach, 40 i 60 procent:
- Ekstrakcja faktur: 4200 € bezpośrednio plus 800 € wspólnych, 111 000 z 120 000 faktur przyjętych bez poprawek, około 0,045 € za przyjętą fakturę
- Szkice odpowiedzi: 6800 € bezpośrednio, w tym 900 € na ponowienia i porzucone przebiegi, plus 1200 € wspólnych, 18 000 z 30 000 szkiców wysłanych, około 0,44 € za wysłany szkic
Druga pozycja wymaga przyjrzenia się. Wysyłane są mniej niż dwa szkice na trzy, a około jednej ósmej wydatków bezpośrednich nic nie dało. Czy 0,44 € to dobra cena, zależy od tego, ile czasu konsultanta oszczędza każdy wysłany szkic, a to może ocenić tylko zespół wsparcia.
Uzgadniaj wynik z finansami co miesiąc
- 1
Zacznij od faktury
Weź sumę z faktury każdego dostawcy i jego raport użycia za ten sam okres.
- 2
Porównaj z bramką
Zsumuj wydatki z bramki za ten okres i wyjaśnij różnicę pozycja po pozycji.
- 3
Znajdź ruch, który ominął bramkę
Porównaj użycie u dostawcy dla każdego klucza API lub workspace'u z wydatkami w bramce dla tych samych kluczy i okresu. Użycie, którego bramka nigdy nie zapisała, wskazuje na bezpośrednie wywołania, nawet jeśli mają ważny klucz. Anthropic raportuje też użycie z playgroundu w konsoli bez klucza API i użycie w domyślnym workspace bez identyfikatora workspace'u, więc pojawiają się one jako osobne, nieprzypisane pozycje.
- 4
Opublikuj showback
Udostępnij wydatki na zespół, pozycję zmarnowanych kosztów i koszt zaakceptowanego wyniku, jak sugerują wytyczne FinOps Foundation dotyczące AI, zanim zaczniesz rozliczać zespoły wewnętrznie.
Pytania
Czy obciążać zespoły kosztami LLM, czy tylko im je pokazywać?
Najpierw pokazywać. Dopóki suma z bramki nie zgadza się z fakturami przez kilka miesięcy z rzędu, obciążanie rodzi spory o liczby zamiast decyzji o pracy.
Czy to obejmuje też subskrypcje agentów kodujących?
Częściowo. Licencje i subskrypcje rozlicza się na osobę, a nie na zapytanie, więc potrzebują osobnej pozycji obok użycia rozliczanego według zużycia. Usługa Cloudsail optymalizacji kosztów LLM obejmuje taki podział właśnie dla agentów kodujących.
Czy potrzebujemy do tego bramki?
Do zgrubnego podziału nie. Osobne workspace'y lub klucze u dostawcy dla każdego zespołu już dają wydatki według zespołu. Tagi na poziomie zadania, sumy dla wielu dostawców i łączenie z wynikami biznesowymi są dużo prostsze z jedną bramką na ścieżce.
Powiązane usługi
Inżynieria i architektura AI
Asystenci, interfejsy głosowe i agenci w produktach, które sprzedajesz, razem z serwowaniem modeli i wyszukiwaniem pod spodem.
Optymalizacja kosztów LLM
Wydatki na agentów rozbite na zespoły i zadania, a potem obniżone dzięki ustawieniom domyślnym, budżetom i routingowi, które twój zespół platformowy może sam utrzymywać.
Więcej z bloga
Oszczędności z cache promptów
Dlaczego cache promptów oszczędza mniej, niż zakładano, i jak to mierzyć: warunki cache'owania, typowe przyczyny chybień, pola użycia w każdej odpowiedzi i uzgodnienie z fakturą.
Kontrola jakości routingu LLM
Jak kierować proste zapytania do tańszych modeli, nie ukrywając spadków jakości: testuj router jak klasyfikator, trzymaj fallbacki osobno i zapisuj, który model naprawdę odpowiedział.
Planowanie mocy GPU do inferencji
Jak dobrać moc GPU dla modelu serwowanego samodzielnie: co ogranicza replikę, jak ją przetestować przy docelowym opóźnieniu, ile replik potrzebuje ruch szczytowy i jak nie płacić za bezczynne godziny.
Porozmawiaj z inżynierem
Przyjdź z jednym zadaniem, które chcesz usprawnić. Rozmowa trwa 30 minut i nie wymaga dostępu do twoich systemów ani danych.
Rezerwacja odbywa się w Kalendarzu Google.
Wolisz najpierw napisać? Zostaw adres e-mail i kilka zdań, a odpowiemy, proponując terminy.
Sprawdź wersję roboczą w swoim programie pocztowym
Wyślij ją stamtąd, a inżynier odpowie ci osobiście, proponując terminy 30-minutowej rozmowy. Jeśli wersja robocza się nie otworzyła, napisz do nas na adres miki@cloudsail.com.