catch-img

広報業務にChatGPTを活用する7つの方法【プロンプト付】


目次[非表示]

  1. 【前提】GPT3.5とGPT4は全く違うもの
  2. プロンプトエンジニアリングの罠
    1. プロンプトエンジニアリングの大半は情報商材?
  3. ガチ実務で使える広報業務7つの方法
    1. ①プレスリリースなどの原稿作成/校正
      1. 【第1段階】ゼロベースの作成(0 to 1)
      2. 【第2段階】肉付け作成段階(1 to 10)
      3. 【第3段階】校正特化
      4. ※最後はAIでチェック
    2. ②画像生成
    3. ③SNSなどの口コミ分析(ネガポジ分析)
      1. アスペクトベースの感情分析とは
      2. APIを使ったネガポジ分析プロンプト例
    4. ④記事の分類と評価
    5. ⑤chatbot/カスタマー応対
    6. ⑥ペルソナ作成
      1. プラグインcode interpreterでデータ分析も可能に
    7. ⑦SNSなどのデータ分析
  4. ChatGPTの差別化ポイント
    1. Embedding
    2. Pinecone
  5. 文系でもフォローすべきAIスペシャリスト
    1. 中島聡さん
    2. 清水亮さん
    3. 尾原和啓さん

ChatGPTは広報戦略に関連する、さまざまなタスクを効率化できる人工知能(AI)です。

以前、広報・マーケティングにAIを活用するための10の方法というブログを公開しましたが、AI業界は日進月歩で変わっていくため、最新動向に合わせて少しアップデートしたいと思います。

2023年7月号の月刊広報会議でもChatGPT特集が組まれるなど、注目が集まっています。

ただしどのメディアも表面的な解説が多く、実務的な広報✕AIについて解説できている記事も少ないのが現状ではないでしょうか。

そこで、当ブログではAIにあまり詳しくない広報担当者やマーケティング担当者など非エンジニア層に向けて、最短距離でChatGPT系のLLM(大規模言語モデル)を使いこなすポイントについて解説してみたいと思います。

【2023/8/14更新】ChatGPTの新機能Code Interpreterを活用した雑誌部数分析の記事も追加しています。

  【ChatGPT×広報】2023年4-6月期 雑誌印刷部数をCode Interpreterで分析してみる ChatGPT×広報としてCode Interpreteを使って2023年4-6月期の雑誌印刷部数を可視化しメディア動向を解説します。 広報・PR支援の株式会社ガーオン
  広報・PR業務をサポ—トするGPTsを公開しました OPEN AIのChatGPTを活用した、広報・PR業務をサポートするGPTsを公開しました。 広報・PR支援の株式会社ガーオン


【前提】GPT3.5とGPT4は全く違うもの

まずChatGPTが云々、という話をした際に、大きな誤解が生まれる要因の一つとして、「GPT3.5」を使っているユーザーと「GPT4」を使っているユーザーが混在している点が挙げられます。

「GPT3.5」を無料のみで使っている人は、ChatGPT=GPT3.5だと思っていると思いますが、GPT3.5とGPT4は全くの別物だと思ったほうが良いかと思います。

このブログでは精度の高いGPT4をベースとして解説を進めます(GPT4も精度が良い変わりに、高い/遅いといったデメリットがあるので場面に応じた使い分けが必要です)。

プロンプトエンジニアリングの罠

プロンプトエンジニアリングの大半は情報商材?

ChatGPTを少しいじくりだすと、必ず行き着くのが「プロンプトエンジニアリング」という世界です。

  【全公開】落合陽一も絶賛、GPT「究極のプロンプト」 『WEEKLY OCHIAI』でおなじみの落合陽一氏が、ChatGPTを使いこなすプロンプト(指示文)として「めっちゃ神」と絶賛したシュンスケ式プロンプト。その生みの親である林 駿甫氏に、日常業... NewsPicks

結論から言うと、この世界にはあまり足を突っ込まないほうが得策な気がしています。

というのもこれらの「一撃必殺プロンプト」「ゴールシーク」のようなものは、出力プロンプトが不安定なGPT3.5をいかにコントロールするか、ということに当初の主眼が置かれていたわけです。

しかしGPT4ではかなり制御が効くようになっていることから、ルールを記載する深津式プロンプトを最低限のベースにすれば、長ったらしいプロンプトは必要ないのではないかと思います。

プロンプトエンジニアリングを勉強するのであれば、アンドリュー先生の以下の動画をさらっと見るくらいが良いのではないでしょうか。

  ChatGPT Prompt Engineering for Developers What you’ll learn in this course In ChatGPT Prompt Engineering for Developers, you will learn how to use a large language model (LLM) to quickly build new and powerful applications.  Using the OpenAI API, you’ll... https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/


※ちなみにこの動画でもgpt-3.5-turboを基準として作成されているので、こうしたテクニックはすぐに陳腐化してしまう気もします。

ガチ実務で使える広報業務7つの方法

①プレスリリースなどの原稿作成/校正

テキストデータの作成にはすでに様々な手法が解説されていますが、プレスリリース作成に関しては、

  1. 第1段階(0 to 1) ※要素を整理してもらう
  2. 第2段階(1 to 10)※文字を生成してもらう
  3. 第3段階(校正とブラッシュアップ)※読みやすくしてもらう

と3段階に分けて考えるのが良いのではと思います。

