litert-lm-builder パッケージ
は、LiteRT-LM(.litertlm)コンテナ ファイルのビルド、検査、
展開を行うための Python ツールとコマンドライン インターフェース(CLI)を提供します。
.litertlm ファイルは、TFLite モデル、トークナイザー ファイル、外部ウェイト、関連するモデル メタデータをパッケージ化する単一の統合コンテナです。これにより、LiteRT-LM ランタイムで配布して読み込むことができます。
インストール
PyPI から litert-lm-builder パッケージをインストールします。
方法 1: uvx(迅速な実行におすすめ)
永続的なインストールを行わずに CLI をすぐに実行します。 uv が必要です。
uvx litert-lm-builder --help
uvx litert-lm-peek --help
方法 2: pip
仮想環境内での標準インストール:
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade litert-lm-builder
.litertlm ファイルをビルドする: litert-lm-builder
litert-lm-builder CLI を使用して、モデル コンポーネントをパッケージ化します。これを行うには、構成ファイルを使用するか、コマンドライン引数を連結します。
用途
ビルダーを使用して .litertlm ファイルを準備するには、次の方法を使用します。
方法 1: TOML 構成を使用してビルドする(推奨)
TOML 構成ファイルですべてのコンポーネント、パス、メタデータを指定し、ビルダーを実行します。
litert-lm-builder toml --path config.toml output --path model.litertlm
例 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" }
]
方法 2: コマンドライン引数を使用してビルドする
ターミナルでサブコマンドを連結して、コンテナを動的にビルドできます。サブコマンドの順序によって、生成されたファイルのセクションの順序が決まります。
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
CLI オプションのリファレンス
litert-lm-builder CLI は、次のサブコマンドをサポートしています。
output(必須): 出力パスを指定します。--path PATH: ビルドされた.litertlmファイルを保存するパス。
toml: TOML ファイルから構成を読み込みます。--path PATH:.tomlファイルのパス。
system_metadata: グローバル システム メタデータを追加します。--str KEY VALUE: 文字列の Key-Value ペアを追加します(複数回指定できます)。--int KEY VALUE: 整数の Key-Value ペアを追加します(複数回指定できます)。- 注: ビルダーは、一意の
uuidとcreation_timestamp(UTC ISO 8601 形式)を自動的に生成してシステム メタデータに追加します。これらのキーは手動で指定しないでください。これらのフィールドは、ランタイムがモデルビルドを一意に識別し、コンパイル済みキャッシュの無効化を管理するために使用されます。
llm_metadata: LLM 固有の構成を追加します。--path PATH: LLM メタデータ(テキストまたはバイナリ proto)のパス。
tflite_model: TFLite モデルを追加します。--path PATH:.tfliteファイルのパス。--model_type TYPE:embedder、prefill_decode( prefill と decode の両方を表す)、prefill、decodeのいずれか。--backend_constraint BACKEND: (省略可)バックエンド制約(gpu、cpu、npuなど)。--prefer_activation_type TYPE: (省略可)優先アクティベーション タイプ (fp16、fp32、fp32_fp16)。--str_metadata KEY VALUE: (省略可)このモデル セクションの文字列メタデータ。
sp_tokenizer: SentencePiece トークナイザーを追加します。--path PATH:.modelファイルのパス。--str_metadata KEY VALUE: (省略可)文字列メタデータ。
hf_tokenizer: Hugging Face トークナイザーを追加します。--path PATH:tokenizer.jsonファイルのパス。--str_metadata KEY VALUE: (省略可)文字列メタデータ。
.litertlm ファイルを検査して展開する: litert-lm-peek
litert-lm-peek CLI を使用して、.litertlm コンテナを検査するか、埋め込まれたコンポーネントを展開します。実行すると、コンテナ構造全体、パッケージ化されたすべてのセクション、自動生成されたシステム メタデータ(uuid、creation_timestamp など)が表示されます。
用途
litert-lm-peek --litertlm_file model.litertlm [options]
CLI オプションのリファレンス
--litertlm_file PATH(必須): 検査する.litertlmファイルのパス。--dump_files_dir PATH(省略可): パッケージ化されたすべてのファイル(モデル、トークナイザー、ウェイト、メタデータ)を抽出または展開するディレクトリ。 指定しない場合、ツールはファイルを抽出せずにメタデータとセクション構造のみをコンソールに出力します。