はじめに
七尾百合子さん、お誕生日 3日目 おめでとうございます! nikkieです。
Today I Learnedです。
ひょんなことからNgセンセの1年前の動画を見たのですが、一次情報を確認することの重要さを思い知りました。
目次
What's next for AI agentic workflows
LLMを使ったアプリケーション開発に携わっている方には、以下の動画の最初の2分だけでも見るのをオススメします
Agentic workflowとは
LLMに文章を書かせたいとき、プロンプトで指示しますよね。
「Please type out an essay on topic X」
(もっと構造化したり、例を入れたりするかもしれませんが、ここでは省略します)
NgセンセはこれをNon-agentic workflowと呼びます。
人間でいうと、バックスペースキーを使わずに文章を最初から最後まで書き上げるようなものとのこと1。
こうとらえると、LLMが指示に沿った出力をするのは驚異的ですね(沿わないときもありますが)
Ngセンセの提案はAgentic workflow。
エッセイの例はこんな感じになるそうです。
- Write an essay outline on topic X
- Do you need any web research?
- Write a first draft
- Consider what parts need revision or more research
- Revise your draft
- (略)
細かい指示が並んでいますが、重要なのはRevise(修正)と理解しました。
バックスペースキーを使わせるわけです。
草稿を(バックスペースキーを使わずに)書かせた後、LLMに修正が必要な箇所を考えさせ、それを元に修正します。
これを繰り返すわけですね(動画に映るスライドにはループしている図があります)
Agentic workflowの定量評価
この後には効果が定量的に示されます。
HumanEvalを使った検証で、GPT-3.5 + Agentic workflowがGPT-4 + Non-agentic workflowを上回ったとのこと。
このことから、性能が低いがトークン生成が速いLLMにAgentic workflowを適用すると、性能が低い点を埋め、さらには多少上乗せできるのだなと理解しました。
(性能が高いLLMにAgentic workflowを適用するとより賢くなるでしょうが、所要時間がネックです)
Agentic Reasoning Design Patterns
私の中ではオプショナルという判断です(最初はとにかくAgentic workflowを押さえたいので)。
11:00前後のまとめから見るのもよいかもしれません
- Reflection2
- Tool use
- Planning
- Multi-agent collaborations
上記の例で、Reflectionは修正点を考えて直すところ、Tool useはweb researchに表れているように思われます。
この2つ(1と2)は講演時点(2024年3月頃)でrobust、残り2つ(3と4)はemerging3とされています
関連リソース
日本語で読める記事
Ng先生による、発表の記事版も見つかりました(積ん読!)
- Agentic Design Patterns Part 2: Reflection
- Agentic Design Patterns Part 3: Tool Use
- Agentic Design Patterns Part 4: Planning
- Agentic Design Patterns Part 5, Multi-Agent Collaboration
私のしくじり:Ng先生の動画を見ずに済ませようとして誤解した
上記のZennの記事は公開直後に軽く目を通していて、「Agentic workflow」は目に留まりました。
その後以下のスライドを見たときに、「Agentic workflowは、長いプロンプトを使うのではなく、細かいタスクに分解してLLMをたくさん呼び出すこと」と私は誤解しました(続くスライドまで送って見てください)
Agentic Workflowの肝は、(道具の使用や)修正を可能にする点だと思います。
プロンプトの長さはNg先生は言及していないように思われ、長くても繰り返しConsider & reviseすれば改善していくのではないかと思いました(※要検証)
終わりに
Andrew Ng先生が提唱するAgentic workflowを、動画を見て完全に理解しました。
1つのプロンプトを渡すのは、人間でいうとバックスペースキーなしでテキストを書いてもらうようなもの。
Agentic workflowでは、バックスペースキーなしで書いたテキストをレビューさせ、レビューに基づいて修正させることを繰り返すことで、バックスペースキーを使った状態となり出力の質が上がる!
これは日々書くプロンプトにも活かせそうですね。
Agentic Reasoning Design Patternsの4つは、関連論文を確認して理解を深めていきたいなと思っています。
Ngセンセが動画で提案しているのはどれも抽象で、具体のLLMが更新されたとしても影響を受けにくいように思われます。
大LLM時代、個別具体はどんどん更新されていきますが、そこを追いかけるのは持続可能じゃないように感じており、抽象の理解を深めていきたい気持ちです。
この生存戦略には一次情報が大事だなと痛感しました4