Akıllı Uygulamalar

Cihaz üzerinde akıllı veri işleme özelliğini destekleyen Gemini Nano ve Gemma 4'ün ayrıntıları

Hoparlörler

  • Sara Smoot

    Mühendislik Lideri, Gemma

Hakkında

Konuşma hakkında

Gemma 4, yetenekli ve çok formatlı yapay zekayı doğrudan Android cihazlara getiriyor. Bu oturumda, Gemma'nın verimlilik için tasarlanmış bir model ailesine nasıl dönüştüğünü inceleyeceğiz. Ayrıca, uç cihazlar için optimize edilmiş E2B ve E4B modellerinin cihaz üzerinde neler yapabileceğini (görüntü ve sesleri anlama, temsilci işlev çağrısı vb.) keşfedeceğiz. Bu verimliliğin arkasındaki mimariyi (Katman Başına Yerleştirmeler (PLE) dahil) ele alacak ve Gemma ile Gemini Nano'nun AICore aracılığıyla nasıl birlikte çalıştığını göstereceğiz. Nicelemeye Duyarlı Eğitim'in (QAT) 1,1-3,5 GB RAM ayak izlerinde model kapasitesini nasıl koruduğunu ve Çoklu Jeton Tahmini'nin (MTP) duyarlı, gerçek zamanlı deneyimler için kod çözme hızlarını 1,5-3 kat nasıl artırdığını öğreneceksiniz.

Özet

  • Gemma 4 modelleri, Apache 2 lisansı kapsamında E2B/E4B'de 128.000 jetonluk bağlamla cihaz üzerinde çok formatlı özellikleri genişletir.
  • Çok jetonlu tahmin taslak oluşturucu modelleri, kod çözme gecikmesini %40 azaltır ve %30 ila %40 enerji tasarrufu sağlar. Ön doldurmaların yeniden oluşturulmasını önlemek için temel modelin KV önbelleğini paylaşırlar.
  • Quantization-aware training, hedeflenen 2 bitlik niceleme kullanarak özel mobil niceleme kontrol noktasını 1 GB'ın altına sıkıştırır.
  • Android uygulamaları, modelleri AICore üzerinden Gemini Nano 4 olarak entegre edebilir veya özel ince ayarlar için LiteRT ile paketleyebilir.

Kaynaklar

Gemini Notebook

Konular

  • gemini-nano
  • gemma-4
  • on-device-ai
  • mobile-ml
  • aicore
  • litert
  • nicemleme

Transkript

