先日、X(Twitter)で、2万人以上のフォロワーを持ち、起業家でありプログラマでもある元木大介さん(@ai_syacho)が、「Zoltraak(ゾルトラーク)」という自然言語プログラムを発表されました。
このZoltraakは、生成AIに対し自然言語(何らかの既存プログラミング言語ではなく日本語)で命令できる、新しいタイプのものです。
2024/4/28 追記
Githubにてリポジトリが公開されました!
最新の利用方法などはリポジトリのREADMEをどうぞ
https://github.com/dai-motoki/zoltraak
「え、ChatGPTでも日本語でお願いできるじゃん」と思いますよね?
ChatGPTとZoltraakでは、出力の考え方が根本的に違っています。
現在の生成AIは対話式がメイン
ChatGPTに代表される生成AIは対話式です。
GPT、Gemini、Copilotなどの生成AIは向上を続け、入力できるテキスト量こそ増えました。しかし、業務全体を俯瞰して依頼することはまだ難しいのが実情です。
分解したタスク毎に内容を依頼して調整を繰り返す、という流れが多いのではないでしょうか。
Zoltraakは短文依頼で、必要になるものを用意してくれる
対してZoltraakは、「動物のペットショップの顧客関係システムを構築したい」といった特定の要望を書くだけで、要件定義書、ファイル・フォルダ構成、クラス図、シーケンス図といったものを出力してくれます。
システム構築に特化しているわけでもなく、ホームページ制作、デザイン、コンサルティング、分析などあらゆることが短文で依頼可能で、まさに魔法のような問題解決ツールです。
もちろんまだ世に出たばかりで、すべてが実用的なわけではありません。
しかし、草案として一通りの内容を準備してくれるので、それらを叩き出しにブラッシュアップしたり、そのまま詳細を詰めて仕事を進められるわけです。
Macで使う
巨人の肩に乗る形で、Xの投稿にて使える方法を簡単に解説してみました。
Macを使っていてプログラムを本業としない人向けです。
Macは標準でPythonがインストールされてますが、少し古いものだとバージョンが2とかだったりします。ZoltraakはPython3からの利用になると思うので、最新版にアップデートしておきましょう。
詳しくはググったり生成AIに聞いてみてください。
Windowsで使う
Windowsの方は確認していないのでよくわかってませんが、利用までに問題があった場合、有志の方の投稿やコミュニティを確認してみましょう
Zoltraakを使うのに必要なANTHROPICのAPIキーは以下のURLから発行できます。
https://console.anthropic.com/login
Xの投稿にも書いたのですが、電話番号を登録するとフリー利用分として$5分のクレジットがもらえるようです。
僕は昨年の12月に登録したのですが、その時は電話番号を登録してももらえず、再登録してもNGで、もう一回線で試しても同じでした。
現在はどうかわかりませんが、追加されない場合、クレジットカードで最低$5以上の課金登録が必要になります。
APIキーを取得しても、残高0ではエラーが表示され使うことができません。
zoltraakコマンドは、次のように実行します。
zoltraak "タスクの説明"
引数として与えられた文字列(タスクの説明)に基づいて、要件定義書が生成されます。
例:
zoltraak "最新の大規模言語モデルが学べるポケモンゲームの様なシステムを作りたい"
たったこれだけで、要件定義書、ファイル・フォルダ構成、クラス図、シーケンス図といったものを出力してくれます。
バージョン確認
zoltraak -v
アップデート
pip install --upgrade zoltraak
-c もしくは –compiler オプションを使用して、特定のプロンプトコンパイラを指定できます。
コンパイラって聞いたことあるけど、プログラマーじゃないんだよな〜、と思ったあなた!大丈夫です!我々は電子レンジの原理をしらなくても料理を温めることができます。
実行例から見ていきましょう。
ビジネスコンサルティングドキュメント
zoltraak "今月中に中小企業向けのビジネスコンサルティングドキュメントを作成する" -c biz_consult
関数型プログラミングでの開発タスク
zoltraak "Manimを用いて、MoEモデルを視覚化するプログラムを開発する" -c dev_func
オブジェクト指向設計での開発タスク
zoltraak "今月中に多機能在庫管理システムを開発する" -c dev_obj
ターミナルで何かしら触ったことがある人なら、依頼文を変えてコピペするだけです。(一応、推奨されている環境としてはCursorというAIエディター経由です)
まず、実例で出した「 -c 」の後にある「 biz_consult とか dev_func 」がカテゴリみたいなものです。
内容については、次の項「プロンプトコンパイラの種類と説明」で軽く触れています。
例えば、biz_consult を付けると、コンサルに必要であろう内容で依頼文を調整してくれるというものです。
料理に例えるとこんな感じ
zoltraak "ふわとろ系のオムライスを鶏肉多めで" -c 洋食
「洋食」の部分が「中華」だったら、期待と違うものがでてきますよね。
「洋食」とつけることで、洋食としての準備を整えてくれるというわけです。
依頼文自体も難しく考える必要はなく、普段ChatGPTにお願いするような感じで大丈夫です。とはいえ、APIを利用するので、1円レベルですが費用は発生してしまいます。
使っていくなかで、自分にとって都合の良い感じの出力ができたら、その時の依頼文(プロンプト)を覚えておくのが良いと思います。
一般的な開発タスク用
general_defzoltraak "プロジェクトやタスクについての説明を書く" -c general_def
プロジェクトの背景、目的、要件を網羅。
ビジネスコンサルティング関連のドキュメント生成
biz_consultzoltraak "中小企業向けのビジネスコンサルティングドキュメントを作成する" -c biz_consult
戦略立案や計画の可視化をサポート。
関数型プログラミングを基にした開発タスク用
dev_funczoltraak "Manimを用いて、MoEモデルを視覚化するプログラムを開発する" -c dev_func
純粋関数や不変性などの概念を重視してドキュメントを生成。
オブジェクト指向設計を基にした開発タスク用
dev_objzoltraak "今月中に多機能在庫管理システムを開発する" -c dev_obj
クラス図やポリモーフィズムを詳述。
一般的な要求事項用
general_reqdefzoltraak "ペットグッズを専門に扱うECサイト開発" -c general_reqdef
手続き型と宣言型の要件定義を組み合わせて生成。
Zoltraakはまだ生まれたての言語です。
これから追加アップデートや改修が多くなると思います。プロンプトコンパイラも追加されていくのかも知れません。
ここに書いたことも仕様が変わるかも知れないので、開発者の元木さんをフォローしたり、ZoltraakのXコミュニティをチェックしてみるといいでしょう。
『日本語を世界語に』という、元木さんのZoltraak に対する使命、将来像、価値観が投稿にまとまっています。
思想、意気込みが素晴らしく、応援せずにはいられません。
ZoltraakのX上でコミュニティができたので、気になる人は参加してみましょう。
自然言語プログラミングZoltraak(Xのコミュニティ)
https://twitter.com/i/communities/1783671037420577056
Zoltraakは今後も要注目であることは間違いありません。