Laya-CoreML 0.1.0 リリース成果物
Apple Silicon に公開ランタイムをインストールします:
python -m pip install 'laya-coreml[demo]==0.1.0'
ホイールには、推論、Hub のロード、ターミナル Snake デモとそのリプレイレンダラーが含まれます。モデルの重みは別途ダウンロードします。PyTorch は任意のエクスポート依存で、MLX は任意の比較依存です。どちらもリリース済みモデルの実行には必要ありません。PyPI プロジェクトを参照してください。
固定されたモデルリリース
6 つのリポジトリはすべて公開されています。それぞれに、エクスポートされた Core ML パッケージ、tokenizer、設定、モデルカード、ライセンス、帰属表示、検証レポートが含まれます。ANE パッケージにはさらに、正確なホスト埋め込みとアクションヘッドのテンソルが含まれます。これらはスタンドアロンの推論バンドルです。
| Hugging Face リポジトリ | リリースリビジョン |
|---|---|
| aac6fef/laya-coreml | fff78b2d9750c6b748fe8c90fcbf8bed0a1522a9 |
| aac6fef/laya-multilingual-coreml | 8139e9089273319512c730218903784074133187 |
| aac6fef/laya-multilingual-coreml-ane | 39d6a9b3d0f67f06da74fbade6121ea134cbdb21 |
| aac6fef/laya-multilingual-coreml-ane-w8 | 7503714810747a879b1e310074a9398bc573e739 |
| aac6fef/laya-multilingual-coreml-snake | e580bca9c1a8f5e6084afedc49cba4a166dfc6f2 |
| aac6fef/laya-typed-decisions-coreml | 28d24fa8d67a3264556b23391ec6c3fd98573056 |
例:
hf download aac6fef/laya-multilingual-coreml-ane \
--revision 39d6a9b3d0f67f06da74fbade6121ea134cbdb21 \
--local-dir models/ane
laya-coreml-snake --model ./models/ane
または、固定された Hub スナップショットを直接ロードします:
import laya_coreml as laya
agent = laya.load(
"aac6fef/laya-multilingual-coreml-ane",
revision="39d6a9b3d0f67f06da74fbade6121ea134cbdb21",
)
リリースのインベントリ、パッケージのハッシュ、シェイプ、完全なバンドルサイズは hub-release.json にあります。W8 バンドルはホスト埋め込みと tokenizer を含めて約 557 MB で、129 MB はその Core ML ボディだけを指します。W8 は FP16 演算を伴う重みパレット化であり、整数のアクティベーション量子化ではありません。
モデルとパッケージの検証
公開された各パッケージは、アップロード前にアーカイブされた検証済みエクスポートと照合されました。可搬な ANE バンドルは元の Core ML ボディを保持し、6 つのホストテンソルを厳密な要素一致で抽出します。その後、パッケージング時の推論がアップストリームのゴールデンフィクスチャチェックを繰り返しました:
| バンドル | 一致した選択回答 | 較正確率の最大ドリフト | 繰り返し呼び出し |
|---|---|---|---|
| English FP16 | 63/63 | 0.003308 | 100 回安定 |
| Multilingual FP16 | 63/63 | 0.001578 | 100 回安定 |
| Typed Decisions FP16 | 63/63 | 0.002727 | 100 回安定 |
| Snake GPU, B3/L64 | 12/12 fitting | 0.001308 | 100 回安定 |
| ANE FP16, L96 | 59/59 fitting | 0.002925 | 100 回安定 |
| ANE W8, L96 | 59/59 fitting | 0.014393 | 100 回安定 |
短いエクスポートは、入力容量を超えるフィクスチャを拒否します。それらの適合サブセットは明示されており、完全なコンテキストの等価性の主張ではありません。すべてが同じ 0.02 の確率ドリフトしきい値を使います。汎用チェックポイントは 189/189 の質問をカバーし、6 つのバンドルを合わせると 319 の適合比較をカバーします(チェックポイント間に重複があります)。release-validation.json を参照してください。
まっさらな Python 3.12 環境に、ビルド済みホイールと demo 追加分を、Torch、MLX、Transformers なしでインストールしました。6 つのローカルバンドルすべてがロードされ、Python のソケット接続をブロックした状態で安定した予測を生成しました。次に公開された固定済みの ANE Hub スナップショットをロードし、続いてネットワーク接続をブロックした状態でキャッシュからの 2 回目のロードを行いました。オフラインのどのセクションも接続を試みませんでした。このチェックは、USAGE.md に記載された Core ML のシンボリックリンク実体化の修正も試しました。結果:wheel-runtime-smoke.json。
バージョン 0.1.0 は 2026-09-20 に PyPI へ公開されました。公開された 2 つの配布ファイルがダウンロードされ、その SHA256 ダイジェストがローカルのリリース成果物と一致しました。続いて 2 つ目の新しい環境が、キャッシュを無効にして公開 PyPI インデックスから laya-coreml[demo]==0.1.0 を直接インストールしました。README の直接 Hub ロードの例は正常に動作し、出力トークンはゼロで、予測中にネットワーク接続をブロックした状態での 3 回の繰り返し呼び出しで同じ答えを生成しました。インストールされた両方の CLI エントリポイントも正常に起動しました。公開レシートと公開インストールの推論チェックを参照してください。
リリースチェックを再現する
ローカルのリリースゲートは 64 のテスト、Ruff の lint/format チェック、厳密な Twine のパッケージメタデータ検証を通過しました。テストには、変換セマンティクス、バンドルキャッシュの完全性、ゲームの不変条件、オフラインのモデル解決、公開された 855 手の録画におけるすべての盤面/アクションの正確なリプレイが含まれます。
ビルドバックエンドは Hatchling 1.31.0 に固定されています。その Core Metadata 2.4 出力はリリースの Twine 6 チェッカーを通過します。より新しい既定の 2.5 メタデータを使った最初のビルドは拒否されました。既定の変更については Hatchling のバージョン履歴を参照してください。公開された成果物は互換性のあるビルドを使い、アップロード前に再度チェックされます。正確なホイールとソース配布の SHA256 ダイジェストは distribution-files.json に記録されています。
元の検証済み成果物が利用可能なソースチェックアウトから:
uv sync --extra convert --extra dev --extra compare --extra research --extra demo --extra publish
.venv/bin/python scripts/prepare_hub.py
.venv/bin/python -m benchmarks.release_validate models/hub/* \
--output benchmarks/results/release-validation.json
.venv/bin/ruff check .
.venv/bin/ruff format --check .
.venv/bin/pytest -q
.venv/bin/python -m build
.venv/bin/twine check --strict dist/*
prepare_hub.py は既存のバンドルディレクトリの上書きを拒否します。スタンドアロンのホイールチェックは、6 つのバンドルをダウンロードまたは準備した後、ソースツリーの外のまっさらな環境で scripts/wheel_smoke.py --hub-check を実行します。完全なゲームループの計測については SNAKE_BENCHMARKS.md を、正確な録画メディアの出所については LAUNCH.md を参照してください。
0.2.0 のアップストリーム同期
このリリースは、適用可能なプロンプト検証、カスタムの noul ラベル、Unicode 命令、会話末尾の切り詰め、選択肢折りたたみの診断、回答信頼度の報告を、アップストリーム 4aa6761 を通じて移植します。また、ソース 0.1.1 には存在したが PyPI 0.1.0 には欠けていた温度クランプも公開します。Core ML グラフのシグネチャ、重み、ANE 容量チェックは変わりません。上記の過去のベンチマーク結果は 0.1.0 を記述したものであり、新しい性能実行ではありません。混合質問のレイテンシと Intel Mac のサポートは、この同期では検証されていません。
pyproject.toml、laya_coreml/__init__.py、uv.lock を更新した後、v<version> タグをプッシュします。Release ワークフローは、再利用可能な CI チェックを実行し、3 つのバージョンすべてをタグと照合し、ホイール/sdist をビルドして検証し、リポジトリシークレット PYPI_API_TOKEN を使って PyPI に公開し、同じ配布物で GitHub リリースを作成します。CI の失敗は公開を防ぎます。