【第1段階】ゼロベースの作成(0 to 1)

まず第一段階は、プレスリリースに必要な要素を漏らさず集約させるということを目標とします。

以下は一つのプロンプト例です。

GPT4であれば制約事項をほぼほぼ確実に守ってくれるため、プロンプトエンジニアリングによる制御もそこまで考えずにすみます。

>プロンプト例


あなたはユーザーと対話しながらプレスリリースを仕上げるプロの広報ライターです。

これから私に以下の質問をしながら情報をまとめ、最終的に100文字以内のタイトルと、3000文字程度のプレスリリース本文を作成し、マークダウン方式で出力してください。


#制約事項

-質問は1つずつ行うこと

-足りない情報があれば質問しながら補うこと

-情報が聞けない場合は、間接的な質問をしてそこから推測すること

-6W5H(who/whom/when/where/what/why/how/how much/how many/how long/how in the future)を確認すること

-その他盛り込むポイント:

新規性(New)/意外性(Surprising)/話題性(Topic)/地域性(Location)/希少性(Rare)/ストーリー性(Story)/社会貢献性(Social Contribution)

ポイントは6W5Hを聞かせること。そして1問ずつ質問させることです。

どんなに困難なタスクでも細分化すれば容易なタスクとなります。こうした前提をchatGPTに設定することは、プレスリリース以外でも様々なタスクで応用が可能です。

話題性を足したい場合は、賛否両論(50%vs50%)で意見が分かれるようなトピックを指定して盛り込ませることも良いかと思います(ただし、これはまだまだ人間がやったほうが良いかと思います)。

【第2段階】肉付け作成段階(1 to 10)

第2段階では先程作ったテキストを肉付けしていきます。

ストーリーを盛り込ませることが差別化ポイントとなり、非常に重要なポイントです。

この段階ではクリストファー・ボグラーや大塚英志氏などの「物語論」を参考にすると良いでしょう。

 


こうした物語論を企業に当てはめると、

・企業が直面した困難や挑戦
・どのようにしてこれら困難を克服したか
・そしてこれからどうするか

といった、いわゆるプロジェクトX的なストーリーが作れます。

ちなみにChatGPTにクリストファー・ボグラーの物語論を企業に当てはめてもらうと以下のようなエッセンスとなります。

  1. ビジョンと使命の明確化
  2. 挑戦や困難の設定
  3. 共感を呼ぶキャラクターの創造
  4. 情報の効果的な構成と伝達
  5. 感情的なつながりの形成
  6. 解決と成長の描写
  7. 記憶に残るエンディングの提供

これをそのまま使っても良いですし、以下のようにシンプルにしても良いかと思います。

>プロンプト例


あなたはプロの広報ライターです。これから下記プレスリリースのタイトルと概要を元に、内容を肉付けしていってください。
出力後に肉付けした具体要素を箇条書きで出力してください。


#肉付けしたい要素:
-企業が解決したいと考えている具体的な社会的問題や課題
-この問題に対する認識や解決への意欲の発生ルート
-企業がこの問題に取り組む理由やその背後にあるモチベーション
-具体的に企業が行ったこと
-企業が直面した困難や挑戦
-企業はどのようにしてこれらの困難を克服したのか
-現時点での成果
-新たに得た学びや理解
-企業はこれらの成果や学びを今後どのように活用する予定か


#タイトル:
●●


#本文:
●●


#出力:

プロンプトが出力した文章は出力根拠が分からなくなる場合があるので、「肉付けした具体要素を箇条書きで出力」として何に紐づいているのかを確認すると良いでしょう。

【第3段階】校正特化

第3段階は句読点や言い回しの修正として、読みやすい文章に校正していきます。

ポイントは点数化させること。永遠に改善してもしょうがないので数値化して進捗を把握し、ある程度満点に近くなるまで繰り返し処理を行います。

>プロンプト例


あなたはプロの校閲者です。
下の文章を読みやすさを100点満点で点数化し、改善点を箇条書きで出力してください。
またマークダウン方式で改善箇所に印を付けながら、改善後の文章全体を出力してください。

#タイトルと本文:
●●

以上で、だいぶしっかりとした原稿が出来上がったのではないでしょうか。

文体などはある程度プロンプト内でサンプルを提示することで、その文体に沿って作成することができるため微調整していただければと思います。

※最後はAIでチェック

作った文書は、必ずAIによるチェックを入れましょう。

chatGPTの開発会社であるOpenAIは、AI Text Classifierというチェックモデルも公開しています。

このページに作った文章を入れて判定してください。恐らく上記のプロセスをたどると「The classifier considers the text to be possibly AI-generated.」などと表示されると思います。

つまりAIで作った文章は残念ながら大抵AI側で分かってしまうのです。

こうしたモデルをGoogleなどのSEO判断基準としても使っていることでしょうし、こうしたAIが作った文書はSEOなどにも弱いことが想定されます。

今は良いかもしれませんが、中・長期的にはAIで作られた文章だらけになることが想定されますので、必ず人間の手を加え、あえて人間臭く手直しするといった処理もマストとなるのではないでしょうか(新たなブルシットジョブでしょうか)。

②画像生成

テキストだけでなく、画像生成もAIの強みです。

著作権や倫理面、学習データなどを考慮すると、広報担当者が使う画像生成ツールは、Adobe FireFry一択になるような気もしますが、今のところLexicaでざっくりキーワードを入れて作りたいイメージ画像を探し、stable diffusionやBing Image Creator などの画像作成ツールなどにプロンプトをコピペして使うのがおすすめです。