Gemma modellerine giriş ve modellerin gelişimi

  • Sara Smoot

    Merhaba, konuşmaya hoş geldiniz.

  • Adım Sara. Gemma'da modelleme tarafında mühendislik lideriyim.

  • Bugün size modellerimizden bahsedeceğim.

  • Özelliklerden ve mobil cihazlar için tasarım yaparken nelere dikkat ettiğimizden bahsedeceğim.

  • Modele eklediğimiz ve mobil cihazlarda verimli bir şekilde çalışmasını sağlayan tekniklerden bahsedeceğim.

  • Bu özelliğe nasıl erişebileceğinizi ve AICore ile nasıl entegre ettiğimizi anlatacağım.

  • Son olarak, modelin neler yapabileceğini göstermek için birkaç demo sunacağım.

  • Nereye gittiğimizi anlamak için nereden geldiğimizi anlamak faydalı olacaktır.

  • Gemma 1'i 2024'te kullanıma sunduk.

  • O dönemde 2 milyar ve 7 milyar parametreli, yalnızca metin tabanlı, o zamanki modellere kıyasla çok küçük boyutlu bir model kullanıma sunduk.

  • Gemma 1'den sonra, bazı ek özellikler sunan Gemma 2'yi kullanıma sunduk.

  • Kodlamayı tanıttık.

  • Ayrıca, Gemma serisinin özelliklerini önemli ölçüde genişleten 27B adlı büyük boyutlu bir model de kullanıma sunduk.

  • Gemma 3 kısa bir süre sonra kullanıma sunuldu.

  • Daha sonra, daha fazla özellik ve çok formatlılık ekledik. Ardından, daha küçük modellerin gerçekten çok sayıda kullanım alanı olduğunu fark ettiğimiz için 270 milyon parametreli daha küçük bir model ekledik. Mümkün olduğunca çok sayıda online mobil kullanım alanını desteklemeye çalışıyoruz.

  • Bu nedenle, her sürümde yeteneklerimiz artıyor ve bu bilinçli bir tercih.

  • Biz tek cihazlı donanımlar için tasarım yapıyoruz. Telefonlar, dizüstü bilgisayarlar ve GPU'lar buna dahil. Amacımız daha büyük bir model yapmak değil. 12 ila 27 milyar parametreye kadar çıktık ama amacımız her iterasyonda aynı boyuta daha fazla özellik sığdırmak. Çünkü cihaz üzerinde ve yerel kalmak istiyoruz.

  • Bunu da daha fazla verimlilik sağlayarak yaptık.

  • Özellikle Gemma 4 için neler yaptığımızdan ve bunu nasıl yaptığımızdan bahsedeceğim.

  • E2B'yi kullanıma sunduk. "E"nin ne anlama geldiğini birazdan açıklayacağım. E4B'yi ve 12B birleştirilmiş modeli kullanıma sunduk. Bunu neden yaptığımızı açıklayacağım. Ayrıca bir MoE modeli de kullanıma sunduk.

  • Tüm bunlar, verimliliği kanıtlamaya ve geliştiricilere oluşturmak istedikleri uygulamalar ve öğeler için daha fazla esneklik sağlamaya yardımcı olur.

  • Özellikleri biraz daha yakından incelediğimizde, zaman içinde eklediğimiz özellikleri burada görebilirsiniz.

  • Burada dikkat çekmek istediğim birkaç nokta var. Bunlardan biri bağlam uzunluğu.

  • Önceki Gemma sürümlerine kıyasla çok daha uzun bir bağlam uzunluğu ekledik.

  • Gemma 4, 128.000'e kadar bağlam uzunluğuna sahiptir.

  • Daha büyük modellerde bu sayı 256'ya kadar çıkabilir.

  • ML Kit'in bağlam uzunluğuna bir sınır koyduğunu belirtmek isterim. Bu nedenle, 128 ile başlatabileceğinizi düşünmeden önce bütçenizi kontrol ettiğinizden emin olun.

  • Ancak bu, uzun belgeleri okumanız, daha kapsamlı akıl yürütme ve işlev çağrısı yapmanız, çok formatlılık, görüntü ve ses özelliklerini kullanmanız için yeterli olacaktır.

  • Video, Gemma 3n'den itibaren eklediğimiz yeni bir özellik. Gemma 4'te bu özelliğe biraz daha ağırlık verdik.

  • Artık çok dilli destek sunuyoruz.

  • Birden fazla dilde eğitim vermeye devam ediyoruz. Bu sayede hem yerleşik dil desteği hem de önceden eğitilmiş destek sunuyoruz.

  • Tüm bunlar, yepyeni bir Apache 2 lisansıyla sunuluyor. Bu lisans, modelle oluşturabileceğiniz şeyler konusunda çok daha fazla esneklik sağlayacak ve sürtüşmeyi azaltacak. Bu yüzden çok heyecanlıyız.

  • Modeli oluşturmak ve indirmek çok daha kolaydır.

