Ana içeriğe atla

Gemma 3n: Demo Projesiyle Rehber (VLM Android Uygulaması)

Google'ın Gemma 3n modelini kullanarak, buluta ihtiyaç duymadan doğrudan telefonunuzda görseller hakkında soruları yanıtlayan bir Android uygulamasını nasıl geliştireceğinizi öğrenin.
Güncel 3 Eki 2026  · 12 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Google, uç cihazlar için çok modlu, görsel, dil ve ses görevlerini modüler yürütme ile destekleyen Gemma 3n modelini yeni yayımladı. Bu eğitimde, Gemma 3n’i adım adım nasıl indirip yerelde, doğrudan Android cihazınızda çalıştıracağınızı anlatacağım—bulut hesaplamaya gerek yok. Şu işlemleri yapmanızı sağlayan bir demo uygulaması kullanacağız:

  • Görseller hakkında doğal dille sorular sorma
  • Modeli Google’ın ai-edge-litert çalışma zamanı ile tamamen çevrimdışı çalıştırma
  • Deneyimi özel bir Android uygulama arayüzü içinde test etme

.task dosya formatının hafif dağıtımı nasıl mümkün kıldığını, uygulamanın Gemma 3n’i yerel kullanım için nasıl otomatik indirip başlattığını ve tüm bunları yaparken performansı akıcı, bellek kullanımını düşük tuttuğunu öğreneceksiniz.

Yapay Zeka Uygulamaları Geliştirin

OpenAI API'sını kullanarak AI uygulamaları oluşturmayı öğrenin.
Ücretsiz Olarak Beceri Geliştirmeye Başlayın

Gemma 3n Nedir?

Gemma 3n, telefonlar, tabletler ve dizüstü bilgisayarlar gibi gündelik cihazlarda verimli şekilde çalışacak biçimde tasarlanmış, Google AI’nın en yeni, açık ağırlıklı çok modlu model ailesidir. Katman Başına Gömme (PLE) parametre önbelleklemesini destekleyen yeni MatFormer mimarisi üzerine kurulu olan Gemma 3n, bellek ve hesaplama maliyetlerini en aza indirirken cihaz üzerinde yüksek performans sunar.

Geleneksel görsel-dil modellerine (VLM) benzer olmakla birlikte, Gemma 3n metin, görsel ve ses kiplerini destekler. "3n" varyantı özellikle uç dağıtım için optimize edilmiştir ve Google’ın AI Edge SDK’si aracılığıyla CPU, NPU veya mobil GPU’larda hafif şekilde çalışır.

Gemma 3n’in başlıca özellikleri şunlardır:

  • Çok modlu girdi: Temellendirilmiş görsel muhakeme için hem metin hem görsel girdi alır
  • Cihaz üzerinde çıkarım: Model indirildikten sonra internete gerek yok
  • Parametre verimliliği: Bellek yükünü azaltmak için seçici etkinleştirme, PLE önbellekleme ve MatFormer iç içe yapısını kullanır
  • Mobil için optimize: Gemma 3n, Android’de MediaPipe ve Google AI Edge araçlarıyla INT4 ve FP16 çıkarımını destekler
  • Açık ağırlıklar: Sorumlu ticari kullanım ve ince ayar için lisanslanmıştır

Önemli not: Gemma 3n tam mimarisinde ses girdilerini desteklese de, ses yetenekleri henüz herkese açık önizlemede mevcut değildir.

Gemma 3n’e Nasıl Erişilir?

Gemma 3n’i üç yöntemden biriyle deneyebilirsiniz:

  1. Google AI Studio: Tarayıcıda başlamanın en kolay yolu. Google AI Studio sayfasına gidip model listesinden Gemma 3n’i seçin. Şu anda yalnızca “gemma-3n-e4b-it” varyantı kullanımda. 
  2. Hugging Face önizlemesi: Gemma 3n’in .task dosyası Google’ın ai-edge-litert formatı altında yayımlanmıştır. Hugging Face modeller sayfasına erişim isteği gönderebilir ve modeli yerel olarak indirip çıkarım yapabilirsiniz. Bir .task dosyası, modelin önceden derlenmiş sürümünü, meta verilerini ve tüm gerekli yapılandırmaları içeren; Google’ın AI Edge SDK’sı ile hızlı ve güvenli cihaz üstü yürütme için tasarlanmış, kompakt ve çalışma zamanı dostu bir pakettir.
  3. Cihazda çalıştırın (önerilir): Google’ın resmi Gemma Gallery Uygulamasını kullanarak Gemma 3n’i doğrudan Android telefonunuzda çalıştırın. Bu yöntem, yerel bir model aracılığıyla tam görsel ve istem etkileşimini destekler.

