カテゴリー
技術

リクルートメールにGPT-3を使って自動返信する

転職エージェントや企業が送ってくる(スパムに近い)スカウトメールに対してOpenAI の GPT-3 API を使って自動応答をさせる方法を教えてくれるマット・ビリューさんのブログ記事がありました。

転職に興味が無いなら無視してもよいでしょうが、ビリューさんは3つの理由から返事はしたいと考えたそうです。

  1. それが礼儀正しいから
  2. 無視しても相手は何度もフォローアップのメールを送ってくるから
  3. いつか求職する時のために関係を維持することには興味があるから

2番はあるあるですね。リクルーター側も自動化されていると思いますが、〇日後、△日後に「先日メールを送りましたが、その後…」みたいなメールを送ってこられることはよくあります。

それで短文の「今は職を探してないけどあなたのことは覚えておくよ」的な返事をするのですが、これも手動は面倒なので、自動化したいと考えたそう。そして、一律の固定文面ではなく相手に応じたパーソナライズをしようとした時に、ルールベースでリクルーターの所属と名前を取り出すよりも、機械学習による処理を考えたと。

Python のソースコードが公開されているのですが、OpenAI の GPT-3 API を使って、相手の文面から企業名と相手の名前を抽出させ、返信のテンプレートにその社名と名前を埋め込んで返答を作っています。

メールがリクルートメールなのかその他の一般のメールなのかの分類はこのスクリプトでは行わず、メールサービスの方の機能で分類しフォルダに分けているようです。サンプルの環境変数ではFastmailの名前がありますね。これを IMAP でアクセスしフォルダ内のメールに自動応答をかけています。

スクリプト中ではサンプルのメール文面から”Apple”社の”Steve”さんを抜き出しています。OpenAI で実際にsummarize させてみると、ちゃんと取れてます。

英語のリクルートメールから送信者の名前と社名を抽出する on OpenAI の Playground

これは楽ですね。日本語だとどうなのかなと、適当な文面を作って(元ネタはいっぱいありますし)食わせると、これも取れるようです。

GPT-3 の話でよく見るのはテキストの自動生成だったので、こういう要素の抽出にも簡単に使えると知れたのは良かったです。

リクルートメールの方もどうせ自動化されまくっているので、この先はお互いが自動生成のメールを送りあって関係性を保つみたいなことになるのでしょうか。

[追記] Hacker Newsのトップにも出ました。