Çok formatlı özellikler ve karşılaştırmalar

  • Sara Smoot

    Peki, vizyonla ne yapıyoruz?

  • Gemma 4'ün vizyonu, değişken en boy oranına sahip olmasıdır.

  • Bu sayede, bir resmi sıkıştırıp garip bir kareye sığdırmak yerine modelin gerçek en boy oranını koruruz.

  • Yani metniniz ve nesneleriniz bozulmuyor.

  • Bu, modelin kapasitesini önemli ölçüde artırır.

  • Şekiller doğru kalır ve OCR, bu değişken en-boy oranıyla çok daha iyi hale gelir.

  • Görüş özelliği ayrıca çizelgeleri, e-tabloları ve grafikleri okuyabilir.

  • Görsel ipuçlarından da çeviri yapabilir. Yani kelimelerin fotoğrafını çekerseniz bunları sizin için çevirebilir.

  • Ayrıca fiziksel dünya hakkında da akıl yürütebilir.

  • Resme bakabilir, nesnelerin nerede olduğunu ve resimde ne olduğunu anlayabilir.

  • Çok fazla şey yapabilir.

  • Gemma modellerimizle ilgili az bilinen bir diğer özellik de görsel jeton bütçesini ayarlayabilmenizdir.

  • Şu anda ML Toolkit'te ne olduğuna bakabilirsiniz ancak geniş bir aralığınız var.

  • Gücünüzün ve enerjinizin daha fazlasını daha yüksek çözünürlüklü görüntüleri anlamaya harcamak istiyorsanız bunu ayarlayabilirsiniz.

  • Bu, gerçekten yararlanmak istediğiniz bir kullanım alanı değilse resim jetonu bütçesini önemli ölçüde azaltabilir ve bu gücün büyük bir kısmını geri kazanabilirsiniz. Ayrıca, metin uygulamalarınız için model hesaplama döngülerini kullanabilirsiniz.

  • Ses modu bizim için nispeten yeni bir mod.

  • Bu özelliği ilk olarak Gemma 3n'de kullanıma sunduk.

  • Gemma 4'te bu yaklaşımdan tamamen yararlanıyoruz.

  • Ses yalnızca en küçük modellerimizde (E2B, E4B ve 12B) kullanılabilir.

  • Ses dosyasına göre tam transkript oluşturulur.

  • Konuşmaları çevirir.

  • 35'ten fazla dili destekler.

  • Ayrıca modeli 140'tan fazla dilde önceden eğittik. Bu sayede, 35 dilimizden biri olmayan bir dilde ince ayar yapabilir ve hazır olarak desteklenmeyen bir dil için gerçekten iyi bir destek alabilirsiniz.

  • Temsilci akıl yürütme özelliğini ekledik.

  • Bu da Gemma 4'teki yeniliklerden biridir.

  • Planlama yapar.

  • Çok adımlı görevleri yerine getirir.

  • Araçları kullanır.

  • Talimatları tam olarak uygular.

  • Yapılandırılmış JSON döndürür.

  • Temsilci tabanlı bir modelden beklediğiniz her şeyi yapabilir.

  • ML Toolkit'i kullanmıyorsanız ve her şeyi kendiniz yapıyorsanız sohbet şablonlarına dikkat etmeniz gerekir.

  • Sohbet şablonları karmaşıktır.

  • Bu nedenle dikkatli bir şekilde ele alınmaları gerekir.

  • ML Toolkit kullanıyorsanız tüm bu işlemler sizin için yapılır.

  • Son olarak, Gemma metinleri mükemmel bir şekilde anlamaya devam ediyor.

  • Daha uzun bağlam sayesinde artık kodları ve uzun belgeleri analiz edebiliyor, çeviri yapabiliyoruz.

  • Kodlama işlevi sayesinde Android Studio artık çevrimdışı modda Gemma 4'ü destekliyor.

  • Android Studio'yu çevrimdışı kullanmak isterseniz kodlama görevlerinizi Gemma 4 destekler.

  • Önemli bir nokta: E2B ve E4B, telefonunuza sığacak ve iyi çalışacak kadar küçüktür.

  • Yani, çok küçük bir alana sığdırılmış çok sayıda özellik var.

  • Bu aslında mühendislik açısından çok zor bir iş. Bu nedenle Gemma ekibi olarak bununla gurur duyuyoruz.

  • Aşağıda, bu özelliklerin nasıl kullanılabileceğine dair birkaç örnek verilmiştir.

  • Solda, modelin dizüstü bilgisayarı bulabildiğini ve dizüstü bilgisayarın bulunduğu yerin koordinatlarını döndürebildiğini görüyoruz.

  • Ardından uygulama, dizüstü bilgisayarın nerede olduğunu gösteren bir işaretçi çizebilir.

  • Model, ortada nesneleri tanımlayabilir ve ardından bu nesnelerin etrafına sınırlayıcı kutular çizebilir.

  • Bu teknolojinin nesne tespit etme ve nesnelerden kaçınma gibi ilginç uygulama alanları var.

  • Bu gerçekten güzel bir özellik.

  • Sağ tarafta, modelin metni nasıl okuyabildiği gösteriliyor.

  • Bu, "Dikkat, kedi var." anlamına gelir.

  • Ayrıca resimde neler olduğunu anlıyor, bu kediyi bu komik pozisyonda görüyor ve alttaki metinde "Bir şeyler olabilir" yazan bir espri olduğunu çevirip belirtebiliyor.

  • Bence bu çok tatlı bir şey.

  • Yani işaret etme, nesne tespit etme, OCR ve çeviri işlemlerini özel bir görüntü işleme hattı olmadan yapar.

  • Şimdi değerlendirme rakamlarına bakalım.

  • Yetenekleri göstermek her zaman önemlidir. Birçok kişi bu testlere bakıyor ve bence modellerin gücünü burada görebilirsiniz.

  • Son iki sütuna bakarsanız E2B'nin akıl yürütme, kodlama ve temsilci becerileri açısından çok daha büyük bir model olan Gemma 3 27B'yi geride bıraktığını görürsünüz.

  • LiveCodeBench'e bakalım.

  • Gemma 4'ün puanı 44, Gemma 3 27B'nin puanı ise 29.

  • AIME de çok daha yüksek.

  • Temsilci değerlendirmesi olan Tau2'de de çok daha yüksek bir puan alarak bu alandaki gücünü gösteriyor.

  • Parametre sayısını biraz daha artırdığımızda E4B modelimiz, her karşılaştırmada 27B modelimizi açık ara geride bırakıyor.

  • Gemma 3'ten Gemma 4'e geçerken aynı sayıda parametreye çok daha fazla özellik ekledik.