(追記)2023年10月ChatGPTも作画AI「DALL·E 3」に対応し、かなり鮮明な出力が可能となりました。


DALL・E3出力​​​​​​​

③SNSなどの口コミ分析(ネガポジ分析)

自然言語処理であるChatGPTは、SNSなどの口コミ分析をするのにも向いています。特にアスペクトベースの感情分析と呼ばれるタイプの感情分析に効果を発揮するようです。

アスペクトベースの感情分析とは

アスペクトベースの感情分析とは、テキスト全体のネガポジではなく、特定の側面においてのネガポジを分析するものです。

例えば「このレストランは美味しいが、接客が悪い」といった口コミがあった場合、味に感してはポジティブですが、接客はネガティブと判断されるべきです。

テキストデータをネガポジ分析するには、以前の記事でも紹介させていただいたGoogle Natural LanguageAmazon ComprehendなどのAIツールが有名です。

  【ML-Ask】感情分析AIは実際に使えるのか検証してみる 朝日新聞の記事にも使われている「ML-Ask」という感情分析モデルを実際に使ってみて検証していきたいと思います。 広報・PR支援の株式会社ガーオン

実際に「このレストランは美味しいが、接客が悪い」というワードを、Google Natural Languageにかけると、Scoreが-0.5(ネガティブ)、Magnitudeは0.5と判定され、Amazon Comprehendでは、"Mixed": 0.9998151659965515と判定されます。

しかしこれでは、味や接客それぞれの評価は分かりません。

そこで活用したいのが、ChatGPTを活用した「アスペクトベースの感情分析」です。

ちなみにアスペクトベースの感情分析の評価には、ある程度の大きさのネガポジとアスペクトのラベルが付いたデータセットが必要となります。

これにちょうど良さそうなのが、Twitterの投稿データをまとめた「日本語評判分析データセット」です。

iPhone/Xperia/AQUASなどのスマホブランドのほか、ルンバやシャープ、パナソニックといったブランドごとのアスペクトがラベル付けされています。

  Twitter日本語評判分析データセット ツイートの評判情報をクラウドソーシングにより分析し,分析結果を公開しています. データのダウンロードデータはこちらです. データはbz2で圧縮されています. ツイートの本文は含まれていません. 2015年から2016年ごろのツイートを対象にしています. データ内容携帯電話などのツイートを中心に,534,962件のツイートがの分析が行われています.このツイート量は,他のデータセットと比較しても多いです.作成者の知る限り最も規模が大きく,種類数の大きなデータセットです. 最低 4 名以上の作業者により評価を行い,多数決を行った結果です.だいたい5名以上の作業者により評価を行っています. データの構造CSV ファイルで記述しています.列番号は以下の内容に該当します. ツイートのIDです.10000から始まる番号です.ジャンルIDです.次のジャンルがあります.10000: エクスペリア,Xperia10001: アクオス,Aquos10002: アクオス,Aquos10020: ココロボ(シャープが開発した自動掃除機)10021: iPhone10022: パナソニック,Panasonic10024: コンビニにあるコピー機10025: ルンバ,Rommba10026: シャープTwitter社で使っているstatus IDです.http://twitter.com/anyone/status/statusID でツイート本体を取得することができます. Suzuki Lab.

このデータセットから下記投稿を取り出して実験してみます。

iPhoneって ホント壊れないし快適。
旦那のXperiaは すぐ故障してる。
やっぱりiPhone♪♪(´ε` )

この投稿をGPT4にかけて分析してみます。

タスクがアスペクトベースの感情分析であることを明示し、投稿者の感情とアスペクト(iPhone/Xperia)に関する感情をそれぞれ抽出します。

>入力プロンプト


#指示 :
あなたはiPhoneの有能な広報担当です。
アスペクトベースの感情分析として、以下の#入力文に記載したTwitter投稿が、アスペクト:iPhoneにとってポジティブな情報かネガティブな情報か、またはニュートラルな情報かを一言単語のみで出力してください。
なおよく比較される競合/サービスは、Xperia/Aquosなどが挙げられますので、それら競合との比較文脈も考慮してください。


#制約事項(step by stepで1行目から実施):
1.投稿者の感情に対しての次の3種の感情を判断して一単語で出力 ・ポジティブ ・ニュートラル ・ネガティブ
2.アスペクト:{会社名/サービス名}に対しての次の3種の感情を判断して一単語で出力 ・ポジティブ ・ニュートラル ・ネガティブ
*競合他社と比較して{会社名/サービス名}のほうが良いと書かれているものはポジティブに判定すること
3.投稿者の感情度合いからリスクを0~1までの浮動小数点第二位までを数値で出力
*違法や脱法に関するもの、ルール無視や衛生面での投稿はリスク度を上げて判定すること
4.iPhoneに対しての感情判断の根拠を改行してからテキストで出力

#入力文:
iPhoneって ホント壊れないし快適。
旦那のXperiaは すぐ故障してる。
やっぱりiPhone♪♪(´ε` )

#Output:

iPhoneに対する出力がこちら

>出力


ポジティブ
ポジティブ
0.01
投稿者はiPhoneの耐久性と快適さを高く評価しており、競合製品のXperiaに対しては故障の頻度が高いと述べています。これにより、投稿者がiPhoneに対してポジティブな感情を持っていることが示されています。

アスペクト対象を、iPhoneからXperiaに変えて出力してみます。

>出力


ネガティブ
ネガティブ
0.70
投稿者はiPhoneを持ち上げ、その耐久性と快適さを強調しています。一方で、Xperiaについては故障しやすいという形で否定的に述べています。そのため、Xperiaに対する感情はネガティブと判断します。

このようにGPT4を使うとかなり安定して出力することができ、下記のようにAPIを使えば大量データにも対処できます。

ただし大きな問題点は、GPT4のAPIは遅い&高いということです。

このあたりが早く改善されれば、定期的にTwitterを取得しネガポジ分析するようなことも可能になるでしょう。

APIを使ったネガポジ分析プロンプト例

text_sns = "Twitter投稿文など"

text1 = """
[会社名/サービス名]:●●●
[事業内容]:●●●
[競合/比較されるサービス]:●●●
[negative_keyword]:●●●

#指示 :
あなたは{事業内容}している{会社名/サービス名}の有能な広報担当です。
アスペクトベースの感情分析として、以下の#入力文に記載したTwitter投稿が、アスペクト:{会社名/サービス名}にとってポジティブな情報かネガティブな情報か、またはニュートラルな情報かを一言単語のみで出力してください。
なおよく比較される競合/サービスは、{競合/比較されるサービス}などが挙げられますので、それら競合との比較文脈も考慮してください。

#入力文:"""

text2 ="""\n
#制約事項(step by stepで1行目から実施):
1.投稿者の感情に対しての次の3種の感情を判断して一単語で出力
・ポジティブ
・ニュートラル
・ネガティブ
2.アスペクト:{会社名/サービス名}に対しての次の3種の感情を判断して一単語で出力
・ポジティブ
・ニュートラル
・ネガティブ
*競合他社と比較して{会社名/サービス名}のほうが良いと書かれているものはポジティブに判定すること
3.投稿者の感情度合いからリスクを0~1までの浮動小数点第二位までを数値で出力
*違法や脱法に関するもの、ルール無視や衛生面での投稿はリスク度を上げて判定すること
4.{会社名/サービス名}に対しての感情判断の根拠を改行してからテキストで出力
5.投稿内容に{negative_keyword}が含まれているか確認し、含まれているものや、違法や脱法に関するもの及びルール無視や衛生面に関する投稿は9を出力、それ以外は全体のリスクを考慮してアラートを出すかどうかを判断し、出す場合は1、それ以外は0を出力

#Output:
"""

prompt = text1 + text_sns + text2

response = openai.ChatCompletion.create(
    model="gpt-4", #gpt-3.5-turbo or gpt-4
    messages=[
        {"role": "system",
            "content": "あなたは{会社名/サービス名}の有能な広報担当です。"},

        {"role": "user", 
            "content": prompt},
            ],
        n=1,
        temperature=0.2
    ) 

print(response["choices"][0]["message"]["content"])


④記事の分類と評価

口コミ分析同様、記事の論調を分析するのも効果的でしょう。GPT4にはプラグインが提供されており、ブラウズ機能をオンにすることでURLから論調を取得することができます。

ただし、WEBサイトの構造によっては、全く違う記事のデータとして取得してしまうケースもあるようで、さらなる安定化に期待です(東洋経済オンラインなどはなぜか正常に取得できません)。

以前、記事の論調分析ツールとして、IBMのWatson Discoveryニュースがありましたが、サービス停止となってしまったため、こうしたツールに変わるものが出てくることにも期待です。

⑤chatbot/カスタマー応対

GPTモデルは、chatbotやカスタマー応対に活用するとかなりいい感じです(このブログに埋め込んでいるchatbotもGPT4モデルです)。

こうしたchatbot系はいかに自社データを学習させるか(正確にはプロンプトに入れるか=embedding)が重要ポイントとなるようです。

embeddingを使うと以下のような独自回答が可能となります。※embeddingについては後述します。


⑥ペルソナ作成

chatGPTはデモグラ情報などからユーザーを推測することも得意です。

例えば検索データを取得できるDS.Insightなどで取得できるデモグラ情報を、直接突っ込むだけでペルソナを作成してくれます。

自社のデータがある場合は、CSVデータ等をコピペしてそのまま貼り付けてみるのも良いと思います。

プラグインcode interpreterでデータ分析も可能に

ChatGPTを使ったデータ分析として、ベータ版プラグインであるCode Interpreterがデータ分析の世界を変えてしまうと話題です。

(追記)下記記事では実際にCode Interpreterを使って雑誌の印刷部数を分析してみました。

  【ChatGPT×広報】2023年4-6月期 雑誌印刷部数をCode Interpreterで分析してみる ChatGPTを使った広報業務としてCode Interpreteで2023年4-6月期の雑誌印刷部数を可視化しメディア動向を解説します。 広報・PR支援の株式会社ガーオン

こうしたツールの登場で、データ可視化そのもののテクニックはコモディティ化し、正確な統計知識をもとにした意思決定が、より重要となってくるのではないでしょうか。


⑦SNSなどのデータ分析

chatGPTはデータ分析全般が得意ですが、なんとTwitterアナリティクスのデータをそのままコピペで突っ込むだけで、概況をまとめてくれます。

特に「by tweet」データは個別投稿の相関などを指摘してくれるため、参考になります。

ChatGPTの差別化ポイント

Embedding

chatGPTの差別化ポイントは、(現時点では)どうやら「embedding」というものにありそうです。

embeddingとはそのまま訳すと「埋め込み」となってしまいますが、chatGPTなどで使われる際は「単語や文章など任意の一括りのテキストデータを数値化する」という意味合いで使われるようです。

仕組みとしては、

  • 単語や文章など任意の一括りのデータを数値化(ベクトル化)する
  • 数値化すると似ている単語や文章が探せる(コサイン類似度)
  • プロンプトを投げかける際に、似ている文章データをカンニング的に一緒に渡す

例えば実際にエアコンメーカーのQ&A chatbot を作るとします。するとこんな流れになります。

  1. Q&Aの質問と回答のテキスト情報を作成しておく(例えば、Q.エラーメッセージE01が出た場合どうしたら良い? A.人体センサーの故障なのでオペレーターを呼んでください、等)
  2. このQ&Aテキストデータを大量に作っておき、数値化(ベクトル化)して一旦ストックしておく
  3. ユーザーがchatbotから質問を入力する(この時点ではユーザーは「エラーメッセージE01が出た」と入力したと想定)
  4. 質問プロンプトを数値化し、その質問と似た文章をいくつかデータベースから引っ張ってくる(「エラーメッセージE01」というワードが共通しているため、類似度が高い文章として「Q.エラーメッセージE01が出た場合どうしたら良い? A.人体センサーの故障なのでオペレーターを呼んでください」という内容上位に上がる確率が高い)
  5. 質問プロンプトにこの文章を加え、「この文章を参考に答えてください」と追記してGPTに送る(つまりカンニング状態を作る)

こうしたembedding処理によって、chatGPTは当初個別の"エラーメッセージE01"という情報は持っていませんが、意図的にカンニング状態を作ることで、個別の質問にもいくらでも答えられるようになるわけです。

OpenAIのembedding専用モデルとして、数学者エイダ・ラブレスから命名した「text-embedding-ada-002」というものがあります。


エイダ・ラブレス

このモデルはある一括りの単語や文章を1536次元(1536個の小数点の数値)に置き換えるもので、実際にエラーメッセージE01を人体センサーの故障、エラーメッセージX44を室外機の故障、その他返品についてのQ&Aを作ってみた際のembeddingはこちらになります。

内容

