Skip to content

Latest commit

 

History

History
105 lines (58 loc) · 4.09 KB

UsingPhi35TFLiteCreateAndroidApp.md

File metadata and controls

105 lines (58 loc) · 4.09 KB

Paggamit ng Microsoft Phi-3.5 tflite para gumawa ng Android app

Ito ay isang Android sample na gumagamit ng Microsoft Phi-3.5 tflite models.

📚 Kaalaman

Ang Android LLM Inference API ay nagbibigay-daan sa iyo na patakbuhin ang malalaking language models (LLMs) nang buo sa iyong Android device para sa mga aplikasyon, na magagamit mo upang magsagawa ng iba't ibang gawain tulad ng pagbuo ng teksto, pagkuha ng impormasyon sa natural na anyo ng wika, at pagbubuod ng mga dokumento. Ang task na ito ay may built-in na suporta para sa maraming text-to-text large language models, kaya maaari mong gamitin ang pinakabagong on-device generative AI models para sa iyong Android apps.

Ang Google AI Edge Torch ay isang python library na sumusuporta sa pag-convert ng mga PyTorch models sa .tflite na format, na maaaring patakbuhin gamit ang TensorFlow Lite at MediaPipe. Pinapayagan nito ang mga aplikasyon para sa Android, iOS, at IoT na maaaring magpatakbo ng mga modelo nang buo sa device. Ang AI Edge Torch ay nag-aalok ng malawak na coverage para sa CPU, at may paunang suporta para sa GPU at NPU. Ang AI Edge Torch ay naglalayong maging malapit na naka-integrate sa PyTorch, gamit ang torch.export() at nagbibigay ng magandang coverage ng Core ATen operators.

🪬 Gabay

🔥 I-convert ang Microsoft Phi-3.5 sa tflite support

  1. Ang sample na ito ay para sa Android 14+

  2. Mag-install ng Python 3.10.12

Mungkahi: Gumamit ng conda para i-install ang iyong Python environment

  1. Ubuntu 20.04 / 22.04 (mangyaring magtuon sa google ai-edge-torch)

Mungkahi: Gumamit ng Azure Linux VM o 3rd party cloud VM para gawin ang iyong environment

  1. Pumunta sa iyong Linux bash, at mag-install ng Python library
git clone https://github.com/google-ai-edge/ai-edge-torch.git

cd ai-edge-torch

pip install -r requirements.txt -U 

pip install tensorflow-cpu -U

pip install -e .
  1. I-download ang Microsoft-3.5-Instruct mula sa Hugging Face
git lfs install

git clone  https://huggingface.co/microsoft/Phi-3.5-mini-instruct
  1. I-convert ang Microsoft Phi-3.5 sa tflite
python ai-edge-torch/ai_edge_torch/generative/examples/phi/convert_phi3_to_tflite.py --checkpoint_path  Your Microsoft Phi-3.5-mini-instruct path --tflite_path Your Microsoft Phi-3.5-mini-instruct tflite path  --prefill_seq_len 1024 --kv_cache_max_len 1280 --quantize True

🔥 I-convert ang Microsoft Phi-3.5 sa Android Mediapipe Bundle

Mangyaring i-install muna ang MediaPipe

pip install mediapipe

Patakbuhin ang code na ito sa iyong notebook

import mediapipe as mp
from mediapipe.tasks.python.genai import bundler

config = bundler.BundleConfig(
    tflite_model='Your Phi-3.5 tflite model path',
    tokenizer_model='Your Phi-3.5 tokenizer model path',
    start_token='start_token',
    stop_tokens=[STOP_TOKENS],
    output_filename='Your Phi-3.5 task model path',
    enable_bytes_to_unicode_mapping=True or Flase,
)
bundler.create_bundle(config)

🔥 Gamitin ang adb push task model sa path ng iyong Android device

adb shell rm -r /data/local/tmp/llm/ # Remove any previously loaded models

adb shell mkdir -p /data/local/tmp/llm/

adb push 'Your Phi-3.5 task model path' /data/local/tmp/llm/phi3.task

🔥 Patakbuhin ang iyong Android code

demo

Paunawa:
Ang dokumentong ito ay isinalin gamit ang mga serbisyong AI na batay sa makina. Bagama't sinisikap naming maging tumpak, pakitandaan na ang mga awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o hindi pagiging wasto. Ang orihinal na dokumento sa sariling wika nito ang dapat ituring na opisyal na sanggunian. Para sa mahalagang impormasyon, inirerekomenda ang propesyonal na pagsasaling ginawa ng tao. Hindi kami mananagot sa anumang hindi pagkakaunawaan o maling interpretasyon na dulot ng paggamit ng pagsasaling ito.