Cihaz üzerindeki donanım ve model mimarileri

  • Sara Smoot

    Peki bunu nasıl yapıyoruz?

  • Modeli büyütmeden daha yetenekli hale getirmek zorlu bir iştir.

  • Donanım açısından bakıldığında telefonların belleği çok daha azdır.

  • Yani, bir sunucuda elde edebileceğiniz 80 GB'a kıyasla 12 ila 16 GB'lık bir kapasiteden bahsediyoruz.

  • Bant genişliği de çok daha azdır: Sunucuda terabaytlarca bant genişliği elde ederken burada 50 ila 80 GB elde edersiniz.

  • Ayrıca ciddi güç kısıtlamaları da var.

  • Modeli çalıştırırken tüm bunları göz önünde bulundurmamız gerekir.

  • Birazdan göstereceğim her teknik, bu kısıtlamaların her birini hedefliyor ve modeli mobil donanımda çalışmaya daha uygun hale getiriyor.

  • İlk olarak, her boyut için ayrı bir mimari kullanmıyoruz.

  • Her model boyutunun kendi ayrı mimarisi vardır.

  • E2B ve E4B modellerimizde bazı özel unsurlar var. Konuşmamın geri kalanında öncelikle bunlara odaklanacağım. Ancak 12B modelimizde görüntü kodlayıcı olmadığını bilmenizde fayda var.

  • Bu modelde, hem dağıtımı basitleştirmek hem de modelin ihtiyaç duyduğu parametre sayısını en aza indirmek için görüntü kodlayıcıyı çıkardık.

  • Bu genellikle dizüstü bilgisayar donanımımızı hedef alır.

  • Büyük modellerimiz, en yüksek kapasiteyi göstermek için tasarlanmıştır.

  • Bu modeller hem tam yoğun hem de uzmanların karışımı model olarak sunulur.

  • Uzmanların karışımı modeli dizüstü bilgisayarlarda da çalıştırılabilir. Bu modeli, uzman mimarisinin sağladığı daha düşük gecikme süresi nedeniyle geliştirdik.

  • Konuşmanın geri kalanında mobil modellere (E2B ve E4B) odaklanacağım ve bu modellerin telefonlarınızda gerçekten iyi çalışması için neler yaptığımızdan bahsedeceğim.

  • "E" harfi, katman başına yerleştirmelerden (per-layer embeddings) gelir.

  • Bu, modellere eklediğimiz ilginç ve yenilikçi bir teknik.

  • Modellerin çalışma şeklini düşünürseniz modellerin daha akıllı olması için daha fazla parametreye ihtiyacı vardır.

  • Parametre verimliliği konusunda daha iyiye gidiyoruz ancak genel olarak modelin daha iyi olmasını istiyorsanız daha fazla parametreye ihtiyacınız var.

  • PLE, "Daha fazla parametreye ihtiyacımız var." der.

  • Ancak doğrudan modele daha fazla parametre eklemek yerine ekstra bir yerleştirme tablosu kullanırız.

  • Bu yerleştirme tablosu her katman için okunur.

  • Bu sayede, modelin ihtiyaç duyacağı jetonları belirledikten sonra belirli bir giriş dizisi için gereken katman bazlı yerleştirmeleri alabilir ve yalnızca bu yerleştirmeleri modele yükleyebilirsiniz.

  • Bu sayede, parametre sayısı çok daha fazla olsa da etkili bir 2 milyar parametreli model elde edersiniz.

  • Bu nedenle, etkili bir şekilde 2 milyar parametre diyoruz çünkü belleğinize yalnızca bu 2 milyar parametre yükleniyor.

  • Yerleştirme tablosu genellikle RAM'e değil, flash belleğe kaydedilir.

  • Bu sayede, çok fazla parametre aktarmanız gerekmediği için bant genişliğini sınırlamış olursunuz ancak çok daha büyük bir modelin tüm özelliklerinden yararlanmaya devam edersiniz.

  • Ayrıca cihazda daha az RAM kullanır.

  • Eklediğimiz bir diğer özellik de taslak oluşturucu model.

  • Gemma için kullandığımız taslak oluşturma modeli, çoklu jeton tahmin modelidir.

  • Bu, tahmine dayalı kod çözme yöntemlerinden biridir.

  • Bu sayede, genel bir otoregresif modele kıyasla her geçişte daha fazla jeton tahmin edilir.

  • Tipik otoregresif modeller her seferinde bir jeton üretir. Her jeton için tüm modelden geçmeniz gerekir.

  • MTP, bir seferde üç veya dört jeton tahmin eder ve ardından bu jetonları doğrulamak için ana modeli kullanırız.

  • Bu jetonlar kabul edilirse kullanılır ve genellikle her geçişte tek bir jeton yerine iki, üç, dört jeton alabiliriz.

  • Bu yaygın bir tekniktir.

  • Taslak oluşturucu modelleri mevcuttur.

  • Gemma için farklı ve özel olarak yaptığımız şey, KV önbelleğini temel modelden paylaşmamızdır.

  • E2B için tam ön doldurma yapar, önbelleği oluştururuz ve ardından taslak modelimiz bu KV önbelleğini kullanır.

  • Yani taslak modeliniz için önceden doldurma işlemini yeniden oluşturmanız gerekmediğinden, bin jetonluk bir istemde yaklaşık 130 milisaniye tasarruf edersiniz.

  • Bu nedenle, taslak oluşturma modelimiz piyasadaki diğer taslak oluşturma modellerinden yaklaşık 30 ila 40 kat daha hızlıdır.

  • Rakamlara bakarsanız taslak oluşturucu modeli kullandığınızda hızın arttığını görebilirsiniz.

  • Çoğu taslak modeline kıyasla %40 ila %60 daha yüksek bir kabul oranı elde ediyoruz.

  • Taslak modelini kullanarak %40 daha düşük kod çözme gecikmesi elde ediyoruz ve bu taslak modelini kullanarak %30 ila %40 daha az enerji tüketiyoruz.

  • Böylece daha hızlı yanıtlar, daha uzun pil ömrü elde edersiniz ve kod değişikliği yapmanız gerekmez.

  • Bu araç oldukça basit ve iyi destekleniyor.

