日本語APIで軽量さと精度のバランスが良く、prefix含み8k tokensを入力できるruri-v3は、embeddingモデルととても便利に使っています。modernBERTベースでSentencepiceをトークナイザーとして用いています。大変便利なので、embedding APIサーバーを作ってみました。今回は、利用目的から負荷テストまで行いました。なお、LAN内とかdocker network内での利用レベルを想定しています。
とりえず作って負荷テストをすると0.01~0.1%程度の頻度でエラーがでます。ざっくり使うだけならば問題ないレベルかもしれませんが、今回は追究します。Jules君とAntigravityを組み合わせて進めました。まず、Jules君に問題点の抽出をしてもらいPRを出してもらう。次にAntigravityでPRを検証しながらマージしていくといった手段です。
今回の場合は大量のテキストデータを利用するケースを考えていたので、エラーが起きるとやり直しがメンドイです。そこで、シツコクテストを繰り返しましたが、Jules君とAntigravity様が頑張ってくれました。
ruri-v3やembeddingのAPIや使い方を調べて、具体的な指示がvibe codingでは重要だと再認識しました。それに、勉強してそれをすぐに実装できるのは有難いです。調査や実装の要件を考えながらScrap and Build。楽しいですね。
Difyでテストしたら、問題なく動作しました。
完成品: