メルマガ読むならアプリが便利
アプリで開く

週刊Life is beautiful 2023年7月25日号: Code Interpreter:リバース・エンジニアリング

週刊 Life is beautiful
今週のざっくばらん SlashGPT: Dispatcher オープンソース化したSlashGPTが、私にとっての最高の「遊び場(Playground)」になっているという話は先日書きましたが、先週、そこで実装したのが「Dispatcher」です。 Dispatcherの役割は、ユーザーからの入力(質問やリクエスト)を見て、それに最適なAIエージェントをアクティベート(召喚)して、そのエージェントに処理を委託することです。 SlashGPTの中には、複数にAIエージェントが実装されていますが、それぞれに役割が異なり、(Dispatchterを実装する前は)ユーザーは、適切なエージェントに切り替えた上で、そのエージェントに話しかける必要がありました。例えば、イベントのスケジュールをする場合には、「cal(calenderの省略形)」に切り替えた上で、イベント情報を入力するなど、です。 Dispatcherの役割は、その「エージェントの切り替え」を自動的に行うことにより、手間を減らそうというものです。 別のアプローチとして、さまざまな種類の質問に答えられるようなエージェントを作ることも技術的には可能ですが、プロンプトが複雑になる上に、ソフトウェアの開発がとても煩雑になります。特定の仕事だけを行うエージェントの方が、開発するのもメンテナンスするのも遥かに容易なのです。「ソフトウェアの作りやすさ・メンテナンスのしやすさ」がアーキテクチャを決める、良い例です。 Dispatcherのプロンプトは、ソースコード上では、"prompt": [ "You are responsible in categorize user's question into one of categories below.", "{agents}" ] のように定義されていますが、実行時には"{agents}"の部分が展開されて、You are responsible in categorize user's question into one of categories below. cal:Schedules events home2:Controls home equipments drone2:Flying drones webpilot:Allows users to input a URL, retrieves the web page content, and returns a comprehensible summary of it. cook:Cooks some food currency:Converts currency weather:Gets Weather Info worldnews:Gets world news となります。それぞれのエージェントの"description"を読み込んで、展開しているのです。 Dispatcherのfunctionsには、categorizeという関数一つが定義されています。[ { "name": "categorize", "description": "Categorize the question", "parameters": { "type": "object", "properties": { "question": { "type": "string", "description": "Question from the user" },

この続きを見るには

この記事は約 NaN 分で読めます( NaN 文字 / 画像 NaN 枚)
これはバックナンバーです
  • シェアする
まぐまぐリーダーアプリ ダウンロードはこちら
  • 週刊 Life is beautiful
  • 「エンジニアのための経営学講座」を中心としたゼミ形式のメルマガ。世界に通用するエンジニアになるためには、今、何を勉強すべきか、どんな時間の過ごし方をすべきか。毎週火曜日発行。連載:菅首相に会って来た/米国で起業する時に知っておかねばならないこと。
  • 880円 / 月(税込)
  • 毎週 火曜日(年末年始を除く)