LiteRT proporciona una serie de herramientas para integrar modelos en Android de Google Chat. En esta página, se describen las herramientas de desarrollo para usar en la compilación de apps con Kotlin, Java y C++, y también compatibilidad con el desarrollo de LiteRT en Android Studio
Herramientas para compilar con Kotlin y Java
En las siguientes secciones, se describen las herramientas de desarrollo para LiteRT que usan los lenguajes Kotlin y Java.
Biblioteca LiteRT
Utiliza la biblioteca LiteRT en tu app para Android agregando las AAR alojadas en MavenCentral a tu proyecto de desarrollo.
Puedes especificarlo en tus dependencias de build.gradle
de la siguiente manera:
dependencies {
...
implementation 'com.google.ai.edge.litert:+'
}
repositories {
...
google()
}
Si usas instantáneas nocturnas, asegúrate de agregar la instantánea de Sonatype. repositorio a tu proyecto.
Este AAR incluye objetos binarios para todas las instancias de Android ABI. Puedes reducir el tamaño el objeto binario de tu aplicación incluyendo únicamente las ABI que debes admitir.
A menos que te orientes a hardware específico, debes omitir x86
, x86_64
,
y arm32
en la mayoría de los casos. Puedes configurar esto con el siguiente comando
configuración. Específicamente, solo incluye armeabi-v7a
y arm64-v8a
, y
debería abarcar la mayoría de los dispositivos Android modernos.
android {
defaultConfig {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
}
Para obtener más información sobre abiFilters
, consulta Android
ABI en el NDK de Android
en la documentación de Google Cloud.
Biblioteca de compatibilidad LiteRT
La biblioteca de compatibilidad LiteRT de Android facilita la integración de modelos en tu aplicación. Proporciona APIs de alto nivel que ayudan a transformar entradas sin procesar los datos en la forma requerida por el modelo y, luego, interpretar los resultados del modelo, lo que reduce la cantidad de código estándar requerido.
Admite formatos de datos comunes para entradas y salidas, como imágenes y de Terraform. También proporciona unidades de procesamiento previo y posterior que realizan tareas como con el cambio de tamaño y el recorte de imágenes.
Usa la biblioteca de compatibilidad en tu app para Android incluyendo LiteRT Las AAR de la biblioteca de compatibilidad se alojan en MavenCentral.
Puedes especificarlo en tus dependencias de build.gradle
de la siguiente manera:
dependencies {
implementation 'com.google.ai.edge.litert:litert-support:+'
}
Si usas instantáneas nocturnas, asegúrate de agregar la instantánea de Sonatype. repositorio a tu proyecto.
Para obtener instrucciones sobre cómo comenzar, consulta el Centro de asistencia de LiteRT para Android Biblioteca.
Uso de Android Studio
Además de las bibliotecas de desarrollo descritas anteriormente, Android Studio también es compatible con la integración de modelos LiteRT, como se describe a continuación.
Vinculación de modelos de AA de Android Studio
La función de vinculación de modelos de AA de Android Studio 4.1 y versiones posteriores te permite
importar archivos de modelo .tflite
a tu app para Android existente y generar
de interfaz de usuario para facilitar la integración de tu código en un modelo.
Sigue estos pasos para importar un modelo LiteRT:
Haz clic con el botón derecho en el módulo en el que quieres usar el modelo LiteRT o haz clic Archivo > Nuevo > Otro > Modelo LiteRT.
Selecciona la ubicación del archivo LiteRT. Ten en cuenta que las herramientas configura la dependencia del módulo con la vinculación del modelo de AA y Agrega todas las dependencias necesarias al archivo
build.gradle
de tu módulo de Android.Haz clic en
Finish
para comenzar el proceso de importación. Cuando finaliza la importación, La herramienta muestra una pantalla en la que se describe el modelo, incluida su entrada y salida tensores.Para comenzar a usar el modelo, selecciona Kotlin o Java, copia y pega el código en la sección Sample Code.
Para volver a la pantalla de información del modelo, haz doble clic en el botón
Modelo Lite en el directorio ml
de Android Studio. Para obtener más información
con la función de vinculación de módulos de Android Studio, consulta la documentación de Android Studio
lanzamiento
notas.
Para obtener una descripción general del uso de la vinculación de modelos en Android Studio, consulta el ejemplo de código.
instrucciones.
Herramientas para compilar con C y C++
Las bibliotecas C y C++ para LiteRT están destinadas principalmente a desarrolladores que usan el kit de desarrollo nativo (NDK) de Android para compilar sus apps. Hay dos maneras de usar LiteRT a través de C++ si compilas tu app con el NDK:
API de LiteRT C
El uso de esta API es el enfoque recomendado para los desarrolladores que usan el NDK.
Descarga las AAR de LiteRT alojadas en
MavenCentral
cámbiale el nombre a tensorflow-lite-*.zip
y descomprímelo. Debes incluir las cuatro
archivos de encabezado en headers/tensorflow/lite/
y headers/tensorflow/lite/c/
carpetas y la biblioteca dinámica libtensorflowlite_jni.so
correspondiente en el
jni/
en tu proyecto del NDK.
El archivo de encabezado c_api.h
contiene documentación básica sobre el uso de LiteRT C
en la API de Cloud.
API de LiteRT C++
Si quieres usar LiteRT a través de la API de C++, puedes compilar la versión compartida de C++ bibliotecas:
armeabi-v7a de 32 bits:
bazel build -c opt --config=android_arm //tensorflow/lite:libtensorflowlite.so
arm64-v8a de 64 bits:
bazel build -c opt --config=android_arm64 //tensorflow/lite:libtensorflowlite.so
Actualmente, no hay una forma directa de extraer todos los archivos de encabezado necesarios.
por lo que debes incluir todos los archivos de encabezado en tensorflow/lite/
de TensorFlow
en un repositorio de confianza. Además, necesitarás archivos de encabezados de
FlatBuffers y
Abseil.