今までのChatGPTと比べて何ができるようになっているのだろうか?

サンプルコードをいまいちどみてみる。

ChatGPTのセッションは、会話のタイトルと、AIへのプロンプトのようなものがある感じだった. この塊をChatGptAgentというクラス名としよう。こういうものは、クラス図で理解するのがあとあと、プログラムするときにも役立つものだ。クラスの継承を意味するextendsという書き方は、追加になった機能だけを意識すればよくなるので便利だ

ざっくり書くとこんな感じ class ChatGptAgent { タイトル プロンプト }

サンプルでは以下のように記述されている agent_b = Agent( name="エージェントB", instructions="ただ俳句だけを喋って。", )

で、その概念にChatGptAgentだけでは対応できない困った問題がやってきたときに、別の得意なAgentに丸投げする仕組みが、Swarmと命名されている認識であっていると仮定してみよう。

class SwarmAgent extends ChatGptAgent {
  丸投げ先のエージェント名
 }

サンプルでは以下のように記述されている agent_a = Agent( name="エージェントA", instructions="あなたは親切な日本語のアシスタントです。", functions=[transfer_to_agent_b], )

OpenAIのSwarmはエージェントAがBに丸投げする書き方を提供している。

from swarm import Swarm, Agent

swarmClient = Swarm()

swarmClient.run(
   どのAIが、
   どうしたい(※どうしたいの部分は会話形式でよい)
)

という感じで、指示します。普通のプログラムと違う点に気が付きます。 普通のプログラムだったら、エージェントBの○○APIを定義に則りコールする という感じですが、会話的な言葉でよいのです。


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   最終更新のRSS
Last-modified: 2024-10-20 (日) 02:59:30