Pierwsze kroki z wbudowaną AI

Alexandra Klepper
Alexandra Klepper

Data publikacji: 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 ujednoliceniem tych interfejsów API w różnych przeglądarkach.

Wymagane modele

Interfejsy Translator API i Language Detector API korzystają z modeli eksperckich. Wszystkie pozostałe interfejsy API korzystają z modelu językowego, który jest przeznaczony do uruchamiania lokalnie na komputerach stacjonarnych i laptopach.

Interfejsy Summarizer API, Writer API, Rewriter API i Proofreader API obsługują tylko tryb tekst na podstawie tekstu. Interfejs Prompt API ma funkcje multimodalne.

Modele Chrome

Chrome korzysta z modeli językowych opartych na wiedzy eksperckiej i modeli podstawowych. Te modele nie są dostępne na urządzeniach mobilnych.

Od Chrome 149 modele obsługują język angielski, francuski, hiszpański, japoński i niemiecki w przypadku tekstu wejściowego i wyjściowego.

Wymagany sprzęt

Deweloperzy i użytkownicy, którzy korzystają z funkcji wykorzystujących te interfejsy API w Chrome, muszą spełniać te wymagania. Inne przeglądarki mogą mieć inne wymagania dotyczące działania.

Interfejsy Language Detector i Translator API działają w Chrome na komputerach. Te interfejsy API nie działają na urządzeniach mobilnych.

Prompt API, Summarizer API, Writer API, Rewriter API i Proofreader API działają w Chrome, gdy spełnione są te warunki:

  • System operacyjny: Windows 10 lub 11; macOS 13 lub nowszy (Ventura i nowsze); Linux lub ChromeOS (od platformy 16389.0.0) na urządzeniach Chromebook Plus. Chrome na Androida, iOS i ChromeOS na urządzeniach innych niż Chromebook 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 woluminie zawierającym profil Chrome.
  • GPU lub CPU: wbudowane modele mogą działać z GPU lub CPU.
    • GPU: ponad 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 pomiaru.

Dokładny rozmiar Gemini Nano może się różnić w zależności od aktualizacji modelu przez przeglądarkę. Aby sprawdzić obecny rozmiar, wejdź na stronę chrome://on-device-internals.

Zacznij tworzyć

Na różnych etapach rozwoju dostępne są różne wbudowane interfejsy AI API. Niektóre są dostępne w wersji stabilnej Chrome, inne w ramach testów origin trial, a jeszcze inne tylko dla uczestników programu testowania aktualizacji.

Każdy interfejs API ma własny zestaw instrukcji, które pomagają rozpocząć pracę i pobrać model zarówno na potrzeby lokalnego prototypowania, jak i w środowiskach produkcyjnych z testami origin.

Wszystkie te interfejsy API można wykorzystać podczas tworzenia rozszerzeń do Chrome.

Pobieranie modelu

Interfejsy API i modele są wbudowane w Chrome. 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 ilość miejsca na dysku.
  • "downloadable": Aby utworzyć sesję, musisz pobrać dodatkowe pliki, które mogą obejmować model ekspercki, model językowy lub dostrajanie. Aby wywołać interfejs create(), może być wymagana aktywacja użytkownika.
  • "downloading": pobieranie jest w toku i musi się zakończyć, zanim będzie można użyć sesji.
  • "available": sesję możesz utworzyć od razu.

Niektóre interfejsy API wymagają dodatkowych opcji podczas wywoływania dostępności. Na przykład interfejs Prompt API wymaga zadeklarowania obsługi języków:

// Makes sure the model is available for English and Japanese input text,
// supports image input, and can generate English output.
await LanguageModel.availability({
  expectedInputs: [{type: "text", languages: ["en", "ja"]}, {type: "image"}],
  expectedOutputs: [{type: "text", languages: ["en"]}],
});

Aktywacja użytkownika

Jeśli urządzenie obsługuje wbudowane interfejsy AI API, ale model nie został jeszcze pobrany (czyli gdy wywołanie funkcji availability() zwraca wartość "downloadable" lub "downloading"), użytkownik musi w istotny sposób wejść w interakcję ze stroną, aby aplikacja mogła rozpocząć sesję z interfejsem create().

Użyj właściwości UserActivation.isActive, aby potwierdzić, że użytkownik wszedł w bezpośrednią interakcję ze stroną od momentu jej załadowania. 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 za pomocą interfejsu Summarizer API możesz poprosić użytkowników o kliknięcie przycisku „Podsumuj”, aby aktywować Summarizer.create(), lub utworzyć podsumowanie, gdy użytkownik zacznie pisać, czyli po wystąpieniu zdarzenia keydown.

Rozwiązywanie problemów z localhostem

Jeśli model nie działa zgodnie z oczekiwaniami, wykonaj te czynności:

  1. Uruchom ponownie Chrome.
  2. Jedź do: chrome://on-device-internals.
  3. Wybierz kartę Stan brokera i upewnij się, że nie ma żadnych błędów.
  4. Otwórz Narzędzia deweloperskie i wpisz LanguageModel.availability(); w konsoli. Powinno to zwrócić wartość available.

W razie potrzeby poczekaj chwilę i powtórz te czynności.

Proces standardów

Pracujemy nad ujednoliceniem tych interfejsów API, aby działały we wszystkich przeglądarkach. Oznacza to, że zaproponowaliśmy interfejsy API społeczności platform internetowych i przekazaliśmy je do grupy społecznościowej Web Incubator W3C w celu dalszej dyskusji.

Prosimy o opinie na temat każdego interfejsu API od W3C, Mozilli i WebKit.

Zaangażuj się i prześlij opinię

Jeśli wypróbujesz wbudowaną AI i będziesz mieć jakieś uwagi, daj nam znać.