LiteRT CompiledModel Kotlin API

API LiteRT CompiledModel tersedia di Kotlin, yang menawarkan pengalaman lancar dan mengutamakan akselerator dengan API tingkat tinggi kepada developer Android. Sebagai contoh, lihat Aplikasi Kotlin Segmentasi Gambar.

Panduan berikut menunjukkan inferensi CPU dasar CompiledModel Kotlin API. Lihat panduan tentang akselerasi GPU dan akselerasi NPU untuk fitur akselerasi lanjutan.

Menambahkan paket Maven

Tambahkan paket Maven LiteRT ke project Android Anda:

dependencies {
  ...
  implementation `com.google.ai.edge.litert:litert:2.1.0`
}

Buat CompiledModel

Lakukan inisialisasi runtime dengan model dan akselerasi hardware pilihan Anda:

val  model =
  CompiledModel.create(
    context.assets,
    "mymodel.tflite",
    CompiledModel.Options(Accelerator.CPU),
    env,
  )

Membuat Buffer Input dan Output

Buat struktur data (buffer) yang diperlukan untuk menyimpan data input yang akan dimasukkan ke dalam model untuk inferensi, dan data output yang dihasilkan model setelah menjalankan inferensi.

val inputBuffers = model.createInputBuffers()
val outputBuffers = model.createOutputBuffers()

Jika Anda menggunakan memori CPU, isi input dengan menulis data langsung ke buffer input pertama.

inputBuffers[0].writeFloat(FloatArray(data_size) { data_value /* your data */ })

Memanggil model

Dengan menyediakan buffer input dan output, jalankan model.

model.run(inputBuffers, outputBuffers)

Mengambil Output

Mengambil output dengan membaca output model langsung dari memori.

val outputFloatArray = outputBuffers[0].readFloat()

Gunakan TensorBuffer

LiteRT menyediakan dukungan bawaan untuk interoperabilitas buffer I/O, menggunakan Tensor Buffer API (TensorBuffer) untuk menangani aliran data ke dan dari CompiledModel. Tensor Buffer API memberikan kemampuan untuk menulis (Write<T>()) dan membaca (Read<T>()), serta mengunci buffer.

Untuk melihat gambaran yang lebih lengkap tentang cara penerapan Tensor Buffer API, lihat kode sumber di TensorBuffer.kt.