Niceleme teknikleri ve optimizasyon

  • Sara Smoot

    Bir sonraki yeniliğimiz nicemleme ile ilgili.

  • Niceleme de yeni bir teknik değil ancak mobil modellerimizin mobil donanımlarla uyumlu bir şekilde çalışması için niceleme konusunda ekstra özen gösteriyoruz.

  • QAT modellerimizle ilgili düşündüğümüz birkaç şey var.

  • İlk olarak, QAT (niceleme duyarlı eğitim) yapıyoruz.

  • Bu da eğitimimizi yaparken niceleme yapacağımızı göz önünde bulundurduğumuz ve kabul ettiğimiz anlamına gelir.

  • Bu sayede model, parametrelerin gruplandırılacağını anlar ve kalite korunur.

  • Ayrıca kaliteyi korumaya da yardımcı olur ve genellikle modeli boyutunun çok küçük bir kısmına indirebiliriz.

  • Yani 16 bitlik bir modelden 4 bitlik bir modele geçip tüm kaliteyi korursanız bellekten çok ciddi bir tasarruf elde etmiş oluruz.

  • E2B, iki farklı niceleme seçeneğiyle sunulur.

  • Q4_0 biçimimiz var.

  • Bu, daha genel amaçlı bir nicelemedir.

  • Bu özelleştirilebilir.

  • Bu, diğer niceleme kitaplıklarıyla çok iyi çalışır.

  • Bu sayede, kullanım alanınıza uygun bir niceleme yöntemiyle denemeler yapabilirsiniz.

  • Ayrıca, mobil kuantizasyon adını verdiğimiz çok özel bir kuantizasyonumuz var. Bu kuantizasyon çok agresif ve bunu en uygun hale getirmek için çok fazla araştırma yaptık.

  • Çoğu çalışma zamanında desteklenmez ancak ML Kit ve Android Studio'da desteklendiği için kullanabilirsiniz.

  • Bu kartı orada kullanabilirsiniz.

  • Geliştirdiğimiz yeniliklerden bazıları: Statik, etkinleştirme kuantları kullanıyoruz.

  • Niceleme yaparken dinamik aralık etkinleştirmesi kullanıyorsanız aralıkları anında hesaplamanız ve niceleme için kullanmanız gerekir.

  • Statik aralık kuantizasyonu sizin için yapıldı. Bu sayede aralıkları önceden hesaplamanız gerekmez.

  • Yaptığımız diğer bir şey de kanal bazında nicemlemedir.

  • Modeli, çoğu mobil donanımla çok iyi çalışan kanal bazlı bir şekilde yapılandırıp sıkıştırdık.

  • 2 bitlik nicelemeyi hedefledik.

  • Bu nedenle iki bitlik niceleme genellikle oldukça kayıplıdır.

  • PTQ'yu uygulamak çok zordur.

  • Araştırmalar yaptık ve modellerimizi, parametrelerin nerede 2 bite kadar sıkıştırılabileceğini bilecek kadar iyi anladık ve niceleme duyarlı eğitimle iyi sonuçlar elde ettik.

  • Bu sayede, kaliteden neredeyse hiç ödün vermeden depolama alanından büyük ölçüde tasarruf edebilirsiniz.

  • Özel quant modelimiz 1 gigabayttan daha küçük. Bu, mevcut 4 bitlik quant'larımızdan bile oldukça küçük.

  • Özel niceleme özelliğimize eklediğimiz bir diğer özellik de yerleştirme ve KV önbellek nicelemesi.

  • Bu iki işlemi de yapmanın birçok yolu vardır.

  • Araştırmalarımızı yaptık ve modelimiz için en uygun olanın bu olduğuna karar verdik.

  • Biz de bu bilgileri bu kontrol noktalarında bir araya getirdik.

  • Tüm bunlar, aktif belleğinizi önemli ölçüde azaltır.

  • Bu sayede, parametreleri ileri geri taşımak zorunda kalmaz ve bant genişliğinden tasarruf edersiniz.

  • Ayrıca, uzun sohbetlerinizi ve diğer içeriklerinizi depolama alanı sorunu yaşamadan yönetmenize ve saklamanıza olanak tanır.

