SJTUjinmao/ArkEval
ArkEval: Benchmarking and Evaluating Automated Code Repair for ArkTS
何を解決するか
ArkEval は、ArkTS および OpenHarmony プロジェクトのコード自動修復のための標準化された実行可能ベンチマークを提供します。低リソース言語に対する評価信号の不足に対処し、散在する現実世界の問題を構造化されたデータセットに変換することで、LLMベースのコード修復エージェントの比較や、トレーニングおよび強化学習のフィードバックを可能にします。
仕組み
このプロジェクトは、以下の複数ステージからなる完全な修復パイプラインを実装しています。
- 局所化: ArkTSに特化した構造的分割と Qwen3-Embedding-8B および Milvus を使用して、コードベースから候補ファイルを検索します。
- フィルタリングと補完: 修復モデルが主要ファイルを選択し、依存関係を補完して制約付きの修復範囲を定義します。
- パッチ生成: モデルは統一された Diff パッチを生成し、必要に応じて、公式の Huawei/OpenHarmony の構文や例題コードを提供する RAG システムを利用できます。
- 評価: システムは厳格なループを使用してパッチを評価します。パッチ適用可能性、Hvigor コンパイル、再現テストの実行をチェックし、
Compile@1(ビルドの有効性)とPass@1(動作的正しさ)を判定します。
対象ユーザー
LLM4Code、自動プログラム修復(APR)に取り組んでおり、特に ArkTS/OpenHarmony エコシステムをターゲットにしている研究者や開発者。
特徴
- 現実世界のデータセット: 9つの公開リポジトリおよび149の OpenHarmony アプリから得られた 502 個の実行可能な修復インスタンスを含む。
- 動作検証: パッチが単にコンパイルされるだけか、実際にバグを修正するかを、動作再現テストで区別する。
- 厳格なテスト構築: テストはマルチエージェント監査と専門家レビューを通じて検証され、バグでは失敗し、修正では成功するように保証されている。
- 包括的なパイプライン: ArkTSに特化した分割、埋め込みベースの検索、自動実行評価を含むツールを備える。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト