早いものだ、2月に入ってしまった。
先週は2つのAI支援環境をアップデートした。
AIPRJの環境はエージェントを始めた頃からの環境だけど、最近流行りのskill駆動に似てるのかな。
https://github.com/aquaxis/aiprj
AIエージェントのコーディング環境に一定のルールを与えて実行する環境をアップデートした。
次の2つの環境で使用できるようにした。
https://github.com/aquaxis/layers
AIエージェントに役割分担を与えて、役割に応じて行動するように環境を起動する。
下図のように会社のチームに似た組織を構成するAIエージェントをtmuxで起動し、tmux間で役割に応じてAIエージェントが行動する。
COO(人間)
│
▼
Producer(プロデューサー)
│
▼
Director(ディレクター)
│
├─────────────────┬─────────────────┐
▼ ▼ ▼
Lead Designer Lead Programmer QA Lead
│ │ │
├───┐ ┌───┼───┬───┬───┐ ├───┐
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
D1 D2 PG1 PG2 PG3 PG4 PG5 T1 T2
人が最高執行責任者となってプロデューサーへの指示をするだけである。
下記のWebページも全てこのエージェントチームで作り上げた。
COOとして指示をしたのは、「WebGLで渦巻く銀河のコーポレートサイトを作成して下さい」から始まり、こういう風にしたいなと思ったことを伝えると、プロデューサーが意図を含み取り、タスクを分解してディレクターに指示を出し、ディレクターが各タスクを管理しながらデザイナーとプログラマーとQAに仕事を分散させていた。
自分でフルスクラッチするとおおよそ、1週間(8h x 7day)ぐらいかかるかなというところを5時間で作成することが出来た。
その5時間もべったり張り付いているわけではなく、段階ごとにプロデューサーから報告が入るのでそれをチェックして動作が満足行くかチェックして修正や改善箇所を再指示してというのを繰り返しただけである。
つまり、作業時間というよりも完成までの時間であって、総所要時間(リードタイムやスパンと言い換えたほうが分かりやすいか)であって実質的な作業時間はもっと少ない。
AIを「ああだ、こうだ」とケチを付ける人もいるけど、このようにうまく活用することで大幅に工数を削減できる環境を使わないのはこれからの自身のエンジニアリングに影響してくるだろうと思われる。