Şimdi, görsel ve metin istemlerini işlemek için Gemma 3n modelini kullanan çalışan bir Android uygulamasını nasıl oluşturacağınızı adım adım göstereceğim. Google’ın resmi Gallery deposunu temel alacak ve uygulamayı doğrudan dikkat dağıtmadan Ask Image ekranına açılacak şekilde özelleştireceğiz.

Adım 1: Uygulamayı Klonlayın ve Kurun

Yeni bir proje oluşturarak ve Google’daki orijinal depoyu klonlayarak başlayalım.

Adım 1.1: Yeni bir Android Studio projesi oluşturun

Dizüstü bilgisayarınızda, projeyi Android Studio’da yeni bir proje olarak açın ve Empty Activity’yi seçin.

gemma 3n çalıştırmak için Android Studio Yeni Proje penceresi

Adım 1.2: Yeni bir boş etkinlik ayarlayın

Ardından, etkinliğinizin adını doldurun (örneğin, “Ask_Image_Demo”) ve gerisini olduğu gibi bırakın. Sonra Finish’e tıklayın.

gemma 3n için Android Studio boş etkinliği

Adım 1.3: Ana depoyu klonlayın

Şimdi, Android Studio içindeki terminali (sol alt köşe) açın ve aşağıdaki bash komutlarını çalıştırın:

git clone https://github.com/google-ai-edge/gallery
cd gallery/android

gemma 3n çalıştırmak için Android Studio Terminali

Bu, projenizi açacaktır. Sekmenin sol tarafında tüm proje dosyalarını görüntüleyebilirsiniz.

Android Studio Dosyaları

Adım 2: Ask Image Dışındaki Tüm Görevleri Kaldırın

Sırada, uygulamamızın açıldığında doğrudan Ask Image sayfasına gitmesi için birkaç dosyayı düzenleyeceğiz. Ardından şu konumdaki Tasks.kt dosyasına gidin:   app/src/main/java/com/google/ai/edge/gallery/data/Tasks.kt. Uygulamanın işlevselliğini yalnızca 'Ask Image' özelliğiyle sınırlamak için aşağıdaki düzenlemeleri yapacağız:

Önce:

/** All tasks. */
val TASKS: List<Task> = listOf(
  TASK_LLM_ASK_IMAGE,
  TASK_LLM_PROMPT_LAB,
  TASK_LLM_CHAT,
)

Sonra:

/** All tasks. */
val TASKS: List<Task> = listOf(
  TASK_LLM_ASK_IMAGE
)

Bu değişiklik, Prompt Lab ve Chat gibi diğer demoları devre dışı bırakır ve yalnızca Ask Image’ın görünmesini sağlar.

Adım 3: Ask Image Ekranına Otomatik Geçiş

