今までの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 (189d)