Torchchat’i İndirme
İlk adım, Git kullanarak Torchchat deposunu klonlamaktır:
git clone [email protected]:pytorch/torchchat.git
Bunu Git olmadan da, GitHub’daki indirme düğmesini kullanarak indirebiliriz:

Önemli not: Depoyu klonladıktan (veya indirdikten) sonra bilgisayarımızda torchchat adlı bir klasör oluşacaktır. Bu makalede geçen tüm komutlar bu klasörün içinden çalıştırılmalıdır.
Torchchat Kurulumu
Python ve Anaconda’nın halihazırda kurulu olduğunu varsayıyoruz. Kurulu değilse şu iki eğitime bakın: Windows’ta Anaconda Kurulumu ve Mac OS X’te Anaconda Nasıl Kurulur.
Alternatif olarak, Anaconda yerine sanal ortam kullanan Torchchat deposundaki adımları izleyin.
Önce şu komutla bir Anaconda ortamı oluşturuyoruz:
conda create -yn llama python=3.10.0
Bu komut, Python’un 3.10 sürümünü kullanan llama adlı bir ortam oluşturur. -yn seçeneği, -y ve -n’yi birleştirir:
-yseçeneği, ortam oluşturulmadan önce onay istemeden komutun devam etmesini sağlar.-nseçeneği ortamın adını belirtir; buradallama. Ortamı oluşturduktan sonra etkinleştirir ve bağımlılıkları kurarız.
Etkinleştirmek için şu komutu kullanırız:
conda activate llama
Gerekli bağımlılıkları kurmak için TorchChat’in sağladığı kurulum betiğinden yararlanırız:
./install/install_requirements.sh
Llama 3.2 1B Modelini İndirme
Bu derste, bir milyar parametreli Llama 3.2 1B modelini kullanacağız. Şu komutla indirebiliriz:
python torchchat.py download llama3.2-1b
Aynı süreç diğer modelleri denemek için de geçerlidir—llama3.2-1b ifadesini hedef modelin takma adıyla değiştirmemiz yeterlidir. Yalnızca mobil uyumlu olarak işaretlenmiş modelleri seçmek önemlidir.
Torchchat, model yönetimi için Hugging Face’ten yararlanır. Dolayısıyla, bir modeli indirmek için Hugging Face hesabı gerekir. Hesap oluşturma ve terminalden oturum açma hakkında kapsamlı bir rehber için bu Torchchat öğreticisindeki “Model indirme” bölümüne bakın.
Alternatif olarak, model Llama’nın resmi web sitesinden de indirilebilir. Ancak Torchchat’i kullanmak daha pratiktir; çünkü model dosyalarını mobil dağıtım için dışa aktarmayı kolaylaştırır.
Modeli Dışa Aktarma
Mobil cihaza dağıtmak için önce modeli dışa aktararak Executorch tarafından kullanılan bir dosya olan .pte artefaktını üretiriz. Executorch, Torchchat’in LLM’i mobil cihazda çalıştırmak için kullandığı motordur.
PTE dosyasını üretmek için önce Executorch’u kurmalıyız. Bunu yapmak için şu komutları çalıştırın:
export TORCHCHAT_ROOT=${PWD}
./torchchat/utils/scripts/install_et.sh
Kurulum tamamlandıktan sonra PTE dosyasını şu komutla üretebiliriz:
python torchchat.py export llama3.2-1b --quantize torchchat/quant_config/mobile.json --output-pte-path llama3_2-1b.pte
Bu komut, modelin boyutunu küçültüp çıkarım hızını artırmak için modeli niceleyecektir (quantize). torchchat/quant_config/mobile.json içindeki Torchchat’in varsayılan yapılandırmasını kullanıyoruz.
Süreç tamamlandığında, torchchat klasöründe llama3_2-1b.pte adlı bir dosya oluşturulacaktır.
Mobil Uygulamayı Hazırlama
Torchchat, Llama’yı doğrudan akıllı telefonlarımızda çalıştırmamıza olanak tanıyan bir Android demo uygulaması sunar. Bu demo proje, indirilen Torchchat klasöründe bulunur. Göreli yolu torchchat/edge/android/torchchat şeklindedir. Yoldaki ilk torchchat ifadesinin depo içindeki bir klasöre, depo köküne değil, atıfta bulunduğuna dikkat edin.
Java kitaplığını indirme ve kurma
- Torchchat’in sağladığı
.aardosyasını indirin. Bu dosya, uygulamayı derlemek ve çalıştırmak için gerekli Java kütüphanesi ve ilgili JNI kütüphanesini içerir. - Uygulama klasörüne gidin:
torchchat/edge/android/torchchat/app/ - Bir
libsklasörü oluşturun (zaten yoksa) - İndirilen dosyanın adını
executorch.aarolarak değiştirin velibsklasörüne yapıştırın.
Android Studio’da Android projesini yükleme
Android Studio’yu resmi web sitesinden indirin ve kurun. Kurulum tamamlandıktan sonra projeyi açın:

