Tuesday, November 21, 2023

Q&A: プロンプトエンジニアリング とは?―大規模言語モデルと ... - DIGIDAY[日本版]

misaltag.blogspot.com
記事のポイント
  • プロンプトエンジニアリングは、大規模言語モデルとのコミュニケーション手法で、人間が自然言語で指示や質問を書き、モデルを制御すること。
  • コーディングの経験は必要ないため、編集部の従業員もデータサイエンティストやエンジニアと連携し、プロンプトエンジニアリングの一翼を担うことができる。
  • プロンプトの作成にかかる作業を考えると、テストされたプロンプト、出力例、どのプロンプトがもっとも優れているかを判断するための採点基準を保存することが重要である。

ニュースルームのリーダーたちとジェネレーティブAIの実験について話していると、「プロンプトエンジニアリング」という新しい言葉が出てきました。

専門的に聞こえますが、プロンプトエンジニアリングはプロンプトデザイン、プロンプトコンストラクションとも呼ばれ、大規模言語モデル(LLM)、つまりジェネレーティブAIに力を与える大規模データセットで事前に訓練されたシステムとコミュニケーションを取るための主な方法です。

特にチャットボットやクイズを開発するパブリッシャーにとっては、LLMとのやりとりのほとんどにプロンプトエンジニアリングが必要になります。また多くの場合、LLMのプログラミングは、オープンAI(OpenAI)のジェネレーティブAIチャットボットであるChatGPTのようなチャットインターフェースで行われます。

――プロンプトエンジニアリングとは?

ソフトウェアをプログラミングする伝統的な形態は、コンピューターコードを書くことです。リアルタイム情報システムを手掛けるアプライドXL(Applied XL)の共同創業者で、コンピュータージャーナリストでもあるフランチェスコ・マルコーニ氏によれば、LLMの場合、プログラミングは命令、つまりプロンプトを書くという形になります。

一方で米ノースウェスタン大学の教授で、コンピュテーショナル・ジャーナリズム・ラボ(Computational Journalism Lab)のディレクターを務めるニコラス・ディコポロウス氏によれば、プロンプトはモデルが「実行すべきタスク」と「出力として生成すべきもの」を記述することで、モデルを指示し、制御するために使われるものです。記述はすべて、人間の言葉である自然言語を用います。

プロンプトエンジニアリングにおける真のスキルは、LLMから望み通りの出力を引き出すプロンプトを書くことであり、たとえば、パブリッシャーのアーカイブで訓練することが可能です。また、特定のオーディエンスに向けて、特定のトーンで出力するよう指示することもできます。出力の質はプロンプトと同等にしかなりません。

たとえば、独自のチャットボットを開発したパブリッシャーは、自前のコンテンツのみで訓練したモデルを使用しています。その個性はプロンプトエンジニアリングによって決まり、プロンプトエンジニアリングではモデルがどのようなトーンで出力すべきかを指示します。

インサイダー(Insider)のCTOであるハリー・ホープ氏は、「AIの仕組みは、デジタル頭脳のようなものをコーディングすることだ」と話し、「基本的にコンピュータープログラムを訓練し、人の脳が学習するのとほぼ同じように学習させることができる。私にとってこれは、衝撃的なことだ」と続けます。

ただし、本物の脳と同じく、AIモデルがどのように機能するかを判断するのは難しいとホープ氏は述べており、「つまり、AIモデルとのやりとりはもう少し試行錯誤が必要だ。どのように機能しているのかよくわかっていないため、数学というより生物学のような感じがしている。だからこそ、私たちはプロンプトを通じて話し掛け、その結果を観察するのだ。そして、システムに入力したさまざまなものが、どのように出力されるかを測定することができる」と言います。

――誰がプロンプトをつくるのですか?

LLMとのコミュニケーションにコーディングの経験は必要ないため、編集部の従業員もデータサイエンティストやエンジニアと連携し、プロンプトエンジニアリングの一翼を担います。ほとんどの場合、パブリッシャーはこの仕事に特化した人材をまだ採用していません。ジャーナリストは本質的に質問を得意とするため、プロンプトデザインに参加するのは理にかなっている、とマルコーニ氏は話します。

しかし、プロンプトの作成には時間がかかります。「多くの場合、何度も繰り返し、洗練させていき、自分のアイデアを表現するさまざまな方法を試し、モデルにしてほしいことを理解させる必要がある」とディコポロウス氏は述べています。

