Wyłącznik automatyczny zapobiega temu, by jedno zawodzące domowe narzędzie AI blokowało każde żądanie, zatrzymując powtarzające się wywołania do czasu, aż odzyskanie sprawności stanie się prawdopodobne.
Agent może zależeć od wyszukiwarki, transkrypcji, interfejsu API kamery i mostu inteligentnego domu. Jeśli jedno narzędzie zawiesi się, każdy przepływ pracy, który z niego korzysta, może zająć zasób roboczy, czekać na upływ limitu czasu i ponawiać próbę. Wyłącznik automatyczny zamienia powtarzające się awarie w tymczasowe szybkie odrzucenia, zachowując wątki i pojemność kolejki dla żądań, które nadal mogą zakończyć się powodzeniem.
Powtarzające się przekroczenia limitu czasu zużywają zasoby poza uszkodzonym narzędziem
Przekroczenie limitu czasu zajmuje połączenie, zasób roboczy i czas przeznaczony na wykonanie przepływu pracy, nie dostarczając żadnego użytecznego wyniku. Równoległe kroki agenta mogą zwielokrotnić ten koszt, a ponawianie prób może nadal obciążać już niestabilną zależność. Model lokalny może działać szybko, podczas gdy użytkownicy czekają na to samo skazane na niepowodzenie wywołanie zewnętrzne.
Firma AWS opisuje wzorzec wyłącznika automatycznego jako stanowy serwer proxy, który monitoruje awarie i blokuje żądania po osiągnięciu określonego progu. Wzorzec ten różni się od ponawiania prób, ponieważ przestaje zużywać zasoby na zależność, co do której oczekuje się awarii.
Szybka awaria pozwala orkiestratorowi pominąć opcjonalny krok, użyć danych z pamięci podręcznej lub zgłosić częściową dostępność. Zapobiega także zapełnieniu głównej kolejki wywołaniami, które nie mogą zakończyć się przed upływem terminów. To rozróżnienie pozostaje istotne w realistycznych warunkach pracy w domu.
Stany zamknięty, otwarty i półotwarty kontrolują odzyskiwanie sprawności
W stanie zamkniętym wywołania są obsługiwane, a awarie zliczane. Po przekroczeniu skonfigurowanego progu obwód otwiera się i odrzuca wywołania przez czas schładzania. Następnie stan półotwarty dopuszcza ograniczoną próbę; powodzenie zamyka obwód, a awaria otwiera go ponownie.
Wytyczne firmy Microsoft dotyczące stanów wyłącznika podkreślają, że liczba awarii, limit czasu i sposób odzyskiwania muszą być dopasowane do operacji. Jeden współdzielony wyłącznik może być zbyt ogólny, gdy punkty końcowe odczytu i zapisu mają różne tryby awarii. Stan pośredni powinien pozostać widoczny podczas późniejszej diagnostyki i przeglądu.
Wyłącznik powinien być przypisany do operacji narzędzia i klasy awarii. Błędy uwierzytelniania, limity szybkości, przekroczenia limitu czasu, nieprawidłowe argumenty i odmowy modelu wymagają różnych zasad odzyskiwania; połączenie ich w jednym liczniku może ukryć rzeczywistą usterkę.
Mechanizmy awaryjne mogą zachować dostępność kosztem poprawności
Buforowana wartość pogody może wystarczyć do wyświetlania, ale być niebezpieczna przy zamykaniu okien podczas burzy. Model CPU może odpowiadać wolniej, lecz poprawnie, podczas gdy ogólny wynik może wyglądać na kompletny i wprowadzać agenta w błąd. Wyłączniki automatyczne chronią pojemność, a nie jakość semantyczną.
Katalog wyłączników automatycznych dla agentów stosuje przerywanie obwodu do narzędzi agentów i wskazuje na potrzebę mechanizmów awaryjnych oraz obserwowalności. W agencie wynik otwartego obwodu musi pozostać ustrukturyzowany, aby planista mógł odróżnić niedostępne dane od odpowiedzi negatywnej.
Granica awarii obejmuje każdą czynność wymagającą bieżącego wyniku niedostępnego narzędzia. W takim przypadku należy zakończyć działanie bezpiecznie, ujawnić niedostępną zależność i poprosić o zgodę lub ponowić próbę później, zamiast po cichu zastępować ją nieaktualnymi albo słabszymi danymi.
Wstrzyknij awarię jednego narzędzia i prześledź izolację
Wybierz jedno niegroźne narzędzie i wstrzyknij przekroczenia limitu czasu, błędy oraz powolne odpowiedzi, podczas gdy mieszane przepływy pracy będą kontynuowane. Zapisuj stan wyłącznika, okno awarii, liczbę równoczesnych wywołań, głębokość kolejki, wybrany mechanizm awaryjny oraz próby odzyskania sprawności. Sprawdź, czy niezależne narzędzia zachowują zwykłe opóźnienia.
Przetestuj granicę awaryjnego przełączenia na CPU opisaną w artykule awaryjne przełączanie na CPU, ale wyraźnie oznacz działanie w trybie ograniczonym i zmierz, czy nadal mieści się ono w terminie wykonania przepływu pracy. Potwierdź, że próba w stanie półotwartym nie może wywołać lawiny oczekujących żądań.
Test można uznać za zaliczony wyłącznie wtedy, gdy zawodna operacja jest odizolowana, wywołujący otrzymują ustrukturyzowany stan niedostępności, a odzyskanie sprawności zamyka wyłącznik po kontrolowanych próbach. Jeśli dane z pamięci podręcznej lub wyniki awaryjne zmieniają działanie, dodaj bramkę zasad przed włączeniem tego mechanizmu awaryjnego.
Centrum Technologii i Sztucznej Inteligencji
Więcej do przeczytania

Kalibracja oceny prywatnego wyszukiwania: jak surowe podobieństwo staje się użytecznym wskaźnikiem pewności
Dowiedz się, dlaczego podobieństwo cosinusowe nie jest miarą pewności, jak oznaczone zapytania służą do kalibracji wyników oraz jak monitorować progi, gdy zmienia się prywatny...

Lokalność NUMA w lokalnej sztucznej inteligencji: dlaczego rozmieszczenie pamięci zmienia tempo zasilania akceleratora
Dowiedz się, jak topologia CPU, pamięci RAM i PCIe wpływa na zasilanie akceleratora danymi, dlaczego automatyczne rozmieszczanie może się różnić oraz jak bezpiecznie testować...

Mapowanie plików modeli w pamięci: jak współdzielone strony zmniejszają duplikowanie pamięci RAM
Dowiedz się, jak mapowane strony modelu są stronicowane i współdzielone, dlaczego RSS może wprowadzać w błąd oraz które pamięci podręczne i bufory nadal zajmują...

