O litert-lm-builder pacote
oferece ferramentas Python e interfaces de linha de comando (CLIs, na sigla em inglês) para criar, inspecionar,
e descompactar arquivos de contêiner do LiteRT-LM (.litertlm).
Um arquivo .litertlm é um contêiner unificado que empacota seus modelos do TFLite, arquivos de tokenizador, pesos externos e metadados de modelo associados para que possam ser distribuídos e carregados pelo ambiente de execução do LiteRT-LM.
Instalação
Instale o pacote litert-lm-builder do PyPI.
Método 1: uvx (recomendado para execução rápida)
Execute as CLIs imediatamente sem uma instalação permanente. Requer uv.
uvx litert-lm-builder --help
uvx litert-lm-peek --help
Método 2: pip
Instalação padrão em um ambiente virtual:
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade litert-lm-builder
Criar um arquivo .litertlm: litert-lm-builder
Use a CLI litert-lm-builder para empacotar os componentes do modelo. Você pode fazer isso usando um arquivo de configuração ou encadeando argumentos de linha de comando.
Uso
Os métodos a seguir podem ser usados para preparar o arquivo .litertlm usando o builder.
Método 1: criar usando a configuração TOML (recomendado)
Especifique todos os componentes, caminhos e metadados em um arquivo de configuração TOML e execute o builder:
litert-lm-builder toml --path config.toml output --path model.litertlm
Exemplo 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: criar usando argumentos de linha de comando
É possível criar o contêiner dinamicamente encadeando subcomandos no terminal. A ordem dos subcomandos determina a ordem das seções no arquivo gerado.
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
Referência de opções da CLI
A CLI litert-lm-builder oferece suporte aos seguintes subcomandos:
output(obrigatório): especifica o caminho de saída.--path PATH: caminho para salvar o arquivo.litertlmcriado.
toml: carrega a configuração de um arquivo TOML.--path PATH: caminho para o arquivo.toml.
system_metadata: adiciona metadados globais do sistema.--str KEY VALUE: adiciona um par de chave-valor de string (pode ser especificado várias vezes).--int KEY VALUE: adiciona um par de chave-valor inteiro (pode ser especificado várias vezes).- Observação: o builder gera e anexa automaticamente um
uuidecreation_timestampexclusivos (no formato UTC ISO 8601) aos metadados do sistema. Não especifique essas chaves manualmente. Esses campos são usados pelo ambiente de execução para identificar a build do modelo de maneira exclusiva e gerenciar a invalidação do cache compilado.
llm_metadata: adiciona uma configuração específica do LLM.--path PATH: caminho para os metadados do LLM (proto de texto ou binário).
tflite_model: adiciona um modelo do TFLite.--path PATH: caminho para o arquivo.tflite.--model_type TYPE: um destes:embedder,prefill_decode(que representa o preenchimento e a decodificação),prefill,decode.--backend_constraint BACKEND: (opcional) restrição de back-end (por exemplo,gpu,cpu,npu).--prefer_activation_type TYPE: (opcional) tipo de ativação preferido (fp16,fp32,fp32_fp16).--str_metadata KEY VALUE: (opcional) metadados de string para esta seção do modelo.
sp_tokenizer: adiciona um tokenizador do SentencePiece.--path PATH: caminho para o arquivo.model.--str_metadata KEY VALUE: (opcional) metadados de string.
hf_tokenizer: adiciona um tokenizador do Hugging Face.--path PATH: caminho para o arquivotokenizer.json.--str_metadata KEY VALUE: (opcional) metadados de string.
Inspecionar e descompactar um arquivo .litertlm: litert-lm-peek
Use a CLI litert-lm-peek para inspecionar um contêiner .litertlm ou descompactar os componentes incorporados. A execução dela mostra a estrutura completa do contêiner, todas as seções empacotadas e os metadados do sistema gerados automaticamente (como uuid e creation_timestamp).
Uso
litert-lm-peek --litertlm_file model.litertlm [options]
Referência de opções da CLI
--litertlm_file PATH(obrigatório): o caminho para o arquivo.litertlma ser inspecionado.--dump_files_dir PATH(opcional): o diretório em que todos os arquivos empacotados (modelos, tokenizadores, pesos, metadados) precisam ser extraídos/descompactados. Se não for fornecido, a ferramenta vai apenas imprimir os metadados e a estrutura da seção no console sem extrair arquivos.