Yerleşik yapay zekayı kullanmaya başlayın

Alexandra Klepper
Alexandra Klepper

Yayınlanma tarihi: 12 Aralık 2024, Son güncelleme tarihi: 20 Mayıs 2025

Yerleşik yapay zeka API'leri sayesinde web uygulamanız, kendi yapay zeka modellerini dağıtmaya veya yönetmeye gerek kalmadan yapay zeka destekli görevleri gerçekleştirebilir. Bu API'leri tarayıcılar arasında standartlaştırmak için çalışıyoruz.

Gerekli modeller

Translator ve Language Detector API'leri uzman modeller kullanır. Diğer tüm API'ler, masaüstü ve dizüstü bilgisayarlarda yerel olarak çalışacak şekilde tasarlanmış bir dil modeli kullanır.

Summarizer API, Writer API, Rewriter API ve Proofreader API yalnızca metinden metin üretimi yöntemini destekler. Prompt API, çok formatlı özelliklere sahiptir.

Chrome modelleri

Chrome, uzman ve temel dil modellerini kullanır. Bu modeller mobil cihazlarda kullanılamaz.

Chrome 149'dan itibaren modeller, giriş ve çıkış metni için İngilizce, İspanyolca, Japonca, Almanca ve Fransızcayı destekler.

Gerekli donanım

Chrome'da bu API'leri kullanarak özellikleri çalıştıran geliştiriciler ve kullanıcılar için aşağıdaki şartlar geçerlidir. Diğer tarayıcıların farklı işletim gereksinimleri olabilir.

Dil Algılayıcı ve Çeviri API'leri, masaüstü Chrome'da çalışır. Bu API'ler mobil cihazlarda çalışmaz.

Prompt API, Summarizer API, Writer API, Rewriter API ve Proofreader API, aşağıdaki koşullar karşılandığında Chrome'da çalışır:

  • İşletim sistemi: Windows 10 veya 11; macOS 13 ve sonraki sürümler (Ventura ve sonraki sürümler); Linux; veya Chromebook Plus cihazlarda ChromeOS (Platform 16389.0.0 ve sonraki sürümler). Android, iOS ve Chromebook Plus olmayan cihazlarda ChromeOS için Chrome, temel modelleri kullanan API'ler tarafından henüz desteklenmemektedir.
  • Depolama alanı: Chrome profilinizi içeren birimde en az 22 GB boş alan olmalıdır.
  • GPU veya CPU: Yerleşik modeller GPU veya CPU ile çalıştırılabilir.
    • GPU: Kesinlikle 4 GB'tan fazla VRAM.
    • CPU: 16 GB veya daha fazla RAM ve 4 veya daha fazla CPU çekirdeği.
    • Not: Ses girişli Prompt API için GPU gerekir.
  • Ağ: Sınırsız veri veya sınırsız bağlantı.

Tarayıcı modeli güncellediğinde Gemini Nano'nun tam boyutu değişebilir. Mevcut boyutu belirlemek için chrome://on-device-internals adresini ziyaret edin.

Derlemeye başlayın

Geliştirmenin farklı aşamalarında kullanabileceğiniz çeşitli yerleşik yapay zeka API'leri vardır. Bazıları Chrome'un kararlı sürümünde, bazıları ise kaynak denemelerine katılanlar tarafından kullanılabilir. Diğerleri ise yalnızca Önizleme Programı katılımcıları tarafından kullanılabilir.

Her API'nin, hem yerel prototip oluşturma hem de kaynak denemeleriyle üretim ortamlarında modeli kullanmaya başlama ve indirme konusunda kendi talimatları vardır.

Chrome uzantıları oluştururken bu API'lerin tümü kullanılabilir.

Model indirme

API'ler ve modeller Chrome'da yerleşik olarak bulunur. Kullanıcı bu API'lerle ilk kez etkileşimde bulunduğunda modelin tarayıcıya indirilmesi gerekir.

Bir API'nin kullanılabilir ve hazır olup olmadığını belirlemek için, aşağıdaki değerlerden birini içeren bir promise döndüren eşzamansız availability() işlevini çağırın:

  • "unavailable": Kullanıcının cihazı veya istenen oturum seçenekleri desteklenmiyor. Cihazın gücü veya disk alanı yetersiz olabilir.
  • "downloadable": Oturum oluşturmak için ek indirmeler gerekiyor. Bu indirmeler arasında uzman model, dil modeli veya ince ayar olabilir. create() işlevinin çağrılması için kullanıcı etkinleştirme gerekebilir.
  • "downloading": İndirme işlemi devam ediyor ve oturumu kullanabilmeniz için tamamlanması gerekiyor.
  • "available": Hemen oturum oluşturabilirsiniz.

Bazı API'ler, stok durumu çağrısı yapılırken ek seçenekler gerektirir. Örneğin, Prompt API'de dil desteğinin beyan edilmesi gerekir:

// 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"]}],
});

Kullanıcı etkinleştirme

Cihaz, yerleşik yapay zeka API'lerini destekleyebiliyor ancak model henüz indirilmemişse (yani availability() çağrıldığında "downloadable" veya "downloading" döndürülüyorsa) uygulamanızın create() ile oturum başlatması için kullanıcının sayfanızla anlamlı bir şekilde etkileşim kurması gerekir.

Kullanıcının, sayfa yüklendikten sonra sayfayla doğrudan etkileşim kurduğunu doğrulamak için UserActivation.isActive özelliğini kullanın. Bu etkileşimler arasında dokunma, tıklama, tuşa basma, mousedown veya diğer yapışkan etkinleştirme etkinlikleri yer alabilir.

// Check for user activation.
if (navigator.userActivation.isActive) {
  // Create an instance of a built-in API
}

Örneğin, Summarizer API ile Summarizer.create() özelliğini etkinleştirmek için kullanıcılardan "Özetle" yazan bir düğmeyle etkileşim kurmalarını isteyebilir veya kullanıcı yazmaya başladıktan sonra (keydown etkinliği) özetleyiciyi oluşturabilirsiniz.

Yerel ana makineyle ilgili sorunları giderme

Model beklendiği gibi çalışmıyorsa aşağıdaki adımları uygulayın:

  1. Chrome'u yeniden başlatın.
  2. Şuraya git: chrome://on-device-internals.
  3. Broker State (Aracı Durumu) sekmesini seçin ve hata olmadığından emin olun.
  4. Geliştirici Araçları'nı açın ve konsola LanguageModel.availability(); yazın. Bu komut available değerini döndürmelidir.

Gerekirse bir süre bekleyip bu adımları tekrarlayın.

Standartlar süreci

Bu API'leri tüm tarayıcılarda çalışacak şekilde standartlaştırmak için çalışıyoruz. Bu, API'leri web platformları topluluğuna önerdiğimiz ve daha fazla tartışmak için W3C Web Incubator Community Group'a taşıdığımız anlamına gelir.

Her API için W3C, Mozilla ve WebKit'ten geri bildirim istiyoruz.

Etkileşim kurma ve geri bildirim paylaşma

Yerleşik yapay zekayı denediyseniz geri bildirimlerinizi bizimle paylaşabilirsiniz.