こんにちは!
社会人2年目の金子です。
近年、ChatGPTのような生成AIが注目を集める中、プロンプトエンジニアという新しい職業が誕生したことをご存知でしょうか?
私が働くFIXERではGaiXerという生成AIサービスを提供しており、お客様に最大限活用していただくためにプロンプトエンジニアが在籍しています。その中の1人が私です!
今回は、プロンプトエンジニアとしての実際の業務を基に、プロンプト開発や検証についてお話ししたいと思います。
これからプロンプトエンジニアを目指す方にとって、きっと参考になる情報が満載ですので、ぜひご覧ください。
プロンプトエンジニアに必要なスキルとは?
先に結論から申し上げますが、情報収集能力と語彙力に長けた人であれば、プロンプトエンジニアに向いていると言えるでしょう。
その理由は、現在、大規模言語モデル(LLM)が驚くべき速さで進化し、プロンプトエンジニアリングも常に更新され続けているためです。
また、豊富な語彙力があれば、適切な指示をプロンプトに記載することができるので、語彙力があり、生成AIに興味がある人は、ぜひプロンプトエンジニアになることをおすすめします!
ただし、私自身がそうかと聞かれれば、そうではありません(笑)。
実際、語彙力に関しては、生成AIが考えてくれるのですから(笑)。
プロンプト開発で重要な2つのポイント
次に、冒頭で触れた、実際の業務におけるプロンプト開発についてお話ししたいと思います。
プロンプト開発といっても、ただ作ればいいというわけではありません。
私が開発する上で現在意識していることは、以下の2つです。
1. 要件定義
2. 限界の見極め
例えば、RAGを使用してAというファイル内の情報を基にFAQを回答してくれるチャットボットを作成してほしいという要件をもらったとします。
さて、次のうちどちらのプロンプトが要件を満たしているでしょうか。
1. ファイルA内の情報を基に回答できる精度70%、誤った回答をする精度30%
2. ファイルA内の情報を基に回答できる精度80%、誤った回答をする精度20%
答えが出ましたか?
正解は、2ではなく1です!
驚かれる方が多いかもしれませんが、実はここに重要な要件が隠されているのです。
詳しくヒアリングしたところ、以下のような要件があることがわかりました。
・偽の情報、いわゆるハルシネーションをしてほしくない
・回答がファイルA内に記載していない場合は無回答がいい
これらの要件を踏まえて、再度ハルシネーションを起こした内訳を見てみましょう。
1. ファイルA内に情報はあるのに無回答が25%、ハルシネーションが5%
2. ファイルA内に情報はあるのに無回答が5%、ハルシネーションが15%
そうなんです。1の方が要件を満たしているのです。
ハルシネーションを最小限に抑えることが最優先事項だったため、たとえ無回答の割合が高くなってしまっても、ハルシネーションが少ない1の方が適切なプロンプトだったのです。
さらに、チャットボット作成という点では、プロンプトのみで100%の精度を達成することは不可能なので、どこまで妥協するかも見極めなければなりません。
そのため、私は先ほども述べたように、要件定義と限界の見極めの2つが大事だと考えています。
検証の重要性
先ほど精度についてお話ししましたが、ここで、どのような検証を行い精度の算出をしているのか簡単に説明したいと思います。
例えば、チャットボットの場合、GaiXerを使って多種多様な質問を生成してもらい(詳細は省略しますが)、社内で定めた評価基準に則って、単に○△×ではなく数値化して検証しています。
また、書類のひな形を作成するプロンプトでは、そのプロンプトを使って何度も生成を行い、プロンプト通りに出力された割合などの評価を行うことで、品質にこだわっています。
このように、様々な角度から検証を行うことで、プロンプトの精度を定量的に評価し、品質の向上に努めています。ちなみに検証が一番大変です笑
以上がプロンプトエンジニアとしての仕事になります。
丁度デジタル庁の方が「行政での生成AI利活用検証から見えた10の学び」という記事を3回に分けて記載していますので生成AIは業務の何に役立つか知りたい方は是非ご覧ください。
これからのプロンプトエンジニア
長文でプロンプトエンジニアとしての業務について話させていただきましたが、最近DiFyやCozeというノーコードで生成AIのサービスを作成できてしまうツールが誕生してきているので、これからはプロンプト開発以外にもアーキテクチャの設計までできないと厳しくなる時代に突入すると思います。
それでもプロンプトエンジニアになりたいと思った人がいたのであれば一緒に頑張りましょう!
以上、最後までお読みくださりありがとうございました。