スキルは「再現性テスト×モデル別の採点」で育てる。詰め込みすぎたら分割する
スキルは書いて終わりにせず、同じ入力で期待どおりの結果になるかを確かめるテストをたくさん用意し、使うモデルごとに走らせて点数をつける。点が伸びないスキルは1つに詰め込みすぎていることが多いので、分割して測り直す。
skill は定期リファクタとテストで「確率的な挙動」を抑える が「正しいスキルが選ばれるか」を見るのに対し、こちらは「選ばれたスキルが正しい結果を出すか」を見る。
手順
- スキルごとにテストケース(入力と、合格の条件)を作る。条件はできるだけ機械で判定できる形にする(出力にこの項目がある、このコマンドが通る、など)
- 普段使うモデル(上位モデル・安いモデル・ローカルなど)それぞれでテストを流し、合格率を記録する
- 合格率が低い、またはモデルによって大きくぶれるスキルは、中身を見直す。@sabakan_cat は「1スキルに詰め込みすぎ」と判断して 3スキルに分割し、テストハーネスで精度を客観的に測るところまでやって公開し直した
- スキルの書き方は「技術記事」と同じ型にすると管理しやすい(@mizchi): 新しい TIPS を紹介し、運用方法を示し、再現できる手順を付ける
注意点
- テストを大量に作ってモデルごとに回すのは、お金も時間もかかる(@mizchi)。最初は使用頻度の高いスキルと、安いモデルに任せたいスキルから始める
- モデルを乗り換えたら採点し直す。前のモデルで通ったスキルが新しいモデルで通るとは限らない