Demo proje torchchat/edge/android/torchchat konumunda yer alır.
Projeyi açtığımızda, kodu güvenilir bulup bulmadığımızı soran bu pencereyle karşılaşırız:

Burada “Trust Project” seçeneğini seçin.
Projeyi açtıktan sonra Android Studio’nun yapılandırmayı yüklemesi ve ilk kurulumu tamamlaması için biraz zamana ihtiyacı olacaktır. Bu işlem bitene kadar beklemek önemlidir. Durumu pencerenin sağ alt köşesinden takip edebiliriz. Hazır olduğunda, üstteki çalıştır düğmesi yeşil olacaktır:

Android’de geliştirici modunu ayarlama
Uygulamayı Android Studio üzerinden telefonda çalıştırabilmek için cihazımızda geliştirici modunu etkinleştirmemiz gerekir. Bunu şu şekilde yapabiliriz:
- “Ayarlar”a gidin
- “Cihaz hakkında” veya “Telefon hakkında”yı seçin
- “Yazılım bilgileri”ni açın
- “Yapım numarası”nı bulun ve yedi kez dokunun
Hepsi bu kadar! Artık cihazımızı Android Studio’dan uygulamayı çalıştırmak için kullanabiliriz. Bunu yaptığımızda uygulama telefonumuzda kalır ve bilgisayara bağlı olmadan da çalıştırılabilir.
adb kurulumu
Uygulamanın, model dosyalarının telefonda belirli bir klasörde bulunmasına ihtiyacı vardır. Bu dosyaları telefona göndermek için adb (Android Debug Bridge) kullanırız. Android Studio üzerinden şu adımları izleyerek kurabiliriz:
- Ayarlar’a gidin ve arama çubuğuna “Android SDK” yazmaya başlayın
- “Android SDK” adlı menüyü bulun ve tıklayın
- “Android SDK command line tools (latest)” seçeneğini işaretleyin
- Kurmak için “Apply”a tıklayın

Pencerenin üst kısmında Android Studio’nun Android sdk konumunu gösterdiğine dikkat edin:

Bu yolu kopyalayıp aşağıdaki komutu çalıştırırız (aşağıda <android_skd_location> yerine az önce kopyalanan yolu yazın):
export PATH=$PATH:<android_skd_location>/platform-tools/
adb’nin başarıyla kurulduğunu doğrulamak için adb --version komutunu kullanın; adb sürümünü gösterecektir.
Uygulamayı telefonda ayarlama
Telefonu kabloyla bilgisayara bağlayın. Cihazın adı, çalıştır düğmesinin yanındaki cihaz listesinde görünecektir:

Uygulamayı telefonda çalıştırmadan önce, gerekli model dosyalarını cihazımıza kopyalamak için şimdi adb kullanırız.
- Cihazın kimliğini
adb deviceskomutuyla bulun. Çıktıda birden fazla satır olabilir.<device_code>device biçiminde olan satırı bulun ve cihaz kodunu kopyalayın. adb -s <device_code> shell mkdir -p /data/local/tmp/llamakomutuyla model dosyalarını saklayacak dizini oluşturun.torchchatklasöründe bulunan.ptedosyasınıadb -s <device_code> push llama3_2-1b.pte /data/local/tmp/llamakomutuyla kopyalayın.python torchchat.py where llama3.2-1bkomutuyla modelin tokenizer dosyasının konumunu bulun. Birkaç satır çıktısı olacaktır; son satırda gösterilen yolu dikkate alıyoruz.
![]()
- Önceki adımda elde edilen yoldaki
<model_path>’i kullanarak tokenizer dosyasınıadb -s <device_code> push <model_path>/tokenizer.model /data/local/tmp/llamakomutuyla cihaza kopyalayın.
Bu adımları tamamladıktan sonra, model dosyaları telefonumuzda ve kullanıma hazır olmalıdır. Az önce oluşturduğumuz cihaz klasöründeki tüm dosyaları listeleyerek kontrol edebiliriz:
adb -s <device_code> shell ls
Çıktıda biraz önce kopyaladığımız iki dosya yer almalıdır:
llama3_2-1b.pte
tokenizer.model
Uygulamayı çalıştırma
Artık demo uygulamayı telefonumuzda çalıştırmaya hazırız. Çalıştırmak için yeşil oka tıklayabiliriz.

