El litert-lm-builder paquete
proporciona herramientas de Python y las interfaces de línea de comandos (CLIs) para compilar, inspeccionar,
y descomprimir archivos de contenedor LiteRT-LM (.litertlm) container files.
Un archivo .litertlm es un contenedor unificado único que empaqueta tus modelos de TFLite, archivos de tokenizador, pesos externos y metadatos de modelo asociados para que el entorno de ejecución de LiteRT-LM pueda distribuirlos y cargarlos.
Instalación
Instala el paquete litert-lm-builder desde PyPI con pip en un entorno virtual:
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade litert-lm-builder
Compila un archivo .litertlm: litert-lm-builder
Usa la CLI de litert-lm-builder para empaquetar los componentes de tu modelo. Puedes hacerlo con un archivo de configuración o encadenando argumentos de línea de comandos.
Uso
Se pueden usar los siguientes métodos para preparar el archivo .litertlm con el compilador.
Método 1: Compila con la configuración de TOML (recomendado)
Especifica todos los componentes, las rutas de acceso y los metadatos en un archivo de configuración de TOML y, luego, ejecuta el compilador:
litert-lm-builder toml --path config.toml output --path model.litertlm
Ejemplo config.toml:
[system_metadata]
entries = [
{ key = "author", value_type = "String", value = "Authors" }
]
[[section]]
section_type = "LlmMetadata"
data_path = "path/to/llm_metadata.pb"
[[section]]
section_type = "SP_Tokenizer"
data_path = "path/to/sp.model"
[[section]]
section_type = "TFLiteModel"
model_type = "PREFILL_DECODE"
data_path = "path/to/model.tflite"
additional_metadata = [
{ key = "model_version", value_type = "String", value = "1.0.1" }
]
Método 2: Compila con argumentos de línea de comandos
Puedes compilar el contenedor de forma dinámica encadenando subcomandos en tu terminal. El orden de los subcomandos determina el orden de las secciones en el archivo generado.
litert-lm-builder \
system_metadata --str author "Authors" \
llm_metadata --path path/to/llm_metadata.pb \
sp_tokenizer --path path/to/sp.model \
tflite_model --path path/to/model.tflite --model_type prefill_decode --str_metadata model_version "1.0.1" \
output --path model.litertlm
Referencia de opciones de CLI
La CLI de litert-lm-builder admite los siguientes subcomandos:
output(obligatorio): Especifica la ruta de acceso de salida.--path PATH: Es la ruta de acceso para guardar el archivo.litertlmcompilado.
toml: Carga la configuración desde un archivo TOML.--path PATH: Es la ruta de acceso al archivo.toml.
system_metadata: Agrega metadatos globales del sistema.--str KEY VALUE: Agrega un par clave-valor de cadena (se puede especificar varias veces).--int KEY VALUE: Agrega un par clave-valor de número entero (se puede especificar varias veces).- Nota: El compilador genera y agrega automáticamente un
uuidycreation_timestampúnicos (en formato ISO 8601 de UTC) a los metadatos del sistema. No especifiques estas claves de forma manual. El entorno de ejecución usa estos campos para identificar la compilación del modelo de forma única y administrar la invalidación de la caché compilada.
llm_metadata: Agrega una configuración específica de LLM.--path PATH: Es la ruta de acceso a los metadatos de LLM (texto o proto binario).
tflite_model: Agrega un modelo de TFLite.--path PATH: Es la ruta de acceso al archivo.tflite.--model_type TYPE: Uno de los siguientes:embedder,prefill_decode(que representa el relleno previo y la decodificación),prefillydecode.--backend_constraint BACKEND: (Opcional) Restricción de backend (p.ej.,gpu,cpu,npu).--prefer_activation_type TYPE: (Opcional) Tipo de activación preferido (fp16,fp32,fp32_fp16).--str_metadata KEY VALUE: (Opcional) Metadatos de cadena para esta sección del modelo.
sp_tokenizer: Agrega un tokenizador de SentencePiece.--path PATH: Es la ruta de acceso al archivo.model.--str_metadata KEY VALUE: (Opcional) Metadatos de cadena.
hf_tokenizer: Agrega un tokenizador de Hugging Face.--path PATH: Es la ruta de acceso al archivotokenizer.json.--str_metadata KEY VALUE: (Opcional) Metadatos de cadena.
Inspecciona y descomprime un archivo .litertlm: litert-lm-peek
Usa la CLI de litert-lm-peek para inspeccionar un contenedor .litertlm o descomprimir sus componentes integrados. Cuando se ejecuta, se muestra la estructura completa del contenedor, todas las secciones empaquetadas y los metadatos del sistema generados automáticamente (como uuid y creation_timestamp).
Uso
litert-lm-peek --litertlm_file model.litertlm [options]
Referencia de opciones de CLI
--litertlm_file PATH(obligatorio): Es la ruta de acceso al archivo.litertlmque se inspeccionará.--dump_files_dir PATH(opcional): Es el directorio en el que se deben extraer o descomprimir todos los archivos empaquetados (modelos, tokenizadores, pesos, metadatos). Si no se proporciona, la herramienta solo imprimirá los metadatos y la estructura de la sección en la consola sin extraer archivos.