読書メモ: 弱いAIのデザイン – ツールからエージェントへ

一般的にAIと呼ばれているシステム・機能・APIで何をしたいのか。その辺りを整理するために読むといい感じかなと思います。

エージェントとツール・アシスタント

「それを使うことで、タスク・仕事が捗るもの」がツール。エージェントは「タスク・仕事をユーザーのために実行するもの」。ツールとエージェントの間に、「タスク・仕事を補助・支援するもの」というアシスタントも存在する

エージェントの例

  • オートパイロット:航路を指定すると、操縦を行い、必要に応じてパイロットにアラートを出す
  • iTunes / Spotify: テンポや評価レートなどの設定をもとにプレイリストを更新・提案する
  • ShotSpotter: マイクの音声から銃声を検知して警察に通報する

「データの流れを監視」して「事前に設定されたトリガー」を元に「ユーザーの指定したタスクを実行する」のがエージェント。

データの流れを監視していないのであれば、それは支援型のツール。タスクを代理で実行するだけの機能であれば、それは自動型ツール。

永続的に裏方で作業を代行してくれるシステムのことをエージェントと定義する。

エージェントに求められるもの

全部書いていたらただの丸写しになるので、「なるほどー」と思った2点をピックアップ。

いかに失敗するか

裏方ゆえに、失敗が見えない。ゆえに正しくユーザーにフィードバックを出す必要がある。

  • 把握してほしい状況とは何か
  • どこにどんな問題があるのか
  • ユーザーは今何をすべきか
  • どのような選択肢があり、何が推奨されるか
  • 手動操作に切り替える方法と引き継ぎ情報

などを出すことが理想。

発見を促す

ただ代行するだけでなく、変化・発見があるエージェントはより理想的。

簡易的なものであれば、意図的に検索結果に関係性の薄いものを混ぜるという方法もある。例えば「レモンタルトのレシピを検索している時に、ライムタルトやレモンケーキのレシピを混入する」など。

わざと意図しない方向に漂流(ドリフト)させることで、新しい発見が生まれる。

ただしドリフトを好まないユーザーもいるため、手動でドリフトするかしないかを設定できるようにするケースもある。

特化型エージェント6つのユースケース

全般的なエージェントは現状、技術やデータ量などの制約からあまり現実的でない。が、特定のユースケースでエージェント的振る舞いを実現することは今でも可能。

1: 準備作業を代行するエージェント

設定したトリガーに基づいて自ら準備を始めるタイプのエージェント。

プロジェクターを例にすると、「カレンダーに登録された会議の時間に反応して余熱、セットアップを始める」や「プレゼンターとプロジェクターの距離に応じてスリープモードのオンオフを行う」など。

2: 最適化するエージェント

状況に応じて最適な設定・選択を行うタイプのエージェント。電波状況に応じて3G / 4G / wi-fiを切り替えるスマートフォンなどが例として挙げられる。

3: アドバイスをくれるエージェント

タスクの状況を監視し、ユーザーにアドバイスするエージェント。

マップアプリやドライブアプリで、道路状況や運転速度などを元にルート選択や休憩のアドバイスを行うタイプなどが該当する。

4: 操作の代行・先読みをするエージェント

ユーザーがやるである操作・タスクを先読みして実行してしまうもの。

Gmailで受信した予約確認メールをもとに、カレンダーへの登録やGoogle Mapへの情報反映がされる様子がイメージしやすい。

5: するべきでないことを抑止してくれるエージェント

「やるべきでないこと」を判断・指示・実行してくれるタイプのエージェントも需要は高い。

着信を検知して音量を下げるテレビやスピーカー、プレゼンテーションモードを検知してPUSH通知を抑止するデバイスなどが挙げられる。

6: 終わるべき時に終わってくれるエージェント

終了すべきであると判断して、自ら終了してくれるという機能もユースケースとして挙がる。

PCやスマートフォンのスリープ機能はまさにその例。

エージェントのライフサイクル

  1. セットアップ
    1. できることとできないことを伝える
    2. 目標と優先すべき点を把握する
    3. 許可と権限のリクエスト
    4. 動作を実際に試してみる
    5. 利用を開始する
    6. 必要な通知のリクエスト
  2. 稼働中
    1. 作業状況を監視する
    2. 成功と失敗を通知する
  3. 調整
    1. やってはいけないことを追加する
    2. やってほしいことを追加する
    3. 変更後のデモを行う
    4. 設定内容を確認する

“賢い”エージェント

過度の擬人化による弊害

人間に似せれば似せるほど、「なんでもできるのではないか」という期待を抱かせる。期待するが、実態は特化型なので、その期待に応えることができない。

間抜けな返答をあえて入れることで、過度な期待を抱かせないという方法も存在する。

標準設定を賢くする

裏で動くため、「何を行うのか」をデモンストレーションできるのが理想。

また、動き始めたことや、実際に作業を実行したことをメールやSMSなどで通知することで稼働していることをユーザーに知らせることも重要。

この記事を書いた人