ちょっとした英会話や英語表現が知りたくなった時に、Notionに日本語を入力することでChatGPTと連携して英語表現を教えてもらう仕組みを作りました。Notion、ChatGPT、Makeの3つのサービスを組み合わせることで実現していて、ほぼ無料で利用可能です。英語学習にはもちろん、応用することで様々な使い方を行うことが可能です。
きっかけ
最近英語をもっと使えるようになりたいと考えており、日常の中で英語を使ってみようと決意しました。しかし、思ったよりも英語での表現方法が分からず、まずはそこの学び直しが必要だと思いました。
英語表現集のような本も見てみましたが、実際に自分が使いたい表現がそのまま載っていることも多くないので、それであれば自分で作ればいいのでは?と考え、Notionに蓄積する方法にたどり着きました。
自分だけの英語表現帳のようなものを作ることができるので、後で見返して勉強することが可能なので、かなり重宝しています。
前提
上記で「ほぼ無料」と説明しましたが、正確にはOpenAI APIの利用料金が発生します。ただし、APIの利用料金は数十回実行してやっと1円程度なので、ほとんど料金のことは気にする必要はありません。
ただしクレジットカードの登録などが必要になるので、それらを踏まえて導入したいと考えている方はぜひお試しください。
やったこと
今回作成したオートメーションの簡単な流れは下記の通りです。
- Notionのデータベースに日本語を入力する
- ChatGPTで日本語を英語に変換
- 変換された英語がNotionに書き込まれる
仕組み自体はシンプルですが、複数ツールにまたがる処理となるので、設定は少し複雑になってしまいます。
これくらいであればNotion AIを使えば簡単に利用できそうですが、Notion AIは月額8ドルの有料プランに登録しないと利用することができず、ChatGPTを利用すれば数円程度で済ませることができるので、金銭面でのメリットがあります。
また、今回のような英語表現に関する利用用途であればどちらでも問題ないかもしれませんが、今後さらに精度が高いAIツールが登場した場合でもAPIの向き先を変えるだけでサービスを乗り換えることができるので、柔軟に対応できるという点も大きいかもしれません。
もちろん日本語を英語にするだけでなく、プロンプト次第で使い方は自由自在なので、ChatGPTを使ってNotionでの作業を自動化したいと考えている人にはおすすめだと思います。
準備
Notionでの準備
- データベースの作成(プロパティは下記の通りです。)
- Japanese(日本語を入力するプロパティ)
- English(英語を出力するプロパティ)
- created_at(作成日時を表示するプロパティ。無くても問題ありませんが、あった方が分かりやすいです。)
- Notionのインテグレーションの作成
- データベースにインテグレーションの権限を付与
- NotionのデータベースのIDを取得
インテグレーションの作成と権限の付与はここでは割愛していますが、Web上ですぐに情報が見つかると思います。データベースのIDは、ブラウザでNotionデータベースを開いた際のURLの文字列となっています。
Makeのアカウント作成
Makeはノーコードで利用できるオートーメーションツールです。複数のツールを連携させることで、様々な自動化を実現することができます。無料プランだと実行回数に制限がありますが、一定程度であれば無料プランの中で問題なく利用することができます。
https://www.make.com/にアクセスして、アカウントを作成しましょう。後ほどMake上での設定を進めるので、一旦アカウントの作成が完了していればOKです。
ChatGPT(OpenAI API)の準備
今回はMake経由でOpenAI APIを叩いて結果を取得するため、OpenAIのAPIキーを取得する必要があります。2025年現在、OpenAI APIは無料枠が用意されていないため、クレジットカードを登録して有料で利用する形となります。ただし、GPT 4o-miniなどのモデルを利用すれば100回利用しても数円程度くらいしか料金が発生しないので、ほぼ無料で利用することができます。
OpenAIのページからアカウントを作成し、APIキーの作成を行ってください。
Make上でのオートメーションの設定
準備が完了したら、いよいよMake上でシナリオの作成を行います。今回作成するオートメーションの大まかな流れは下記のとおりです。
- Notionに日本語を入力する
- Notion側での変更をMakeで検知
- 変更が検知されたらOpenAI API経由でGPTを使って英語表現を出力
- 出力結果をMakeからNotionに書き込む
Send Notion items to ChatGPT and update your database with the resultsというテンプレートがあるので、これを元に設定を行いたいと思います。上記のURLへアクセスして、Get this templateから進み、Create new scenario from templateを選択してください。
すると上記の画像のようなページが表示されるので、この中で設定を進めていきます。
Step1. Notionでデータベースの設定
Notionで作成したインテグレーションのSecretを設定し、接続を完了させます。
また対象となるデータベースのIDを指定します。先ほどメモをしておいたNotionのデータベースのIDを設定してください。
また、今回は定期実行で処理を行っているため何分おきに処理を走らせるかの設定も行います。デフォルトは15分となっていますが、無料プランの場合は月間のオペレーションの上限が1,000回となっており、あまり頻度が高いと上限に達して利用できなくなってしまいます。
最大でも1時間に1回にしておけば、制限内で利用しやすくなりますが、頻度によってはそれでも上限に達してしまうため、利用量を見ながら調整するといいでしょう。
Step2. ChatGPTとの連携設定
Step2では、OpenAIのAPIキーを設定した上で、
- モデルは
gpt-4o-mini
を選択 - Roleは
User
を選択 - Text Contentにプロンプトを入力
この時、プロンプトの末尾には {{1.properties_value.Japanese[]:plain_text}}
と入力していて、これによってNotionのデータベースから取得した日本語テキストをプロンプトに挿入することができています。
Japanese
の所はプロパティの名称となっているので、異なるプロパティ名を設定している場合は適宣変更してください。
プロンプトの内容は下記の通りなので、出力が気に入らない場合は追加したり削除したりして試してみてください。
## 依頼内容
- 下記の{日本語}を英語に直してください。
- 余計なテキストは出力せず、箇条書きで英語表現を出力すること
- 最低1つ、最大3つの英語表現を出力すること
## 日本語
{{1.properties_value.Japanese[].plain_text}}
Step3. Notionに書き込むための設定
最後に、ChatGPTから返ってきたレスポンスの内容をNotionデータベースに書き込む処理です。
ここでのポイントは下記のとおりです。
- Database Item IDはStep.1で指定したIDを設定
- データベースの
English
プロパティにレスポンスを書き込むように設定
Step.4 シナリオの実行
実際にシナリオを実行した結果は下記の通り。
正しく設定できていれば、Notionのデータベースに新しいレコードを追加して、Japaneseプロパティに日本語を入力し、Makeのシナリオを実行すると、Englishプロパティに英語が書き込まれるはずです。
エラーが発生した場合は、Make上でエラー内容が確認できるので修正しましょう。
さらに便利にするカスタム方法
Webhookでトリガーする
Notionの有料プランを利用している場合、データベースオートメーション機能を利用して、レコードが追加された際にWebhookを叩いてMakeのシナリオを実行することが可能です。
この場合、Notionにレコードを追加するとリアルタイムで英語表現が更新されるので、知りたい時にすぐに使えて利便性が向上すると思います。
iPhoneのショートカットアプリから登録する
iPhoneのショートカットアプリからNotionにレコードを追加することが可能で、これを使うことでスマホからワンステップでNotionにレコードを追加することが可能です。今回紹介したChatGPTとの連携も組み合わせれれば、iPhoneのショートカットからNotionにレコードを追加し、自動でChatGPTで処理を行い、NotionのプロパティにChatGPTの出力結果を記入することができるので、アイデア次第でできることの幅はかなり広いのではないかと思います。
ショートカットとNotionの連携方法は下記のページで詳しくご紹介しているので、気になる方はチェックしてみてください。
ChatGPTで音声化する
Notionのデータベースに英語表現が蓄積されるので、それをChatGPTに渡すことで音声化して、リスニングに活用することも可能です。ChatGPT上で再生することも可能ですが、音声ファイルとしてダウンロードすることもできるようなので、時間がある時に試してみたいと思います。