Interfejsy API generatywnej AI w ML Kit wykorzystują potencjał Gemini Nano, aby pomagać aplikacjom w wykonaniu zadań. Te interfejsy API zapewniają wysoką jakość w popularnych zastosowaniach dzięki interfejsowi ogólnemu. Interfejsy API ML Kit GenAI są oparte na AICore, czyli systemowej usłudze Androida, która umożliwia uruchamianie na urządzeniu podstawowych modeli generatywnej AI w celu ułatwienia takich funkcji jak ulepszona funkcjonalność aplikacji i większa prywatność użytkowników dzięki przetwarzaniu danych lokalnie.
Interfejsy API ML Kit GenAI obsługują te funkcje:
- Podsumowywanie: możesz streszczać artykuły lub rozmowy na czacie w formie listy wypunktowanej.
- Korekta: poprawiaj krótkie treści, poprawiając gramatykę i poprawiając błędy ortograficzne.
- Przeredagowywanie: możesz przeredagowywać krótkie wiadomości, aby nadać im inny ton lub styl.
- Opis obrazu: generowanie krótkiego opisu danego obrazu.
Zalety interfejsów GenAI API
Podobnie jak inne funkcje ML Kit, interfejsy GenAI API działają całkowicie na urządzeniu, dzięki czemu zapewniają te korzyści:
- Dane wejściowe, wnioskowanie i dane wyjściowe są przetwarzane lokalnie
- Funkcje pozostają bez zmian bez niezawodnego połączenia z internetem
- za każdy wywołanie interfejsu API nie są pobierane dodatkowe koszty serwera;
Co więcej, ponieważ interfejsy GenAI są oparte na AICore i wykorzystują Gemini Nano, każda aplikacja może używać udostępnianego modelu Gemini Nano na urządzeniu. Dzięki temu nie trzeba czekać na pobranie modelu, jeśli jest on już dostępny na urządzeniu. Pozwala to też oszczędzać miejsce na dysku. Dowiedz się więcej o tym, jak AICore izoluje żądania w celu ochrony prywatności.
Transmisja strumieniowa a brak transmisji strumieniowej
Interfejsy API generatywnej AI w ML Kit umożliwiają otrzymywanie wyników zarówno w trybie strumieniowania, jak i niestrumieniowania. Interfejs Streaming API przesyła odpowiedzi stopniowo, w miarę ich generowania, zapewniając ciągły przepływ danych. API nieprzeznaczone do przesyłania strumieniowego czeka na ukończenie całej odpowiedzi, zanim zwróci ją jako pojedynczy blok.
W przypadku długich odpowiedzi wybierz interfejs strumieniowego API, ponieważ umożliwia on szybsze wyświetlanie początkowych informacji zwrotnych. Interfejs API bez strumieniowego przesyłania danych lepiej nadaje się do krótkich odpowiedzi lub przetwarzania wyników w partiach.
Obsługa urządzeń
Interfejsy API ML Kit GenAI są dostępne na tych urządzeniach, a w planach jest rozszerzenie obsługi na inne urządzenia:
- Google: Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
- Honor: Magic 7 Pro, Magic 7
- iQOO: iQOO 13
- Motorola: Razr 60 Ultra
- OnePlus: OnePlus 13, OnePlus 13s
- OPPO: Find N5, Find X8, Find X8 Pro
- POCO: POCO F7 Ultra
- realme: realme GT 7 Pro
- Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Ultra
- vivo: vivo X200, vivo X200 Pro
- Xiaomi: Xiaomi 15 Ultra, Xiaomi 15
Dostępność obsługi poszczególnych języków może się różnić w zależności od konfiguracji urządzenia i modeli pobranych na urządzenie.
Limit na aplikację
AICore stosuje limit wnioskowania na aplikację. Oznacza to, że wysłanie zbyt wielu żądań do interfejsu GenAI API w krótkim czasie spowoduje otrzymanie odpowiedzi ErrorCode.BUSY
. Jeśli pojawi się taki błąd, rozważ użycie algorytmu Exponential back-off, aby ponownie przesłać żądanie.
Korzystanie z aplikacji w tle
Interfejs GenAI API może być używany tylko wtedy, gdy aplikacja jest na pierwszym planie. Korzystanie z interfejsu API, gdy aplikacja nie jest na pierwszym planie, w tym z usługi na pierwszym planie, spowoduje wyświetlenie odpowiedzi ErrorCode.BUSY
z powodu braku obecnej puli na potrzeby korzystania w tle.
Przykładowy kod
Aby uzyskać ten kod, zapoznaj się z tymi przykładami: