2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
ChatGPT利用サービス開発でわかったAIとの接し方(全1記事)
リンクをコピー
記事をブックマーク
笹野翔太氏:それでは、「ChatGPT利用サービス開発でわかったAIとの接し方」というタイトルでLTをいたします。ファインディ株式会社で機械学習エンジニアをしています、笹野翔太と申します。よろしくお願いします。
まず簡単な経歴を紹介させていただければなと思うのですが、私は、新卒で食品メーカーに入社をした後、1度目の転職で客先常駐の機械学習エンジニアになり、そちらで自然言語モデルと戯れながら、2度目の転職で現職のファインディに入社をしました。
現在は、既存アルゴリズムの精度改善や新規技術開発を主に担当しています。
本題の前に、ChatGPTを活用して作ったサービスの紹介を少しさせてください。
「ChatGPTエンジニアキャリアまとめ(β)」という名前で、2023年3月6日にリリースしました。簡単にお伝えをすると、キャリアをChatGPTにまとめてもらい、さらにそれに二つ名が付くものです。
ちなみに、私の二つ名はスライドに書いてあるものです。
さて、ここから本題になりますが、本日は、先ほど紹介した、キャリアまとめを作るプロンプトができるまでに見つけたTipsについて、効いたプロンプト、効かなかったプロンプト、それぞれ3選ずつ選んできたのでそれについて話をしたいと思います。
ちょっと前後してしまって申し訳ありませんが、(スライドを示して)キャリアまとめの雰囲気はこんな感じで、項目が5つ分かれています。
この5つの項目で出力をするようにして、過去の職歴をはじめとする経歴情報や、これまでの技術力、あるいは外部発信の状況などの情報を基に要約をしています。
まず、この要約を得る上で効いたプロンプト3選から紹介をしたいと思います。
1つ目は、「人間側のイメージを前提として伝える」です。このように、例を出していますが、「いい感じに要約をしなさい」とただ命令をしても、さっぱりしすぎた要約や的外れな要約しか得られません。
(スライドを示して)このように、全体の文字数や出力形式を明確にすることで、人物紹介、経歴といったフォーマットで、それらしいものを書いてくれるようになります。
もしかすると、頻繁にChatGPTを触っている方はご存じのノウハウかなと思います。
2つ目、「人間がどう感じるのかを指定する」です。
先ほど同様、フォーマットに従って要約をさせた文章は、おもしろくない文章であることが多いかなと思います。
ここで言う「おもしろくない」とはどういうものかというと、読みごたえがなかったり、その人の経歴のすごさが伝わりにくい文章を指しています。
挙句の果てには、「この文章は経歴の文章なので、おもしろくするべきではありません」なんて答えが返ってくる始末です。ちょっと頭の固いAIだなと思うわけなんですけれども。
そこで、人間がどう感じるのかというところも付け加えた上で、あらためて「おもしろいものにしてください」と試してみると、意外や意外、人間が書いたような経歴のテイストに仕上げてくれるわけです。
このように、人間がどう感じるかを指定することで効率良く狙った出力を引き出すことができます。
3つ目ですね、「リクエストの2度投げ」です。
これは、プロンプトに対する工夫からは少し外れるのですが、プロンプトインジェクション対策という文脈でですね、防御文を貫通して変な語尾に変えられてしまうという問題が、こちらのサービスリリース直後にユーザーからのお問い合わせで発覚したのですが、その時に、どう対応するのかというところで悩んでいた時のものです。
初めは、このように1回のリクエストですべて対応させるプロンプトを考えていて、トークン数とのせめぎ合いなど、どうしたものかという思考だったのですが、その時は、このように私の経歴の語尾に「にゃん!」という、ちょっとポップな語尾が付くといったことがありました。
どうしても思い浮かばないので、ちょっと発想を変えて、リクエストを2つに分けたらうまくいくんじゃないか? ということで、試しに文章の校閲フェーズというものを要約の後に挟んでみました。
そうすると、このように「にゃん!」などの語尾の変更に対応できるようになりました。
この時は2回リクエストを投げているので、その分のコストが余計にかさんでしまいますが、「gpt-3.5-turbo」のAPIであれば、そんなにコストにはならないのかなと思います。
その分ちょっとレイテンシまでの速度は、遅くなってしまうと思いますが、ちょっと悩まれている方がいたら、試していただければと思います。
以上、効いたプロンプト3選ということで紹介いたしました。
続いて、効かなかったプロンプト3選を紹介をしていきます。
効かなかったプロンプト3選は、3つのジャンルを用意しました。「否定、強制、抽象」を用意しています。
1つ目、否定というジャンルに代表される、「ホニャララしないで」や「ホニャララはやめて」という命令です。
例えば「書き出しを挨拶で始めないでください」みたいな伝え方をすると、無事に「こんにちは!」と挨拶が付いてしまうわけです。守ってくれないんですね。
そこで、「何々しないで」とか「やめて」という伝え方をするのではなく、「書き出しの挨拶は要りません」という書き方にうまいこと言い変えたりすると、挨拶を書かないというハックがあります。
このように、うまく言い換えることで改善できるので、このへんはアンチパターンになるのかなと思っています。
続きまして、2つ目ですね。強制というジャンルに代表される「絶対」「必ず」などの命令です。
(スライドを示して)このように、「絶対に文章の中に名前を何回も入れるな!」と。「絶対だぞ!?」と「絶対」を何度書いてみても、まず守ってくれないです。このように、次の文章では名前が入っていませんが、その次の文章ではもう1度名前が入って、ちょっと気まぐれなAIとなってしまい、まぁ、守ってくれません。
先ほど同様に、「名前の書き出しは1回だけにしてください」と、具体性を持たせた上で少し言い回しを変えると、無事に名前は最初の1つだけ、最初の文章の先頭に1つだけ、と変えられるというハックです。
最後に、3つ目ですね。抽象というジャンルに代表される、「数値に対する抽象的な表現」を紹介します。
こちらの例のように、「コントリビューション数:12」と、「『GitHub』のコントリビューション数は大きければ大きいほどいいんだ! わかったな!?」という命令を投げたとします。
そうすると、「わかりました、笹野さんのコントリビューション数は12と、積極的に活動していますね」と言ってもらえます。
これ自体はうれしいのですが、このようにですね、12という数字を積極的に判断してほしくないケースにおいては、勝手に勘違いしてしまうので、これはよろしくありません。この目安となる表現を与えることで、その状況に合わせた解釈をしてほしいなというところになります。
この例のように、同じく「コントリビューション数が12」という数字を与えるわけですが、例えば「下限は0で上限はありませんが、こちら側で抱えているユーザーのデータは、平均ホニャララです」みたいな、閾値を与えてあげます。
このように、「決して活動的とは言い難いかもしれないけれど、今後に期待できそうです」みたいな言い回しに変えてもらえるハックです。
以上、合計6選の知見を紹介しました。このようなかたちで、目指した職務経歴サマリーを達成してきました。
そんな中、私はあることに気がつくわけです。「あれ? 人にお願いする時とちょっと似てない?」
取り組む前は、AIとの会話は、もっと無機質で、適当な文章を投げると適当な応答が返ってくると勝手に想像していました。
実際にやってみたら、目的と前提を明らかにした上でお願いをしないとうまく出力してくれなかったので、大変驚きました。
このように、AIとやり取りをしているはずなのに、まるで人間とやり取りをしているかのような感覚になり、「(自分の)ふだんの人とのやり取り、コミュニケーションは大丈夫かな?」と少し心配になる場面もありました。
ちなみに、今日お伝えしたTipsたちは、OpenAIをはじめとした各所で少しずつ言及されてきており、ある程度効果が認められるTipsになりそうなので、試してもらえればと思います。
最後、まとめとお気持ちというところです。「人間の理解とGPTの理解をすり合わせること」が、取り組む上では非常に重要だということがわかりました。むちゃ振りをしても、想定する答えは返ってこないし、人と接する時と同じように、心を通わせる必要があるんだなと感じました。
一方で、そうやって心を通わせるのが大事である上で、ChatGPTをはじめとするLLMというのは、あくまでツールなんだなということも再認識しました。
なんでもできるようで、まだ万能ではないんだなという部分と、使い方としてゴールが明確になっている用途の場合は、非常に強力なツールになり得るなと思うので、物は使いようではありませんが、目的を明確にすることが一番大事なのかなと感じました。
最後に、ノウハウが陳腐化する速度が非常に速いところにも驚いています。今日紹介したノウハウは、より高精度なプロンプトやより高精度なモデルの登場によって、その形を少しずつ変えそうだなと予想をなんとなくしています。
ほかの方の発表でもあったとおり、寝て起きたら世界が変わっているかもしれないという、情勢の変化もあるのですが、会社として、また私も含めて、そういった情勢の変化を楽しみながら、このLLMの行く末を見守っていければなと思っています。
ちょっとここからは少し宣伝をさせてもらえればなと思います。
今日話した内容を活かして、また機能をリリースしています。「次はAIとインタビューだ!」と勢いよく書いてあるのですが、AIとインタビューできるような機能を本日のお昼頃(※登壇当時)にリリースをしています。この後共有する資料で、リンクなどを掲載しておくので、ぜひみなさまご覧いただければなと思います。
ご清聴ありがとうございました。
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05