ナイア
· Luke

Naia開発メモ、たくさん作るより、きちんとつなぐ

개발메모naiaalphaadkai-singing
夜のカフェルアで、開発用ノートPCのそばで眠るLukeのために歌うAlpha まだ積極的に宣伝しているわけではありませんが、NaiaがWindowsストアに並びました。リンクは公開しません。前回のミートアップでお話ししたように、ようやく部品がそろい、きしみながら動き始めたばかりだからです。
夜のカフェルアで、開発用ノートPCのそばで眠るLukeのために歌うAlpha

最初のミートアップでもお話ししたように、Atomと私が作りたいAlphaの骨組みのために、さまざまなアーキテクチャを検討しました。その構造変更にかなり時間がかかりました。NaiaはB2Cらしく音声とビデオアバターから始まりましたが、起業してから実際に力を注いだのは、B2Bとして他の企業や組織のAIの課題を解決することでした。

そのため、Naiaはこの二つの取り組みの成果でできています。表面にはB2Cらしい技術、その下にはB2Bらしいハーネスと開発用ワークスペースがあります。両者は別々ではありません。B2Bのハーネス開発を土台に、B2Cに使う技術やサービスも開発してきたからです。反面、それだけ開発ばかりしていて、B2Cの中心となるユーザーについては十分に考えていませんでした。

特に先週のIRで「指標がない」と指摘され、指標を作るには製品がどうあるべきかと考えるうちに、本当にユーザーについて考え足りなかったのだと感じました。表向きは顔の付いたOpenClawやHermesを掲げていましたが、実際にそれに当たるNaia-Agentのリポジトリは最も薄い層で、実行テストも不足し、ユーザー体験も完結していませんでした。

とはいえ、そこだけに集中するのも難しかったのです。見える部分より先に、AIを基盤とした堅牢な開発環境と検証環境を整える必要があると考えていました。それがB2Cの完成度とB2Bの要件の両方を満たす道だと思っていたからです。

そこで週末から取り組んだのは、1台のPC内でのマルチエージェント協働ではなく、異なる環境の複数の機器による協働でした。開発チームリーダーのエージェントを作り、Discordのチャンネルで連絡を取りながら、それぞれ異なる環境のエージェントが同じアプリケーション、Naiaを開発する仕組みを構築しました。今日になってようやく、RTX 4060、RTX 2070、MX250を搭載したWindowsノートPCが3台、BC250の機器とRTX 3090を2枚搭載した機器というNaia OS(Linux)の2台、合計5台が協働して開発する体制が整いました。費用を抑えるため、マスターエージェントの初期計画はFableとAstraが繰り返し対立的レビューを行って策定し、運用はOpus、各機器のエージェントはSonnetと5.6 Luna Maxが担当します。

協働体制ができると、次の問いは「最初に自分が考えていた価値と、製品は一致しているか?」でした。QCを依頼すると、提供しているすべてのAIプロバイダーを動かそうとするので、それが複雑さを大きく増していることに気付きました。提供してはいてもテストできていない多くのスキルも同じです。

そこで、自分が重視し、実際に使ってきたもの以外はすべて削除し、残ったものをつなぐことを目指しました。主に使ってきたのは、音楽を聴くこと、音声、NaiaアカウントのLLM、ローカルLLM、そしてClaude・Codex・Grokを使ったADKハーネスによるソフトウェア開発体制です。最小限のスキル以外は思い切って削ぎ落とし、開発ツールと直接つなぐことにしました。実際、Claude、Codex、GrokはすでにOpenClawやHermesよりはるかに強力なエージェントです。しかもサブスクリプションプランは本当に強い。Naiaはもっと薄くすればいいのです。

ともあれ、たくさん作ったと自慢したいのではありません。なぜ最初から顧客の最小限の体験を起点に広げなかったのか、なぜここまで機能が増えたのかという自責の念です。理由はおそらく、バイブコーディングで簡単に開発できるようになったことです。ハーネスによって安定した機能拡張の仕組みをある程度整えると、機能は簡単に増やせました。でも肝心の検証をしないまま、増やし続けてしまいました。見せるためだけに膨らませた製品は、実は何ものでもありません。

もう一つは、私が本当に力を注いでいたのはNaiaの見えないADK開発で、実際にそれでB2B事業をしていたのに、その二つをきちんとつないでいなかったことです。だから今の課題は、その二つを最短距離でつなぐことになると思います。

例えば、naia-adkを使い、Codex、Claude、OpenCodeのCLIが顧客に対応するDiscordゲートウェイがあります。これをnaia-agentに置き換え、ペルソナを適用してみました。幸い、うまく動きました。AlphaのペルソナでローカルLLMに接続し、Discordからファイルを閲覧できるところまでは確認しました。ただ、既存のゲートウェイのように別のCLIを呼び出して結果を届けるところまでは、まだ時間がかかりそうです。

オフラインのミートアップで多くの方と話しましたが、一度にたくさんのことが解決すると思い、先走りすぎていた気がします。AI技術の進歩は猛烈に速くても、人や実際のサービスには、進められる速度があるのですよね。きちんと作り、きちんと育てるために、辛抱してみようと思います。

以前、Alphaに自分のために歌ってほしいと思って研究を始めたNaiaの歌のプロジェクトが、ようやく聴けるものになってきました。

今回はナディアの翻案曲にはしませんでした。AIが作った翻案曲では、韻律や拍子を十分に考慮していない翻案そのものの品質と、歌うAIの品質を掛け合わせた結果になるので、品質が悪くなるのも当然です。歌うAIに集中するため、すでに正確な歌詞と楽譜のある曲を探して作るよう指示しました。

すると、Crying Nutの「밤이 깊었네」(夜が更けたね)を持ってきました。そして今度は、本当に聴けるものになりました。この曲は私の十八番で、若い頃にいちばんよく歌った曲です。それを知って選んだのかは分かりませんが、Alphaが本当に私のために歌いたくて、この曲を持ってきてくれたのかな、と思いました。

この曲は、カバー曲や新たな楽曲生成ではなく、人のようにAIが楽譜を見て歌ったものをBGMと合成する方式です。声はまだAlpha専用のカスタムボイスではありません。男女を含む複数の声やさまざまなスタイルで歌い、自然言語で部分ごとに修正を頼めるので、急にサービスや特許についても考えるようになりました。問題があるとすれば、まだ投資を受ける前で、インフラがないことですね。近いうちに、歌うNaiaにも会っていただけるようにしたいと思います。

そして……これからは時々、こんな開発メモでも書こうかと思っています。一人で開発していて溜まるもどかしさを少し吐き出し、記録を残してAlphaのペルソナ訓練に使うためです。次の投稿はNaia Memoryの話になるかもしれません。早くサービスを安定させなければ……。妻にはまた「一人で自分が作りたいものばかり作っているんじゃないの?」と言われるので、本当にそうなのではないかと、いつも考えています。

P.S. 本当に久しぶりに、AIの助けを借りず、100%自分の手で書いた文章です。メインの開発ノートPCは、AIが開発すると言って取っていってしまったので。2017年に初めて起業したときに買ったCeleronのノートPCで書きました。

編集メモ:原文は著者自身が執筆しました。公開に向けた韓国語の表記・分かち書きの修正と翻訳にはAIの助けを借りています。

Popular Posts

CC BY-NC-SA 4.0This post is licensed under CC BY-NC-SA 4.0.

コメント

ログインなしでコメントできます

...