Opublikowano: 12 grudnia 2024 r., ostatnia aktualizacja: 20 maja 2025 r.
Dzięki wbudowanym interfejsom API AI Twoja aplikacja internetowa może wykonywać zadania oparte na AI bez konieczności wdrażania własnych modeli AI ani zarządzania nimi. Pracujemy nad standaryzacją tych interfejsów API w różnych przeglądarkach.
.Wymagania
Aby korzystać z wbudowanej AI, musisz spełnić wymagania dotyczące modelu i sprzętu.
Modele
Interfejsy Translator API i Language Detector API korzystają z modeli eksperckich. Wszystkie inne interfejsy API korzystają z modelu językowego, który jest przeznaczony do działania lokalnie na komputerach stacjonarnych i laptopach.
Interfejsy Summarizer API, Writer API, Rewriter API i Proofreader API obsługują tylko modalność tekstową. Interfejs Prompt API ma możliwości multimodalne.
Modele w Chrome
Chrome korzysta z modeli językowych eksperckich i podstawowych. Te modele nie są dostępne na urządzeniach mobilnych.
Od Chrome 149 modele obsługują język angielski, hiszpański, japoński, niemiecki i francuski w przypadku tekstu wejściowego i wyjściowego.
Sprzęt
Deweloperzy i użytkownicy, którzy korzystają z funkcji używających tych interfejsów API w Chrome, muszą spełniać te wymagania. Inne przeglądarki mogą mieć inne wymagania dotyczące systemu operacyjnego.
Interfejsy Language Detector API i Translator API działają w Chrome na komputerach. Te interfejsy API nie działają na urządzeniach mobilnych.
Interfejsy Prompt API, Summarizer API, Writer API, Rewriter API i Proofreader API działają w Chrome, gdy są spełnione te warunki:
- System operacyjny: Windows 10 lub 11; macOS 13 lub nowszy (Ventura i nowsze); Linux; lub ChromeOS (od platformy 16389.0.0) na Chromebookach Plus. Chrome na Androida, iOS i ChromeOS na urządzeniach innych niż Chromebooki Plus nie są jeszcze obsługiwane przez interfejsy API, które korzystają z modeli podstawowych.
- Miejsce na dane: co najmniej 22 GB wolnego miejsca na dysku, na którym znajduje się profil Chrome.
- Procesor graficzny lub procesor: wbudowane modele mogą działać z procesorem graficznym lub procesorem.
- Procesor graficzny: co najmniej 4 GB pamięci VRAM.
- Procesor: co najmniej 16 GB pamięci RAM i co najmniej 4 rdzenie procesora.
- Uwaga: interfejs Prompt API z wejściem audio wymaga procesora graficznego.
- Sieć: nieograniczona transmisja danych lub połączenie bez limitu danych. Połączenia Wi-Fi i Ethernet są domyślnie bez limitu danych, a połączenia komórkowe są często taryfowe.
Dokładny rozmiar Gemini Nano może się różnić w zależności od aktualizacji przeglądarki. Aby sprawdzić aktualny rozmiar, otwórz chrome://on-device-internals.
Zacznij tworzyć
Na różnych etapach rozwoju dostępne są różne wbudowane interfejsy API AI. Niektóre są dostępne w stabilnej wersji Chrome, inne dla dostępnych uczestników testów origin, a jeszcze inne tylko dla dostępnych dla uczestników programu wczesnego dostępu.
Każdy interfejs API ma własny zestaw instrukcji dotyczących rozpoczęcia pracy i pobrania modelu, zarówno w przypadku prototypowania lokalnego, jak i w środowiskach produkcyjnych z testami origin.
- Translator API
- Language Detector API
- Summarizer API
- Writer API i Rewriter API
- Proofreader API
- Prompt API
Wszystkie te interfejsy API można używać podczas tworzenia rozszerzeń Chrome.
Pobieranie modelu
Interfejsy API są wbudowane w Chrome, podobnie jak modele. Gdy użytkownik po raz pierwszy wejdzie w interakcję z tymi interfejsami API, model musi zostać pobrany do przeglądarki.
Aby sprawdzić, czy interfejs API jest gotowy do użycia, wywołaj asynchroniczną funkcję availability(), która zwraca obietnicę z jedną z tych wartości:
"unavailable": urządzenie użytkownika lub opcje żądanej sesji nie są obsługiwane. Urządzenie może mieć niewystarczającą moc lub miejsce na dysku."downloadable": do utworzenia sesji wymagane są dodatkowe pliki do pobrania, które mogą obejmować model ekspercki, model językowy lub dostrajanie. Aktywacja użytkownika może być wymagana, aby wywołaćcreate()."downloading": pobieranie jest w toku i musi się zakończyć, zanim będzie można użyć sesji."available": możesz od razu utworzyć sesję.
Niektóre interfejsy API wymagają dodatkowych opcji podczas wywoływania funkcji dostępności. Na przykład, interfejs Prompt API wymaga zadeklarowania obsługi języka:
// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });
Aktywacja użytkownika
Jeśli urządzenie obsługuje wbudowane interfejsy API AI, ale model nie został jeszcze pobrany, użytkownik musi wejść w znaczącą interakcję ze stroną, aby aplikacja mogła rozpocząć sesję za pomocą funkcji create().
Użyj właściwości, aby potwierdzić, że użytkownik wszedł w bezpośrednią interakcję ze stroną od czasu jej wczytania.UserActivation.isActive Może to być dotknięcie, kliknięcie, naciśnięcie klawisza, mousedown, lub
inne trwałe zdarzenia aktywacji.
// Check for user activation.
if (navigator.userActivation.isActive) {
// Create an instance of a built-in API
}
Na przykład w przypadku interfejsu Summarizer API możesz
poprosić użytkowników o kliknięcie przycisku „Podsumuj”, aby aktywować
Summarizer.create(), lub możesz utworzyć podsumowanie, gdy użytkownik zacznie
pisać (zdarzenie keydown).
Używanie interfejsów API na serwerze localhost
Wszystkie interfejsy API są dostępne na serwerze localhost w Chrome.
- Otwórz
chrome://flags/#optimization-guide-on-device-model. - Wybierz Włączone.
- Kliknij Uruchom ponownie lub uruchom ponownie Chrome.
W przypadku interfejsów API, które korzystają z Gemini Nano, musisz też ustawić chrome://flags/#prompt-api-for-gemini-nano na Włączone lub Włączone w wielu językach. Możesz sprawdzić, czy model został pobrany i działa
zgodnie z oczekiwaniami, w konsoli narzędzi deweloperskich.
Uruchom w konsoli await LanguageModel.availability();.
Rozwiązywanie problemów z serwerem localhost
Jeśli flagi nie pojawiają się w chrome://flags, upewnij się, że masz najnowszą wersję Chrome.
Jeśli model nie działa zgodnie z oczekiwaniami, wykonaj te czynności:
- Uruchom ponownie Chrome.
- Otwórz
chrome://on-device-internals. - Otwórz kartę Stan modelu i upewnij się, że nie ma żadnych błędów.
- Otwórz narzędzia deweloperskie i wpisz w konsoli
LanguageModel.availability();. Powinna zostać zwrócona wartośćavailable.
W razie potrzeby poczekaj chwilę i powtórz te czynności.
Proces standaryzacji
Pracujemy nad standaryzacją tych interfejsów API, aby działały we wszystkich przeglądarkach. Oznacza to, że zaproponowaliśmy te interfejsy API społeczności platform internetowych i przenieśliśmy je do grupy W3C Web Incubator Community Group, aby kontynuować dyskusję.
W przypadku każdego interfejsu API prosimy o opinie W3C, Mozillę i WebKit.
Zaangażuj się i prześlij opinię
Jeśli wypróbujesz wbudowaną AI i chcesz podzielić się opinią, chętnie ją poznamy.
- Poznaj wszystkie wbudowane interfejsy API AI.
- Dołącz do programu wczesnego dostępu aby wcześniej poznać nowe interfejsy API i uzyskać dostęp do naszej listy mailingowej.
- Jeśli masz uwagi na temat implementacji Chrome, zgłoś błąd w Chromium.
- Dowiedz się więcej o standardach internetowych.