GalleryApp.kt dosyasında (// app/src/main/java/com/google/ai/edge/gallery/GalleryApp.kt konumunda), LaunchedEffect’i görsel sayfasına otomatik yönlendirecek şekilde güncelleyin.  Bu değişiklik, uygulamanın varsayılan görev seçimi ekranını atlayarak doğrudan Ask Image arayüzünü açmasını sağlar.

Önce:

@Composable
fun GalleryApp(navController: NavHostController = rememberNavController()) {
  GalleryNavHost(navController = navController)
}

Sonra:

package com.google.ai.edge.gallery
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.navigation.NavHostController
import androidx.navigation.compose.rememberNavController
import com.google.ai.edge.gallery.data.TASK_LLM_ASK_IMAGE
import com.google.ai.edge.gallery.ui.llmchat.LlmAskImageDestination
import com.google.ai.edge.gallery.ui.navigation.GalleryNavHost
@Composable
fun GalleryApp(
  navController: NavHostController = rememberNavController()
) {
  // as soon as GalleryApp comes up, navigate to Ask-Image 
  // and drop “home” off the back-stack:
  LaunchedEffect(Unit) {
    TASK_LLM_ASK_IMAGE.models
      .firstOrNull()    // safety: don’t crash if the models list is empty
      ?.name
      ?.let { modelName ->
        navController.navigate("${LlmAskImageDestination.route}/$modelName") {
          popUpTo("home") { inclusive = true }
        }
      }
  }
  GalleryNavHost(navController = navController)
}

Yeni koddaki güncellenmiş GalleryApp işlevinin yaptıklarının kısa özeti:

  • LaunchedEffect: Oluşumda bir kez tetiklenen bir Jetpack Compose yan etkisi. Burada, GalleryApp oluşturulur oluşturulmaz gezinti mantığını çalıştırmak için kullanılıyor.
  • İlk mevcut modeli alır: TASK_LLM_ASK_IMAGE.models.firstOrNull(), gezinmede kullanılmak üzere ilk mevcut görsel-metin modelinin (ör. Gemma 3n) adını güvenli şekilde alır. Bu, model listesi boşsa uygulamanın çökmesini önler.
  • navController.navigate(): Uygulamayı seçilen modelin adını kullanarak Ask-Image ekranına dinamik olarak yönlendirir. Bu, giriş noktası olarak varsayılan Ana ekranın yerini alır.
  • Geri gezinmede ana ekranı kaldırma: popUpTo("home") yöntemi, geçmişten Ana ekranı kaldırarak gezinme yığınını temizler. Böylece kullanıcı sistemin geri tuşuyla bu ekrana dönemaz.

Kalan kodu olduğu gibi bırakın. Bu değişiklikler birlikte, uygulamanın geçerli bir model yüklenmiş şekilde doğrudan Ask-Image arayüzünde açılmasını sağlar ve demo akışını iyileştirir.

Adım 4: Uygulamayı Cihazınıza Yükleyin ve Çalıştırın

Gerekli tüm değişiklikleri yaptıktan sonra uygulamayı çalıştıracağız. Uygulamanızı yerel Android cihazınızda çalıştırmak için, aşağıdaki adımlarla Android Studio ile cihazınızı kablosuz hata ayıklama üzerinden eşleştirin.

Adım 4.1: Android cihazı hazırlayın

Android cihazınızda Ayarlar uygulamasına gidip Geliştirici seçeneklerini etkinleştirin. Ardından Kablosuz hata ayıklamayı açın. İki eşleştirme seçeneği olan bir ekran görmelisiniz.

gemma 3n çalıştırmak için Android cihazda Kablosuz hata ayıklama ayarları

Adım 4.2: Android Studio’da cihazları yönetin

Android Studio’da Device Manager (Android logolu telefon simgesine benzer) öğesini açın ve QR koduyla eşle seçeneğine tıklayın.

Yeni cihazı WiFi ile eşleştir

Cihazınızla QR kodu tarayın ve eşleştirme kurulumunu tamamlayın. Cihazınız bağlandığında, Device Manager altında cihaz adınızı göreceksiniz. Bilgisayarınız ile Android cihazınızın aynı WiFi ağına bağlı olduğundan emin olun.

Device Manager

Adım 4.3: Uygulamayı çalıştırın

Android cihazınızı, Device Mirroring simgesine (bir masaüstü ekranı ve telefon ekranı gösterir) tıklayarak yansıtmayı başlatın. Cihaz ekranınız yansıtıldığında, yeşil Run simgesine tıklayarak uygulamayı cihazınıza dağıtın.

Adım 4.4: Modelleri cihazda indirin

Uygulama başlatılacak ve modeli güvenli şekilde indirmek için Hugging Face’e giriş yapmanızı isteyen bir tarayıcı penceresi açılacaktır.

Chrome penceresi  HuggingFace penceresi

HuggingFace’e giriş yaptıktan sonra, tercih ettiğiniz model için indirmeyi başlat’a tıklayın; indirme başlayacaktır. Bu örnekte varsayılan olarak Gemma-3n-E2B-it-int4 modelini kullanıyorum.

gemma 3n yerelde indiriliyor

Adım 4.5: Denemelere başlayın

İndirme tamamlandığında, sizi doğrudan “Ask Image” sayfasına götürecek. Ardından, galerinizden mevcut bir görsel seçin veya cihazınızın kamerasıyla yeni bir fotoğraf çekin. Sonra görselle birlikte bir istem verip modeli çalıştırın.

Ask Image ana sayfası

İşte benim denediğim bir örnek.

gemma 3n ile CPU üzerinde Ask Image Demo

  gemma 3n ile Ask Image Demo

Model başlangıçta CPU üzerinde çalışır. Üç yatay sürgü simgesiyle temsil edilen 'Tune' simgesini kullanarak olası daha iyi performans için GPU’ya geçebilirsiniz.

Ask Image Demo: Yapılandırmalar

   GPU üzerinde Ask Image Demo

GPU’ya geçmek, özellikle daha büyük görsellerin ve daha karmaşık sorguların işlenmesinde toplam gecikmeyi önemli ölçüde azaltabilir. GPU işlemesi genelde daha hızlı çözümleme (decode) hızları sunarak yanıtları hızlandırsa da, bazı durumlarda prefill hızının CPU’da az da olsa daha yüksek olabileceğini unutmayın.

Bunun nedeni, verilerin ilk yüklenmesi ve hazırlanmasının (prefill) CPU’ya bağımlı olabilmesidir. Ancak GPU’da daha hızlı çözümleme ve genel gecikmenin azalması genellikle daha ağır basar; bu da daha akıcı ve duyarlı bir deneyim sağlar.

Tam proje kodunu incelemek isterseniz, bu GitHub deposunu hazırladım.

Sonuç

Gemma 3n’in, uç cihazlarda bulut çıkarımına gerek duymadan görsel-soru yanıtlama yeteneğini nasıl mümkün kıldığını inceledik. Hafif bir Android uygulamasına bir .task dosyasını nasıl entegre edeceğinizi, modeli doğal dille nasıl yönlendireceğinizi ve doğrudan telefonunuzdan herhangi bir görsel hakkında doğru yanıtlar alacağınızı öğrendiniz.

Bu uygulamalı rehber, Gemma 3n’in çok modlu yapay zekâyı demokratikleştirerek geliştiricilerin ve araştırmacıların güçlü modelleri cihaz üzerinde dağıtmasını nasıl kolaylaştırdığını gösteriyor. İster çevrimdışı asistanlar, eğitim araçları, sağlık uygulamaları veya başka çözümler geliştirin, Gemma 3n pek çok kullanım senaryosunu destekleyebilir.

Google Matformer mimarisini geliştirmeye devam ederken, daha da kompakt, daha yüksek doğruluk ve daha düşük gecikmeli çok modlu modeller göreceğimizi umuyorum. Gemma 3n hakkında daha fazla bilgi için resmi AI Edge duyuru bloguna göz atın veya açık kaynak deposuna GitHub üzerinden dalın.

Daha fazla yeni yapay zekâ aracını keşfetmek isterseniz, şu blogları öneririm:


Aashi Dutt's photo
Author
Aashi Dutt
LinkedIn
Twitter

ML (Üretken Yapay Zekâ) alanında Google Developers Uzmanıyım, Kaggle 3x Expert unvanına sahibim ve 3+ yıllık teknoloji deneyimiyle Women Techmakers Elçisiyim. 2020'de bir sağlık teknolojileri girişiminin kurucu ortağı oldum ve Georgia Tech'te makine öğrenmesi alanında uzmanlaşarak bilgisayar bilimleri yüksek lisansı yapıyorum.

Konular
Yapay Zeka
Üretken Yapay Zeka

Bu kurslarla yapay zekâyı öğrenin!

Program

Yapay Zeka Uygulamaları Geliştirme

21 sa
OpenAI API, Hugging Face ve LangChain dahil olmak üzere en yeni yapay zeka geliştirici araçlarıyla yapay zeka destekli uygulamalar oluşturmayı öğrenin.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Devamını GörDevamını Gör