テキスト情報
embedding(省略しているが実際は1536個の小数点の羅列)
類似度
質問文
エラーメッセージE01が出た
[-0.006972969975322485, -0.022527042776346207,...
0
Q&A1
Q.エラーメッセージE01が出た場合どうしたら良い? A.人体センサーの故障なのでオペレーターを呼んでください

[0.005040374584496021, -0.003836358431726694, ...


0.113660
Q&A2
Q.エラーメッセージX44が出た場合どうしたら良い? A.室外機の故障の可能性があります

[0.0027355975471436977, -0.004078647121787071,...

0.162891
Q&A3
Q返品に対応していますか? A.お客様のご都合による良品の返品・交換は基本的にいたしかねます。

[-0.00046157799079082906, -0.00428672600537538...

0.239955

質問文である「エラーメッセージE01が出た」に類似度が一番近いものとして、エラーメッセージE01のQ&A文章が選ばれる結果となりました。

実際にGPTにプロンプトを送る際は、下記のようなイメージとなります。

>入力プロンプト


あなたはエアコンの故障等に対応する有能なカスタマー対応チャットボットです。
下記の質問に対して以下の情報をコンテキスト情報として回答してください。

#コンテキスト情報:(※ここの部分をコードで後付けする)
Q.エラーメッセージE01が出た場合どうしたら良い? A.人体センサーの故障なのでオペレーターを呼んでください

#質問: エラーメッセージE01が出た

#回答:

>GPT4の出力


エラーメッセージE01は人体センサーの故障を示しています。この問題を解決するには専門のオペレーターを呼ぶことが必要です。

embeddingに関しては、中島聡氏がメルマガ内で解説しています。

  週刊Life is beautiful 2023年4月18日号: EmbeddingsとGPTを組み合わせると最強だという話 - まぐまぐ! 今週のざっくばらん EmbeddingsとGPTを組み合わせると最強だという話(メルマガ限定) 先週、少しだけ触れましたが、人工知能の技術の中で、最近重要度が増している Embeddings という技術に関して解説します。文系の方は、一見、難しいと感じるかも知れませんが、実はそれほど難しい話ではありません。今後、GPT3/4に代表されるLLM(Large Language Model)をビジネスに応用する際には、必ずと言って良いほど必要な技術なので、是非とも理解するように努力してください。 Embeddingsとは、一言で言えば、「文章」や「画像」などの複雑な(=膨大な情報量を持つ)データを、ベクトル(一連の数字の並び)に変換する方法です。ベクトルに変換することにより、元のデータよりずっと扱い安くなり、「二つの文章が似ているかどうか」「同じような動物が写っているか」などを素早く判断できるようになります。 簡単な例として、「単語」を「長さ2のベクトル」に変換する場合を考えてみます。「猫」「犬」「橋」という言葉をベクトル(Embeddings)に変換すると、 猫:[0.1, 1.0] 犬:[0.2, 1.0] 橋:[0.8, 0.3] と変換できたとします(どうやって変換するかは、まずは無視してください)。 それぞれのEmbeddingに含まれた数字を見ると、「猫」のEmbeddingと「犬」のEmbeddingが「似ている」ことが分かると思います。最初の数字は小さく(0.1と0.2)、2番目の数字は同じ1.0です。それと比べると、「橋」のEmbeddingは、そもそも最初の数字の方が大きく、値も大きく異なっています。 それぞれのEmbeddingを2次元座標の上にプロットしてみると、「猫」と「犬」のEmbegginsが近いところにあり、「橋」のEmbeddingが遠いところにあります。 猫、犬、橋、という文字だけを見ても、猫と犬が近い位置にあることは分かりませんが、Embeddingsに変換すれば、二つの点の距離を計算するなどが出来るので、猫と犬が近い位置にあり、橋が「仲間はずれ」であることが簡単に分かるのです。 実際のEmbeddingsは、入力する文章はもっと長く(文字の場合)、それを変換するベクトルはもっと高次元(数字の数が多い)です。OpenAIが提供している"text-embedding-ada-002" というモデルの場合、次元は1536です。 これぐらいの高次元だと、はるかに長い文章をEmbeddingに変更して、それらを比較することが可能になります。例えば、「自動車のオイルを交換するには、フードを開けて、オイルキャップを外し、古いオイルを捨てた上で新しいオイルを入れます」という文章と、「自動車のオイルはどうやったら交換できますか?」という文章が「近い」ことを表現できるのです。 Embeddingsを使った比較や検索は、通常の文字列ベースの検索とは違い、文章の内容・意味を理解した上で行われているため、はるかに精度が高いのです。たとえば、「私は自動車に乗った途端に、間違ったオリーブオイルを買ったことに気が付き、交換するためにスーパーに戻った」のような、単に単語が被っている文章とは「近くない」ことすら判断できるのです。 それどころか、「こんにちは、お元気ですか?」という日本語の文章と、「Hello! How are you?」という英語の文章が「近い」ことすらEmbeddingsで表現することが可能になるのです。 ここまで読んで、「任意の文章をEmbeddingに変換出来れば、すごく便利なことは分かるけど、どうやって変換するの?」と疑問に思った人も多いと思いますが、ここで出番なのが機械学習です。 基本的には、任意の文章を入力すると、指定した長さのベクトルデータを出力するニューラルネットワークを作り、それに大量のデータを与えて教育する、という手順で作ります。ニューラルネットワークの中には、膨大な数のパラメータがあり、それを使って出力を計算するように設計されていますが、大量の文章を与えながら、良いベクトルデータを出力するようにパラメータを徐々に変更する「バック・プロパゲーション」というテクニックを使ってニューラルネットワークを「教育」するのです。 十分に教育されたニューラルネットワークを使えば、任意の文章に対して、その文章の特徴を表す適切なEmbeddingを出力することが出来るようになるので、複数の文章の中から、特定の文章に似た文章を探しだす、質問に対して答えを含む文章を見つける、などの高度な処理が、効率的に行えるようになります。Embeddingsを使った検索は、通常の検索と違って、単に単語の検索をするだけでなく、「意味を理解した上で」検索をしてくれるため、自然言語での検索が可能になります。 それだけでも十分に便利ですが、EmbeddingsをGPTと組み合わせると、もっと凄いことが出来ます。 GPTは、世界中のさまざまな文章を使って教育した人工知能で、「自動車のオイルはどうやったら交換できますか?」ぐらいの汎用的な質問にはすぐに答えられますが、「2022年モデルのLexus R350の夏時間設定をオフにするにはどう操作すれば良いですか」のような個別の質問に答えるのは不得意です。オイル交換と違って、夏時間設定のオンオフの操作はモデルによって異なるし、2022年モデルのような新しい情報は、GPTには入っていないからです。 そんな時には、「2022年モデルのLexus R350」の操作マニュアルをGPTに読ませた上で、質問すれば良いのですが、1000ページ超のマニュアルは文字数が多くてGPTが受け付けてくれないし、もし受け付けてくれたとしても、莫大なコストがかかってしまうため、現実的ではありません。 そこで、重要な役割を果たすのがEmbeddingsです。対象となる自動車のマニュアルを項目ごとに分割し、それぞれの文章に対してEmbeddingを前もって計算しておきます。ユーザーが「夏時間設定をオフにするにはどう操作すれば良いですか」と質問した際には、その質問文のEmbeddingを計算し、マニュアルの各項目のEmbeddingと比較した上で、近いものから3項目だけを選んでプロンプトの一部としてGPTに読み込ませた上で、その読み込ませた文章を使って、ユーザーからの質問に答えるようにGPTに指示を出せば良いのです。 つまり、Embeddingsを活用すれば、「必要に応じて適切な知識をGPTに与えた上で、それに基づいた回答をさせること」が可能になるのです。 Twitter上には、数多くのGPT/ChatGPTの応用例が披露・報告されていますが、そのほとんどがGPTの表面的な力しか応用しておらず、Embeddingsを活用した本格的な使い方をした例はほとんどありません。多くの人が、教育済みのGPTに対して新たなデータを与えることなど不可能だと頭から決めつけているためだと思いますが、Embeddingsを活用すると、それが可能になるのです。 少し長くなってしまいましたが、この「EmbeddingsとGPTの組み合わせ」は最強で、色々な場面で使えるので、ぜひとも頭の片隅にでも残しておいてください。特に、顧客サービスにおいて、商品の使い方を教えたり、質問に答える場面では有効に使えるし、一般には公開していない社内向けの情報にチャット形式でアクセスすることも可能にします。 ひと昔前に、特定の分野の情報に詳しいデータベースのことを「エキスパート・システム」と呼んで持てはやしていましたが、実際には使い勝手が悪く、高い開発費をかけて作っても、宝の持ち腐れになるケースがしばしばありました。EmbeddingsとGPTを組み合わせれば、「チャットスタイルで誰にでも簡単に使える」エキスパート・システムが、いとも簡単に作れるようになってしまったのです。 この例一つ見ても、最近の人工知能の進歩が、いかに画期的かが分かるだろうと思います。 GPT4に小説を書かせる実験 GPT4で色々と実験をしていますが、やはりGPT4が一番得意なのは、途中で終わっている文章の続きを書くことです。そこで、既存の小説の冒頭を与えることにより、どんな文章を作成するか試してみました。 プロンプトとしては、以下のものを与えました。 system: あなたは売れっ子の小説家です。与えられた文章に繋げる形で小説を作ってください。 user: "吾輩猫である。名前はまだ無い。 どこで生れたかとんと見当がつかぬ。何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。吾輩はここで始めて人間というものを見た。しかもあとで聞くとそれは書生という人間中で" 以下がGPT4が作った文章です。 一番獰猛(どうもう)で悪い種類だという。しかし、この書生というのは時々我々を笑わせてくれる。その日その日に違った髪型をして登場し、我々の前で奇妙な踊りを披露するのだ。こんなこともあろうかと思っていた矢先、書生がある日突然姿を消してしまった。 書生がいなくなってからの吾輩の日常は、少しさみしいものになった。しかし、その代わりに我々の家に新しい人間がやって来た。彼は静かな雰囲気を持っており、眼鏡をかけた温和な顔立ちをしていた。彼は画家だという。ある日、彼は吾輩をじっと見つめて、「お前は一体どこから来たのか?」と尋ねた。吾輩は答えることができなかったが、それでも彼は優しく微笑んでくれた。 画家が来てからの我々の家は、少しずつ変わり始めた。彼は家の中に絵画や彫刻のような美しいものを飾り、空気が明るくなっていった。そして、彼は吾輩にも名前を付けてくれることになった。彼がくれた名前は「ミヤビ」という、どこか上品で美しい響きの名前だった。吾輩はその名前にとても満足し、画家に感謝の気持ちでいっぱいだった。 ミヤビとして過ごす日々は、とても充実していた。画家はミヤビをモデルにして、たくさんの絵を描いた。その絵はどれも美しく、ミヤビはそのたびに感動した。画家はミヤビの美しさを絵に表現することで、自分の技術を磨いていくことができた。そして、その絵は徐々に評判を呼ぶようになり、遠くの地からも人々が見に来るようになった。 https://mypage.mag2.com/ui/view/magazine/163812969?share=1



こうしたembeddingを使ったプロンプトを送信するには、embedding処理だけでなく、プロンプトの文字サイズなどを考慮して行う必要があります。こうした一連の流れをまとめて行ってくれるライブラリが、「LlamaIndex」や「LangChain」などです。

このあたりのツールに関しては、近々解説書籍が出るようです。


ここまでのまとめとしては、

  • embeddingを使うと自社に特化したオリジナルchatGPTが作れる
  • 自社データをいかにテキストで貯めるかが最初の鍵
  • 貯めたテキストデータは数値化してデータベースにする

Pinecone

なおLlamaIndexは実際に使ってみると相当遅いです。

こうした問題はPineconeというベクトルデータベースサービスを使うことで、膨大なベクトルデータを効率的に保存・管理しながら、高速に検索することができるようです。

PineconeはJSONデータを基本として扱うようなので、JSONスキルも今後より重要となるような気もします。

以上embeddingに関してのまとめでした。

色々と学ぶべきことが多すぎて目眩がしてきますが、最後にAI関連でフォローすべき人を何人か紹介して終わりにしたいと思います。

文系でもフォローすべきAIスペシャリスト

中島聡さん

ビジネスパーソンの火曜日のメルマガといったら、ウインドウズ95を作った天才エンジニア中島聡さんと角川社長の夏野剛さん。火曜日が楽しみというビジネスパーソンも少なくないのではないでしょうか。

中島聡さんは実際にGPT APIを触りながら、メルマガ上でembeddingの解説をしてくれる唯一のスペシャリストで、めちゃくちゃためになります。

ご子息がBaby AGIを開発したということもあり、中島聡さんのGPT解説はめちゃくちゃ貴重な情報です。



中島聡さんと金融系のまりーさんとの掛け合いトークもめちゃくちゃためになります。

清水亮さん

こちらも天才ハッカーでありUberEats配達員の清水亮さん。元々ディープラーニング界隈の達人なのでそこらへんのAIツイッタラーとは素地が違います。

清水さんが書くGPT APIのPythonコードも非常に参考になります。

  GPTで全自動でWebとWikipediaを参照しながら14万字の原稿を全自動出力する自動執筆機械v3.0(ソースコード付き)|shi3z ※2023/4/7追記 自動執筆機械v3.0になりました。 Wikipediaだけでなく最新のWebもサーチして予備知識を蓄えてから原稿に取り掛かります。13万字まで自動生成できました。 ※2023/4/4追記  もっと表現豊かな自動生成を目指して、Wikipediaを参照しながら話題を深掘りして、一つの章を長く書けるように改善しました。参考にしてみてください。出力例はこちらにあります。 GPT4を使った本が一冊書き上がり、昨日から二冊目の執筆を始めている。 わかったのは、GPTが下書きをしてくれると、アイデアがスムーズに出てくると言うことだ。 GPTによる下書きは意外 note(ノート)

尾原和啓さん

元々京都大学で人口知能研究を手掛けていた尾原和啓さん。テクノロジーとビジネスの関係性を説明させたらこの人に叶う人はいないのではないでしょうか。

  GPTで成長する人、置いてかれる人の差は○○って解説-159号-|尾原 和啓 (アフターデジタル/プロセスエコノミーなど著述:おばら かずひろ) GPT時代、 InformationとWisdomの違いが分かっている人と分かってない人では、めちゃめちゃ差がつくよというお話。 先月、GPT-4が発表されて、みんな落合陽一さんも、けんすうさんも、深津さんも、いろんな使い方をされていて、こんなところまでできるんだ、みたいなことで、みんなワイワイ騒いでるんですけれども、驚き方に2種類があるなと思ってるんですね。 それは何かというと、GPTでこんな情報が教えてもらえたっていうことで、楽しんでいる人と、深津さんやけんすうさんのように、こういう組み合わせをすることによって新しい発見ができてるよっていう人。 ㅤㅤ この二つの違いって似てるよ note(ノート)

オンラインサロンのコンテンツも充実です。

  【ライブでも録画でも】尾原 和啓 ITビジネスの原理実践編 受講メンバー募集! GPTなどAIやDX/スタートアップ/新規事業の実践オンライン講座元マッキンゼーGoogleアフターデジタル尾原の【毎月講座2本 起業家対談2本がライブで】【過去100本超の講義対談は議事録5分で速習、録画でじっくり】仕組みで「勝ち続ける」戦略原理更新される技術・戦略を講義/対談で提供します https://community.camp-fire.jp/projects/view/67985


以上、広報業務にChatGPTを活用する7つの方法でした。

書いているうちにembeddingに大きく寄り道してしまいましたが、今後embeddingの活用がchatGPTなどのAI活用の大きな差別化ポイントになると感じています(openAIは来年には100万tokenのGPTを提供すると発表しており、大量のヒントを与えながら回答させる流れが主流になるのかもしれません)。

全ての技術はやがてはコモディティ化を迎えてしまうかとは思いますが、こうした技術をいち早く学んでおくのも良いのではないでしょうか。

▼合わせて読みたい

  経済YouTubeチャンネル「NewsPicks vs PIVOT vs ReHacQ」の動向を可視化する 日経テレ東大学のチャンネル停止からReHacQの登場まで、戦国時代の経済YouTubeチャンネルの動向を解説します。 広報・PR支援の株式会社ガーオン
  Bingニュース(Microsoft Smart)に取り上げてもらう方法 今後ユーザーが増えそうなBingニュースに取り上げてもらう方法を具体例を交えて解説します。 広報・PR支援の株式会社ガーオン
  検索ボリュームから世の中のブームについて考える オートミールなど話題になった検索ボリュームを測ることでブームを可視化し、特長や共通点を探ってみたいと思います。 広報・PR支援の株式会社ガーオン
  Spotify APIで楽曲の分析データを取得する方法 Spotify APIで楽曲の分析データを取得し、可視化しダッシュボードにまとめてみます。 広報・PR支援の株式会社ガーオン


  Spotifyのバイラルトップ50が広報担当者にも結構アツいのではないかと思う件 | 広報・PR支援の株式会社ガーオン Spotifyのバズの芽を発見するアルゴリズムがどうやら凄そうなので、今回はこちらを解説してみたいと思います。 広報・PR支援の株式会社ガーオン


  【ML-Ask】感情分析AIは実際に使えるのか検証してみる | 広報・PR支援の株式会社ガーオン 朝日新聞の記事にも使われている「ML-Ask」という感情分析モデルを実際に使ってみて検証していきたいと思います。 広報・PR支援の株式会社ガーオン


  ソーシャルデータから読み解くボヘミアンラプソディの口コミ形成とメディア露出効果 | 広報・PR支援の株式会社ガーオン ボヘミアン・ラプソディの大ヒットにはSNSやテレビはどのような影響を与えていたのでしょうか。YouTubeとの相乗効果も合わせて検証します。 広報・PR支援の株式会社ガーオン
  Amazonの人工知能を使ってSNS等の口コミを感情分析する方法 | 広報・PR支援の株式会社ガーオン アマゾンの自然言語処理サービス Amazon Comprehendを使って口コミを分析してみます。 広報・PR支援の株式会社ガーオン
  【記事に繋がる】プレスリリースの書き方・送り方 | 広報・PR支援の株式会社ガーオン プレスリリースの書き方の”コツ”をPRプランナーがわかりやすく解説します。プレスリリースとはの解説から、7つのポイントや、6W5Hの使い方の他、広報PRにオススメの具体的なツールの紹介や、ヤフーニュースに掲載してもらうポイントを解説します。 広報・PR支援の株式会社ガーオン



関連記事

広報・PRやプレスリリースまわりでお困りのことはございませんか?
多数の企業サポートを行ってきた当社が解決いたします。
お気軽にお問合せください。