Sistem entegrasyonu ve güvenlik mimarisi

  • Sara Smoot

    AICore üzerinden entegrasyon yapıyoruz.

  • AICore ile Gemini Nano 4 modelini kullanabilirsiniz.

  • Gemini Nano 4, AICore üzerinden oluşturulan ve çalıştırılan Gemma'dır.

  • AICore size birçok avantaj sunar.

  • Bu, en az müdahale gerektiren yöntemdir. Diğer yöntemden de kısaca bahsedeceğim.

  • Diğer yol ise daha özel ve uygulamalı bir yol olan LiteRT'yi kullanmaktır.

  • Bu yöntemi tercih ederseniz model, uygulamanızla birlikte paketlenir.

  • Cihaz üzerinde barındırılan paylaşılan modeli kullanmaz.

  • Bu nedenle, belleğinizin farkında olmanız gerekir.

  • Güç tüketiminize dikkat etmeniz gerekecek.

  • Telefondaki kaynaklar ve bunları nasıl yönettiğiniz konusunda çok daha fazla uygulamalı deneyim kazanmanız gerekecek.

  • Ancak tam kontrol sahibi olursunuz.

  • LiteRT ile ince ayar yapabilirsiniz. Bu sayede daha fazla özelleştirme seçeneği elde edersiniz.

  • AICore'u kullanırsanız ML Toolkit API'lerinden yararlanabilirsiniz. Bu, en az müdahale gerektiren yöntemdir.

  • Bunu kullandığınızda, bahsettiğim tüm bu işlevleri elde edersiniz, katman başına yerleştirmeler uygun şekilde işlenir ve çalışma zamanı, parametrelerin RAM'de olmamasını, yerleştirme parametrelerinin RAM'de olmamasını destekler.

  • MTP zaten yerleşik olarak bulunduğundan otomatik olarak çalışır.

  • Ayrıca mobil quant'ımızı da kullanıyor.

  • Ayrıca, bu nicelemeyi barındırmak ve onunla iyi çalışmak için tasarlanmış bir çalışma zamanında çalışır.

  • Yani aslında ihtiyaç duyduğumuzda 2 bit hassasiyetle çalışıp işlem yapabiliyor. Bu da onu oldukça verimli kılıyor.

  • Daha ayrıntılı bilgi edinmek isterseniz bu konuda iki konuşma daha yapıldı veya yapılacak.

  • David'in ML Kiti oturumunda Gemini Nano 4 yolu, modelin ML Kiti aracılığıyla nasıl kullanılacağı ele alınacak. Chintan ve Fergus'un LiteRT oturumunda ise LiteRT'nin nasıl kullanılacağı ve LiteRT ile nasıl geliştirme yapılacağı anlatılacak.

  • Gemma'nın istek akışı bu şekildedir.

  • Bazı giriş işlemlerinden geçen bir API yüzeyi vardır ve bunların tümü sizin için yerleşik olarak sunulur.

  • Giriş işleme sürecinin bir parçası da güvenlik sinyalleridir.

  • AICore'da bazı yerleşik güvenlik özellikleri bulunur.

  • Modelde birçok güvenlik kontrolü yapılır.

  • Bu, mobil uygulamalar için ekstra bir güvenlik katmanıdır.

  • Özellik yapılandırmasından ve ardından cihaz üzerinde çalışma zamanımızdan geçer.

  • Çıktıda da güvenliği tekrar kontrol eder.

  • Güvenli çıkış ürettiğinden emin olmak için çıkış sinyallerini kontrol eder.

  • Bu da modele eklediğimiz güvenlik önlemlerinin ötesinde ek bir güvenlik katmanıdır.

  • Ayrıca güncellemeler yapar ve uygulamalar arasında paylaşılır.

  • Özellikle birden fazla uygulama geliştiriyorsanız veya paketlenmiş bir modeli yönetmek istemiyorsanız bu yöntem gerçekten çok iyi bir seçenektir. Ayrıca, birçok işlevi doğrudan kullanıma hazır olarak elde edersiniz.

