Pierwsze kroki z wbudowaną AI

Alexandra Klepper
Alexandra Klepper

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 ujednoliceniem 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 API Tłumacz i Wykrywanie języka 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 API Summarizer, Writer, Rewriter i Proofreader obsługują tylko modalność tekst na podstawie tekstu. Interfejs Prompt API ma możliwości multimodalne.

Gemini Nano w Chrome

Chrome korzysta z modeli językowych Gemini Nano. Gemini Nano nie jest dostępny na urządzeniach mobilnych.

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

Zanim zaczniesz korzystać z wbudowanych interfejsów API AI, zapoznaj się z zasadami Google dotyczącymi niedozwolonych zastosowań generatywnej AI.

Sprzęt

Deweloperzy i użytkownicy, którzy korzystają z funkcji opartych na tych interfejsach API w Chrome, muszą spełniać te wymagania. Inne przeglądarki mogą mieć inne wymagania dotyczące systemu operacyjnego.

Interfejsy API Wykrywanie języka i Tłumacz działają w Chrome na komputerze. Te interfejsy API nie działają na urządzeniach mobilnych.

Interfejsy API Prompt, Summarizer, Writer, Rewriter i Proofreader 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ż Chromebook Plus nie są jeszcze obsługiwane przez interfejsy API, które korzystają z Gemini Nano.
  • 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.

Dokładny rozmiar Gemini Nano może się różnić w zależności od aktualizacji modelu w przeglądarce. 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 wersji stabilnej Chrome, inne dla uczestników testów origin, a jeszcze inne tylko 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.

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 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ą create().

Użyj właściwości UserActivation.isActive , aby potwierdzić, że użytkownik wszedł w bezpośrednią interakcję ze stroną od momentu jej wczytania. Może to być dotknięcie, kliknięcie, naciśnięcie klawisza, mousedown, lub inne 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).

Korzystanie z interfejsów API na localhost

Wszystkie interfejsy API są dostępne na localhost w Chrome.

  1. Otwórz chrome://flags/#optimization-guide-on-device-model.
  2. Wybierz Włączone.
  3. 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 await LanguageModel.availability(); w konsoli.

Rozwiązywanie problemów z localhost

Jeśli flagi nie pojawiają się w chrome://flags, upewnij się, że masz pobraną najnowszą wersję Chrome.

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

  1. Uruchom ponownie Chrome.
  2. Otwórz chrome://on-device-internals.
  3. Otwórz kartę Stan modelu 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 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 masz jakieś uwagi, chętnie je poznamy.