質問型LLM
LLMに複雑なタスクを実行させる場合、大量のコンテキストを与える必要があります。新しい機能の設計をするときには、ユーザーにどのように見せたいのか、実装方法のガイドライン、参照する外部システムの情報などが必要になります。これらはMarkdownで数ページに及ぶこともあります。こうしたコンテキストは当然ながら人間が手で書くこともできますが、人間にインタビューしたあとにLLMに書かせるという方法もあります。
この方法では、私に質問するようにLLMに指示を出します。適切なコンテキストを作成するために必要なすべての質問をLLMから聞いてもらいます。私は必要な情報の大部分を提供できます。LLMが判断できないようなら、参照すべき情報源を与えることもできます。作業が完了したら、次のステップで他のセッション(あるいは他のモデル)が使用するコンテキストレポートを生成してもらいます。
この方法の説明を最初に読んだのはHarper Reedのブログでした。彼のアプローチで特徴的なのは、LLMには「一度にひとつだけ」質問させるように徹底していたことでした(私が実際に試してみたところ、LLMに何度も注意する必要がありました)。
質問型LLMのもうひとつの方法は、あるドメインの知識を記述したドキュメント(ソフトウェアの仕様書など)をLLMに与え、その内容が正確かどうかを判断するために人間の専門家に対してインタビューさせるというものです。これは人間の専門家にドキュメントを読んでレビューしてもらうことの代替手段になります。ドキュメントのレビューは難しいことが多いため、LLMとの対話形式のほうが効果的かもしれません。ドキュメントがうまく書けていない場合は特にそうです。
もちろん、これらの手法を組み合わせて使用することも可能です。ひとつの質問型LLMを使ってドキュメントを作成し、別の質問型LLMで専門家と一緒にドキュメントをレビューしてもらうのです。
上記の方法は、LLMの用途に応じたコンテキストをLLMに作成または評価させるというものです。しかし、このテクニックは他にも幅広く応用が可能です。私は文章が書くことが自然にできる人間です。書くというプロセスが、考えるためには不可欠であると感じています。何かを本当の意味で理解するには、私はそのことについて書く必要があります。しかし、それは人によって違うでしょう。多くの人が文章を書くことを難しいと感じています。非常に難しいと感じる人もいます。頭の中にある情報を他の人間が理解できる形に変換したい場合、このことは深刻な問題になります。こうした人たちはドキュメントを自分で書くよりも、LLMにインタビューしてもらうほうが楽だと感じるかもしれません。私のような人間はAIっぽい文章に違和感を覚えるでしょうが、急いで書いたせいで情報が伝わらなかったり、そもそも何も書かなかったりして、情報がまったく得られないよりはマシです。