Microsoftがパブリックプレビュー版として提供しているAI Shellは、コマンドラインからAIを効率的に使うためのユーティリティツール。Windowsにデフォルトで搭載されるPowerShellを使ったコマンドラインでの生成AIをはじめ各種AIモデルとのやりが可能で独自のコマンドも搭載しているためエラーの解説やスニペットのコピー&ペーストなどいったん設定しておけば、とても楽になりそうだ。テスト目的で公開されているパブリックプレビュー版ではあるが、ここでは、ChatGPTのAPIをエージェントに設定してWindows10にインストールしてみよう。
Public Preview of AI Shellのインストール
公式ブログにインストール手順が掲載されているがWindowsの場合
Windows 10 or higher
PowerShell 7.4.6 or higher
Windows Terminal
が推奨環境として必要になる。PowerShellのコマンドで
Invoke-Expression "& { $(Invoke-RestMethod 'https://aka.ms/install-aishell.ps1') }"
を貼り付けてEnterキー。ダウンロードとインストールが開始される仕組みだ。
次に
Start-AIShell
と入力すると、以下の画面のように新しいWindowsターミナルが立ち上がりサイドパネルにAI Shellと書かれた画面が表示される。ここで各AIのエージェントを選択する仕組みだ。ここではopen-gptを選択してEnterを押すと以下のようにGPTのエージェントを設定するよう促す画面となる。
openaiエージェントの設定
agent configコマンドを入力すると設定JSONファイル(User\user.aish\agent-config\open-gpt\openai.agent.json)が自動で立ち上がる。
JSONファイルでは4行目/*のコメントのあとにサンプルとしてAzure OpenAIサービスとパブリックOpenAIの2つの設定項目があり、30行目の*/でコメントを閉じている構造だ。ここではサンプルを使ってパブリックOpenAIを使った個人用途の設定にしよう。コメントを削除した上で、21行目からの自身が持つOpenAI GPTのAPIアカウント情報やキーを入力する。
Name:には筆者の発行キーネームGo
Model Name:にはgpt-4o-mini
Key:には、sk-・・・からはじまるキー
を入力。あとはそのままで上書き保存する。ターミナルにもどって、設定したJSONファイルを反映させるコマンド
/refresh
を入力すると再びAIShellが読み込まれるので、"hello"と挨拶してみると英語で返ってくる。
エージェントを日本語にする
エージェントを日本語対応させるのは簡単だ。再びagent configコマンドで設定JSONファイルを立ち上げて、25行目からのシステムプロンプトにand use japanese language.を加える。
"SystemPrompt": "1. You are a helpful and friendly assistant with expertise in PowerShell scripting and command line.\n2. Assume user is using the operating system `Windows 11` unless otherwise specified.\n3. Use the `code block` syntax in markdown to encapsulate any part in responses that is code, YAML, JSON or XML, but not table.\n4. When encapsulating command line code, use '```powershell' if it's PowerShell command; use '```sh' if it's non-PowerShell CLI command.\n5. When generating CLI commands, never ever break a command into multiple lines. Instead, always list all parameters and arguments of the command on the same line.\n6. Please keep the response concise but to the point. Do not overexplain.and use japanese language"
現在、パブリックプレビュー版での公開であるためテストでの利用となるAI Shellだが、現在ところ以下のようなコマンドが用意されている。
/agent エージェント管理用のコマンド。
/cls 画面をクリアします。
/code 生成されたコードを操作するコマンド。
/dislike 最後の応答を嫌い、フィードバックを送信します。
/exit 対話型セッションを終了します。
/help 使用可能なすべてのコマンドを表示します。
/like 最後の応答に「いいね!」をしてフィードバックを送信します。
/refresh チャット セッションを更新します。
/render 診断目的でマークダウン ファイルをレンダリングします。
/retry 最後のクエリに対する新しい応答を再生成します。
わざわざブラウザや別のアプリケーションを立ち上げずにシェル上で生成AIは使えるのはとても楽だ。エラーメッセージのやりとり、短いコードやコマンドの生成など近い場所での利点は思った以上に大きい。AI Shell独自コマンドに加えて、他のAIモデルのエージェントの作成も進展するとさらに多様な使い方も期待できそうだ。