概要
このセクションでは、JavaScriptで ベンチマーク を作成する方法を解説します。 目的は、 モデルの出力 を評価し、 速度や正確性 を測定すること。 評価基準は 正規表現やトークン一致 による客観的なチェック。 結果は ローカルマシン 上のみで管理し、 チャート表示 も可能。 編集や実行は eval() を利用し、各テストごとにモデル出力を検証。
JavaScriptによるベンチマーク作成
- 目的 :モデルの出力結果を客観的に検証するベンチマークの構築
- 評価方法 :
- 正規表現(regex)による出力解析
- トークンの完全一致による判定
- 速度測定 :
- トークン毎のデコード速度(tokens/s)の計測
- 長時間の持続的デコード速度(sustained decode)の取得
- テストスイート全体の所要時間(suite wall)の記録
- 正確性測定 :
- 客観的テストでの合格率(pass rate)の算出
- モデルごとの最新スイート結果をチャート化
- 実行環境 :
- ブラウザ上での実行
- 結果や数値はローカルマシン上にのみ保存
- 実装方法 :
- JavaScriptエディタでコードを記述
- eval()でコードを評価・実行
- 各チェックはモデルのデコード後テキストに対して動作
- 追加情報管理 :
- ユーザー名やハンドルネームの入力欄
- デバイスやハードウェア情報の取得・表示
ベンチマークの構成例
- テストケースの定義 :各Objectiveチェック内容の記述
- モデル選択機能 :複数モデルの比較評価
- 出力取得ロジック :モデルからのデコードテキスト取得
- 評価関数 :
- 正規表現マッチ判定
- トークン一致判定
- 速度・精度の計測・記録
- 結果チャートの生成 :モデルごとの比較グラフ作成
- UI要素 :
- 入力フォーム
- 結果表示エリア
- チャート表示領域
注意事項
- 135Mモデル は失敗を許容する設計
- 書き品質 は評価対象外、あくまで客観的な出力判定のみ
- ローカル保存 のため、プライバシー保護に配慮
- eval() 使用時のセキュリティリスクに注意
まとめ
- JavaScriptで 客観的なモデル評価ベンチマーク の構築手順
- 速度・正確性の測定 による比較と可視化
- ローカル環境 のみでのデータ管理と実行
- 正規表現・トークン一致 による自動判定ロジックの実装
- UI/UX設計 による使いやすさの向上
PetitGPT research-v1でデフォルトの計算をやってみたよ。