BuzzFeedの編集担当シニアバイスプレジデントであるジェス・プロバス氏は3月、「BuzzFeedはクイズ開発の手作業のプロセスを改善するため、少数のライターにAI技術の使い方を覚えてもらっている」と述べています。「これらのライターたちは、AIツールの回答やBuzzFeedの『個性』を持っているかを確認するために、さまざまなプロンプトをテストしている」と、同氏は言います。「乗り越えなければならない障害は、ジェネレーティブAIの言葉を理解すること。(中略)そして、良いプロンプトを書くことだ」。

インジェニオ(Ingenio)のメディア担当プレジデントであるジョシュ・ジャフェ氏はメール取材に対し、プロンプトエンジニアリングは「ほとんどが試行錯誤だ」と述べています。「絵を描くようなものだ。スケッチから初めて、形、影、色を加えていく。ときには立ち戻り、それが自分の望むものかどうかを確認し、作業を続ける。そして最終的に完成したと、自分で判断するのだ」。

――プロンプトの例を教えてください。

ディコポロウス氏はジェネレーティブAIニュースルーム(Generative AI Newsroom)というサイトを運営し、プロンプト戦略の事例を公開しています。その一例が、ChatGPTのAI技術であるGPT-4を使って新しいクイズを開発する方法で、外部の開発者も利用できます。以下は、そのタスクに使用されるプロンプトの例です。

「${要約}に関する以下のニュース記事をもとに、選択式のニュースクイズをつくってほしい。質問は、記事の要点と直接関連し、明確に書かれており、理解しやすいものであること。答えの選択肢を4つ用意し、記事の情報に基づき、正解とそれ以外を明確に区別すること。正解を明記し、記事中の事実を参照しながら、その選択肢が正解である理由を簡潔に説明すること。ジャーナリストが一般市民にそのニュースを説明するように、説明文を書くこと。### ${記事}」

この記事のために取材した人の多くは、プロンプトを小さなサブタスクに分割してからより大きな命令にまとめると、より正確な出力が得られると口を揃えています。

たとえば、ジャーナリストは記事中の引用部分に手を加えることなく、ジェネレーティブAIを使って記事を書き直すテストがしたいと思うかもしれません。その場合、引用部分を書き直すことなく記事を書き直してほしいと命令しても、LLMには理解できない可能性があります。ディコポロウス氏は対策として、まず記事から引用部分を抽出するよう求め、正確に実行されたことを確認してから、抽出した引用には触れず、記事を書き直してほしいという2番目のプロンプトを入力すれば、より良い出力が得られると助言しています。

――プロンプトはどのように保存されるのですか?

プロンプトの作成にかかるすべての作業を考えると、テストされたプロンプト、出力例、どのプロンプトがもっとも優れているかを判断するための採点基準を保存することが重要だ、とマルコーニ氏は言います。これらのログは「プロンプトライブラリ」と呼ばれることもあります。

マルコーニ氏はこれをニュースルームの記事のパフォーマンス分析や編集のスタイルガイドに例えており、「社内のテンプレートにもなる」とホープ氏は言います。「観察、測定し、どの結果がより良いかを確認することがすべてだ」。

しかし、プロンプトの記録は依然として、ニュースルーム内で非公式に手作業で行われています。社内文書やSlack(スラック)のスレッドに保存しているパブリッシャーもある、とディコポロウス氏は述べています。

――なぜパブリッシャーはプロンプトを秘密にしたがるのですか?

DIGIDAYは多数のパブリッシャーに、作成したプロンプトの例を教えてほしいと依頼しましたが、今のところ、喜んで公開してくれるパブリッシャーはいません。プロバス氏はDIGIDAYに、バズフィードのプロンプトは「秘伝のソースの一部だ」と述べています。

ジャフェ氏は、コカ・コーラ(Coca Cola)がコーラのレシピを公開するようなものだと言います。「コンテンツやチャット体験を他社と差別化する手段だということ。ユーザーが消費するものに自分の指紋を残す手段なのだ」。

[原文:WTF is prompt engineering?

Sara Guaglione(翻訳:米井香織/ガリレオ、編集:島田涼平)

Adblock test (Why?)


からの記事と詳細 ( Q&A: プロンプトエンジニアリング とは?―大規模言語モデルと ... - DIGIDAY[日本版] )
https://ift.tt/RtkNv5V
Share:

0 Comments:

Post a Comment