Bu eğiticide, özelleştirilmiş bir Gemma modelini Android örnek uygulamasında dağıtma sürecinin tamamı adım adım açıklanmaktadır.
Bu eğitimde:
- İnce ayarlı bir modelle başlayın
- İnce ayarlı modeli AI Edge Torch kitaplığıyla dönüştürme
- Bu işlem, HuggingFace kontrol noktasını .litertlm dosyasına dönüştürür.
- İnce ayarlı modelin kalitesini değerlendirme
- Özel modeli bir test cihazına göndermek için adb komutlarını çalıştırın.
- Bu işlem, .litertlm biçimindeki modeli yerel test için bir Android cihaza aktarır.
- Pirate Gemma örnek uygulamasını çalıştırın.
- Bu işlem, örnek bir Android uygulamasında ince ayarlı model üzerinde çıkarım çalıştırmak için LiteRT-LM Kotlin kitaplığını kullanır.
1. adım: İnce ayarlı bir modelle başlayın
Bu eğitimde, ince ayarlı bir modelle başlayacağız. Temel model ile ince ayarlı model arasındaki farkı net bir şekilde göstermek için temel Gemma270m modelini alıp korsan gibi konuşacak şekilde ince ayarladık.
Önceden ince ayar yapılmış Pirate Gemma modelini https://huggingface.co/erintwalsh/pirate-gemma adresinde bulabilirsiniz.
Bir modeli ince ayarlama hakkında daha fazla bilgi için Gemma Cookbook ve Unsloth kılavuzlarına bakın.
2. adım: Özel modelinizi komut satırında dönüştürün ve çalıştırın
HuggingFace'te yayınlanmış bir özel modeliniz olduğuna göre, bu modeli indirip .litertlm biçimine dönüştürmek için AI Edge Torch kitaplığını kullanabilirsiniz.
Ön koşullar
Cihazınızda uv tool ve Python 3.11 veya sonraki bir sürümün yüklü olduğundan emin olun.
Modeli dönüştürme
uv tool install litert-torch-nightly
litert-torch export_hf \
--model=[YOUR-HF-USERNAME]/pirate-gemma \
--output_dir=/tmp/pirate-gemma \
--externalize_embedder
Modelinizi yerel olarak çalıştırma
uv tool install litert-lm
litert-lm run \
/tmp/pirate-gemma/model.litertlm \
--prompt="Where is the nearest buried treasure?"
3. adım: Model kalitesini değerlendirin
İnce ayarın kalitesini değerlendirme
Modeliniz yerel olarak çalıştıktan sonra, ince ayarın LiteRT-LM model kalitesini analiz etmek için AI Edge değerlendirme CLI aracını kullanabilirsiniz. Bu araç, orijinal HF modeli ile dönüştürülmüş LiteRT-LM modeli arasında, dönüşüm sonrası kalite eşitliği doğrulaması için yerleşik bir özellik sunar. Bu özellik, herkese açık veri kümeleriyle çalışır. Herkese açık veri kümelerinin yanı sıra kendi verilerinizi ve belirli metrikleri kullanarak özelleştirilmiş değerlendirme görevleri oluşturabilirsiniz. LLM-as-a-Judge kullanarak bu ince ayarlı modeli değerlendirmek için özel görev örneğine bakın.
uv tool install ai-edge-eval
GEMINI_API_KEY="your_actual_api_key_here"
ai_edge_eval \
--framework custom \
--runner litert-lm \
--model-path /path/to/your/model.litertlm \
--custom-tasks-file pirate_gemma_custom_task.py \
--tasks pirate_gemma_eval \
--output-dir /tmp/results
4. adım: Yerel modelinizi test cihazınıza aktarın
Yeni çalıştırdığınız modeli fiziksel Android cihazınıza göndermek için bu adb talimatlarını kullanın.
adb shell rm -r /data/local/tmp/llm/ # Remove any previously loaded models
adb shell mkdir -p /data/local/tmp/llm/
adb push /tmp/pirate-gemma/model.litertlm /data/local/tmp/llm/pirate-gemma.litertlm
5. adım: Captain Gemma örnek uygulamasıyla özel modelinizde çıkarım gerçekleştirin
Captain Gemma, cihazdaki modelle arayüz oluşturmayı gösteren bir uygulamadır. GitHub'da bulup Android Studio'da çalıştırmak için depoyu klonlayın.
Captain Gemma örnek uygulamasını açıp cihazınızda çalıştırın. Bu uygulama, Android cihazınızda ince ayar yapılmış bir model üzerinde çıkarım çalıştırmayı göstermek için Android Compose öğelerini kullanır. Uygulama, kullanıcıdan metin girişi alır ve ince ayarlı Gemma modelinin korsan bilgeliğini döndürür.
.litertlm dosyasını yeni gönderdiğiniz test cihazınızda uygulamayı çalıştırın. Bir sorgu girin ve modelin çıkışını beyaz konuşma kutusunda görün.

Örnek kod
Captain Gemma örnek kodunda LiteRT-LM API'leri ile modelinizi ayarlama ve çıkarım çalıştırma örneklerini inceleyin.
6. adım: Model dağıtımı
Özel modelinizi yerel olarak test etmeyi tamamlayıp dağıtmaya hazır olduğunuzda, modelinizi barındırmak için aşağıdaki gibi seçenekler sunulur:
.litertlmdosyanızı daha önce oluşturduğunuz HuggingFace model deposuna gönderebilir ve HuggingFace API'lerini kullanarak uygulamanıza indirebilirsiniz.- Uygulamanızın model URL'nizi getirmesi ve Android veya iOS için indirmesi amacıyla API'ler sağlayan Firebase gibi bir barındırma hizmeti kullanabilirsiniz.