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ğıtmasına veya yönetmesine gerek kalmadan yapay zeka destekli görevler gerçekleştirebilir. Bu API'leri tarayıcılarda standart hale getirmek için çalışıyoruz.

Yerleşik yapay zekayı kullanmak için model ve donanım şartları vardır.

Gerekli modeller

Translator ve Language Detector API'leri uzman modelleri 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 metne biçimini destekler. Prompt API'de çok formatlı özellikler bulunur.

Chrome modelleri

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

Chrome 149'dan itibaren modeller, giriş ve çıkış metinleri için İngilizce, İspanyolca, Japonca, Almanca ve Fransızca dillerini desteklemektedir.

Gerekli donanım

Geliştiriciler ve Chrome'da bu API'leri kullanarak özellikleri çalıştıran 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 ya da sonraki sürümler (Ventura ve sonrası); Linux; veya Chromebook Plus cihazlarda ChromeOS (Platform 16389.0.0 ve sonraki sürümler). Temel modelleri kullanan API'ler, Android, iOS ve Chromebook Plus olmayan cihazlarda ChromeOS için Chrome'u henüz desteklemiyor.
  • Depolama: 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ışabilir.
    • 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 çeşitli yerleşik yapay zeka API'leri kullanılabilir. 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, modeli kullanmaya başlamak ve indirmek için kendi talimatları vardır. Bu talimatlar hem yerel prototip oluşturma hem de kaynak denemeleriyle üretim ortamları için geçerlidir.

Bu API'lerin tümü Chrome uzantıları oluşturulurken 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. Cihazda yeterli güç veya disk alanı olmayabilir.
  • "downloadable": Oturum oluşturmak için ek indirmeler gerekir. Bu indirmeler arasında uzman modeli, dil modeli veya ince ayar yer alabilir. 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": Oturumu hemen 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 destekleyebiliyorsa ancak model henüz indirilmediyse (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şimde bulunması gerekir.

Kullanıcının sayfa yüklendikten sonra doğrudan sayfayla etkileşimde bulunduğunu onaylamak için UserActivation.isActive özelliğini kullanın. Bu, dokunma, tıklama, tuşa basma, mousedown veya diğer sabit etkinleştirme etkinliklerini içerebilir.

// 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. 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 işlem 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ı denerseniz geri bildiriminizi bizimle paylaşabilirsiniz.