Cihaz üzerinde yerel demolar

  • Sara Smoot

    Şimdi demoya geçeceğim.

  • Bu bir sesli asistandır.

  • Bunu dizüstü bilgisayarda göstereceğim.

  • Dikkat etmenizi istediğim bazı noktalar var. Bu tamamen yerel bir model ve cihaz üzerinde çalışıyor.

  • VAD kullanılarak basamaklandırılır.

  • Sesle yazma, Gemma ve ardından metin okuma modelinden geçer.

  • Bu, akış olarak yayınlanıyor ve E2B modelinde de çalıştırılıyor.

  • Bu model bir dizüstü bilgisayarda çalışıyor ancak telefonda çalışan modelle tamamen aynı.

  • Tüm bunlar telefonda yapılabilir.

  • Bu demo, LiteRT ile oluşturulmuştur.

  • ML Kit ile de oluşturulabilmelidir.

  • Gecikme süresine dikkat edin. Sunucu gidiş dönüşü yoktur. Kesintilerin nasıl ele alındığına dikkat edin.

  • Gemma, bana biraz kendinden bahset.

  • Ben Gemma 4, Google DeepMind tarafından geliştirilen büyük dil modeliyim.

  • Bilgi sağlamak ve görevleri tamamlamak için metin ve görüntüleri işlerim.

  • Mükemmel.

  • Bana Shakespeare hakkında biraz bilgi verebilir misin?

  • William Shakespeare, İngilizcenin en büyük yazarı olarak kabul edilen İngiliz oyun yazarı ve şairdir.

  • Bir dakika.

  • Biliyor musunuz?

  • Güneş sistemi hakkında bilgi edinmek istiyorum.

  • Bu konuda bilgi verebilir misiniz?

  • Güneş sistemi; Güneş'ten ve sekiz gezegen, cüce gezegenler, uydular, asteroitler ve kuyruklu yıldızlar dahil olmak üzere yerçekimiyle Güneş'e bağlı olan her şeyden oluşur.

  • Bu harika.

  • Kara deliklerin nasıl çalıştığını açıklayabilir misin?

  • Kara delik, devasa bir yıldızın kendi yerçekimi altında çökmesiyle oluşur. Bu çökme, yerçekiminin o kadar güçlü olduğu bir uzay-zaman bölgesi yaratır ki ışık dahil hiçbir şey bu bölgeden kaçamaz.

  • Bu çok güzel.

  • Teşekkür ederiz.

  • Rica ederim

  • Yanıtlayabileceğim başka sorularınız var mı?

  • İşte böyle.

  • Sesli asistan var.

  • Sıradaki soruya geçelim.

  • Bu, video özelliklerini kullanan yerel bir asistan olacak.

  • Tamamen çevrimdışı çalışıyor. Bu özelliği vurgulamak için demo, doğada kamp yaparken gerçekleştiriliyor.

  • Bu model, E4B modelini temel alır.

  • Doğal bir şekilde konuşur.

  • Ona bir şeyleri nasıl yapacağını göstereceğiz.

  • Arka planda araç çağrılarını kullanıyor ve telefondaki farklı öğelere erişebiliyor.

  • Oldukça eğlenceli bir tasarım.

  • Gemma, şu anda internetimiz var mı?

  • Hayır, şu anda internet bağlantımız yok.

  • Bu uyarı neyle ilgili?

  • Bu İspanyolca.

  • Bu tabela, puma yaşam alanıyla ilgili bir uyarıdır.

  • Pumaların yerel çevrenin bir parçası olduğunu ve bir pumayla karşılaşırsanız dikkatli olmanız gerektiğini belirtir.

  • Bu fonksiyonun türevi nedir?

  • x kare artı 7x artı 10'un türevi 2x artı 7'dir.

  • Çok komik.

  • Merhaba.

  • Merhaba Cindy.

  • Gemma, bu akşamki grup yürüyüşümüz ne zaman?

  • Grup yürüyüşünüz saat 18:00'e planlandı.

  • Bugün.

  • Bu bir puma mı?

  • Hayır, o bir köpek.

  • Aferin sana.

Kaynaklar ve sonraki adımlar

  • Sara Smoot

    Tamam, oluşturmaya başlayın.

  • Bunlar yukarıdaki bağlantılar, aslında kontrol noktalarının bağlantıları.

  • Doğrudan kontrol noktalarına ve model kodumuza bakmak isterseniz hepsi mevcut.

  • ML'yi kullanabilirsiniz. Gemma, Gemini Nano 4 ve ML Kiti bağlantısı var.

  • Kontrol noktaları Hugging Face'te, kodumuz ise Transformers kod tabanında yer alıyor.

  • Neler yaptığımızı görebilirsiniz.

  • Kontrol noktalarını Kaggle'dan da alabilirsiniz.

  • ML Kiti hakkında daha fazla bilgi edinmek isterseniz David'in ML Kiti sunumuna göz atabilirsiniz.

  • Daha sonra Chintan ve Fergus'un LiteRT sunumu da olacak.

  • LiteRT aracılığıyla uygulamalarınızda modele nasıl erişeceğinizi ve modeli nasıl kullanacağınızı öğrenmek istiyorsanız

  • Teşekkür ederiz.

  • Neler geliştireceğinizi görmek için sabırsızlanıyorum.