Bu işlem uygulamayı cihazımızda açacaktır. Uygulama, model ve tokenizer dosyalarını seçmemizi ister.

Llama 3.2 1B Uygulamasını Kullanma
Artık telefonumuzda Llama3.2 1B ile sohbet etmeye başlayabiliriz! Uygulamanın arayüzü oldukça basit. “Prompt” metin kutusuna bir istem yazabilir ve “Generate” düğmesini kullanarak modele gönderebiliriz.
Model çevrimdışı çalıştığından, örneğin bir sonraki varışıma uçaktayken bazı yemek önerileri istemek için kullanabildim:

Bu etkileşimle, demo uygulamanın birkaç sınırlamasını gözlemliyoruz:
- Yanıt, istemimizi tekrar ediyor.
- Yanıt biçimi “Tayvan’a gittim…” şeklinde başlıyor; bu da uygulamanın modeli doğrudan bir asistan olarak kullanmak üzere tasarlanmadığını gösteriyor.
- Yanıtlar aniden kesiliyor; muhtemelen belirteç (token) sınırına ulaşıldığı için.
Davranışı karşılaştırmak için aynı modeli terminalde şu komutla çalıştırabiliriz:
python torchchat.py chat llama3.2-1b
Aynı istemi vererek davranışın farklı olup olmadığını görmek istedik. Nitekim bu durumda yanıt, kesilmiş olsa da çok daha doğal ve kullanışlı görünüyor:

Torchchat’in arkasındaki ekiple iletişime geçtim ve Llama 3.2’nin çok yeni olduğunu, demo uygulamanın bunu desteklemek için biraz güncellenmesi gerektiğini söylediler.
Bununla birlikte, kurulum süreci aynı kalacak ve burada edindiğiniz bilgi güncellenmiş sürüm için de geçerli olacaktır. Bu makaleyi okuduğunuz sırada uygulama zaten güncellenmiş ve düzgün çalışıyor olabilir.
Sonuç
Bu kılavuzda, Torchchat kullanarak Llama 3.2 1B’yi doğrudan bir Android cihazda nasıl kuracağımızı öğrendik. Model dosyaları ve Android demo uygulaması dâhil gerekli bileşenleri indirme ve kurma sürecini adım adım ele aldık.
Mevcut demo uygulamada özellikle yanıt biçimlendirmesi ve uzunluğu konusunda bazı sınırlamalar olsa da, bu tür uygulamaların barındırdığı potansiyel oldukça büyüktür.
Llama 3.2 hakkında daha fazla okumak isterseniz şu blogları öneririm:


Kısa süre önce Python ve Torchchat ile LLM’lerin nasıl çalıştırılacağı hakkında bir makale yazdım. Torchchat, LLM’leri farklı donanım platformlarında verimli şekilde çalıştırmak için tasarlanmış esnek bir çerçevedir. Bir LLM’i yerelde çalıştırmanın birkaç avantajı vardır:
Facebook’un yakın zamanda Llama 3.2 sürümünü yayınlamasının ardından, bir önceki makalemi genişleterek özellikle Android’e odaklanıp bunu mobil telefonlarımıza nasıl dağıtacağımızı anlatmaya karar verdim.
Yapmamız gerekenlerin üst düzey özeti şöyle:
Torchchat bu adımların tümüne çözüm sunar. Modeli indirmek ve çalıştırmak için gereken dosyaları üretmek üzere komutlar sağlar. Üstelik, kendi uygulamamızı geliştirmemize gerek kalmadan kullanabileceğimiz bir Android sohbet demo uygulamasıyla birlikte gelir.