Newer
Older
sentence-bert-base-ja-mean-tokens-v2-int8 / README.md

sentence-bert-base-ja-mean-tokens-v2-int8

sonoisa/sentence-bert-base-ja-mean-tokens-v2 の 量子化 ONNX モデル を CC BY-SA 4.0 で配布するためのリポジトリです。

概要

配布するもの(target/)

target/ には配布するものだけが入ります。この一式をそのまま渡せば、Hugging Face にアクセスせずに推論できます。

ファイル 説明
model_quantized.onnx 量子化済み ONNX モデル(推論用)
vocab.txt トークナイザー用語彙
tokenizer_config.json トークナイザー設定
special_tokens_map.json 特殊トークン定義
config.json モデル設定

中間ファイル(model_fp32.onnx など)は build/ に出力され、配布しません。

配布方針: target/ 一式をそのまま ZIP やリリースアセットで配布する想定。リポジトリに target を含めるかは任意(.gitignore 済みのため通常は含めず、ビルド後に手元で配布する運用でよい)。

リポジトリ構成

sentence-bert-base-ja-mean-tokens-v2-int8/
├── README.md
├── LICENSE
├── requirements.txt
├── export_onnx.py         … HF モデル → ONNX (FP32) エクスポート
├── quantize.py            … 静的量子化 → model_quantized.onnx
├── setup_venv.bat         … 仮想環境 .venv 作成
├── run_quantize.bat       … エクスポート〜量子化の一括実行
├── scripts/
│   └── run_inference.py   … target/ での推論・動作確認用
├── test/                   … 単体・統合テスト(pytest)
├── journals/               … 作業記録(.gitignore 済み)
├── build/                  … 中間ファイル(model_fp32.onnx 等)と sentences.txt(キャリブレーション用)
│   └── sentences.txt      … 量子化用サンプル文(リポジトリに同梱。編集可)
├── target/                 … 配布するものだけ(.gitignore 済み)
└── .venv/                 … setup_venv.bat で作成(.gitignore 済み)

ビルド手順(量子化モデルを作る)

必要環境: Python 3.8 以上(3.12 推奨)

  1. 環境準備

    • setup_venv.bat.venv を作成し、依存関係をインストール
    • または pip install -r requirements.txt
  2. エクスポート
    python export_onnx.py
    build/model_fp32.onnx(中間)、トークナイザー・config は target/ に出力

  3. 量子化
    python quantize.py
    target/model_quantized.onnx が出力される(配布用)

一括実行: run_quantize.bat(venv があれば自動で有効化してから実行)

キャリブレーションの精度を上げたい場合は、build/sentences.txt に日本語文を追加してから quantize.py を再実行してください。

Lint・テスト(任意): pip install -e ".[dev]" で pytest と ruff を入れたうえで、ruff check .pytest test/ を実行できる。

推論の例

target/ を配布先にコピーしたうえで、python scripts/run_inference.py で動作確認できる。

# スクリプト利用例
from scripts.run_inference import encode
vec = encode("今日は良い天気です。")
print(vec.shape)  # (1, 768)

クレジット(表示義務)

ライセンス

本リポジトリで配布するモデルおよび派生物は Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) に従います。
詳細は LICENSE および https://creativecommons.org/licenses/by-sa/4.0/ を参照してください。

商用利用可能です。利用・再配布の際は上記クレジットの表示と、同一ライセンス(CC BY-SA 4.0)での継承が必要です。