ChatGPTで音声付の英会話フレーズ集つくってAnkiデッキにしてみた
みなさん、ChatGPT触ってますか!
私は特にAPIが公開されて以降、新しいオモチャを買ってもらった子どもみたいにキャッキャしています。
今回は、ChatGPTの出力をもとに英会話フレーズ集(※音声付)をつくってAnkiデッキにしてみました。
ChatGPTと協力した作成過程をまとめたので、ぜひ最後までご覧ください。
少しでも楽しさが伝わればうれしいです。
成果物
Ankiデッキ
ChatGPTが作成したネイティブがよく使う英語フレーズ100選
日英フレーズ、日英例文、それぞれの英語音声
要は暗記カードですが、毎日『今日自分が復習しないといけないカード』を自動で勉強できる優れもの。オリジナルの単語帳デッキも作れるし、デッキを公開してみんなが自由に使うこともできる。めちゃくちゃ便利な語学学習ツールです。
達成したいこと
ChatGPTを英語学習に役立てたい
どうやって実現する?
・ChatGPTにネイティブがよく使う会話表現をリストアップしてもらう
・ChatGPTが作成したリストをもとにAnkiデッキを作成する
音声ファイルも付けたらもっとよくなりそう
作成手順
ここから具体的な手順に入ります!思いついたら即行動!ChatGPTと協力してがんばっていきましょう!
プロンプトを考える
まずはプロンプトを考えるところから。何はなくてもこれがないとはじまりません。いろいろな情報をもとに今回作成したプロンプトがこちら。
あなたは有能な英会話講師です。
私の英語スキルを向上させるためにお手伝いしてください。
#指示
英語表現を10個表形式でまとめてください。
その際、以下の制約に従ってください。
#制約
・日常生活で使用できるもの
・ネイティブの使用頻度が高いもの
・使った相手に英語上級者だと思われるもの
・出力形式は下記に従った表形式
英語表現|英語表現の日本語訳|英語表現を使用した例文|例文の日本語訳
Chat-GPTに出力してもらう
出来上がったプロンプトを渡して、さっそくChatGPTに出力してもらいましょう。初回の出力はこんな感じ。
なんだかよさげな感じですね。この調子で100個までじゃんじゃんアウトプットしてもらいましょう。
大きな出力だと途中で止まってしまうため、追加で10個ずつ作成を依頼しました。
次に、アウトプットをどんどんExcelにまとめていきます。小分けにして出力しているためか、何個かフレーズの重複が見つかったので削除。
最終的にフレーズが100個のリストが完成しました。
ここまで本当にあっという間。すごい。
最後に、ファイルの種類をCSV UTF-8(コンマ区切り)にして保存しておきます。
今回はアウトプットに対して精査までは行っていませんが、試しに見慣れないフレーズを何個か調べてみました。
ちゃんとネイティブが使う英会話表現として紹介されていました。コンテンツとしての価値は担保されてそうですね。これでリストは完成です。
このままAnkiの共有デッキ作成作業に入ってもよかったのですが……文字の例文だけだとちょっと物足りないですよね。やはり今どきの単語帳には音声もセットでないと。Ankiのポテンシャルを引き出すためにも、音声は個人的に必須です。
では、どうするか考えていきましょう。そういえば、Pythonでテキストをもとに音声を自動生成することってできたよな、と思いいたり、さっそくChatGPTに聞いてみました。
テキストから音声生成する方法をChat-GPTに聞く
とりあえず元になるリストはすでにあるので、まずCSVのリストをPythonで読み込む方法を聞いてみました。
import csv
with open('example.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
コードも教えてもらったので、なんとかなりそうですね。
・CSVを読み込みたい
・音声ファイル化対象になる列だけ保持したい
・読み込んだ列のテキストから英語の音声を作成したい
・音声には連番付の名前をつけてmp3形式で保存したい
そのあとは段階的にやりたいことを伝えていって、その都度コードを修正してもらいました。やりたいことと実装されたコードがかみ合ってわかりやすい。最終的には下記のようなコードになりました。
import csv
from gtts import gTTS
import os
with open('chat-gpt_list.csv', 'r', encoding='utf-8-sig') as file:
reader = csv.reader(file)
column1 = [row[0] for row in reader]
print(column1)
# 音声ファイルを保存するフォルダを指定
output_folder = 'フレーズ'
# フォルダが存在しない場合は作成する
if not os.path.exists(output_folder):
os.makedirs(output_folder)
# 各要素から音声ファイルを生成して保存する
for i, text in enumerate(column1):
tts = gTTS(text, lang='en')
filename = os.path.join(output_folder, f"Chat-GPT_01_フレーズ_{i+1}.mp3")
tts.save(filename)
実行すると、あっという間に音声化されてmp3ファイルが作成されました。これをフレーズと例文の2回分やって、音声ファイルの完成です。
音声ファイルをAnkiのメディアフォルダに移動
音声ファイルをAnkiで再生するためには、「collection.media」という名前の専用フォルダに入れる必要があります。
PCにAnkiを入れていれば自動で作成されるフォルダなので、各自探してください。Windowsの場合だと下記にありました。
C:\Users\ユーザー名\AppData\Roaming\Anki2\ユーザー 1\collection.media
作成した音声ファイルを一括でこのフォルダ内に入れればOKです。
出力リストに音声ファイル名列作成
次に、出力リストに音声ファイル名を記載する列を追記します。
[sound:ファイル名.mp3]
上記の形式で指定してあげれば、Ankiが「collection.media」フォルダ内の中にある音声ファイルを自動で再生してくれます。
デッキ作成
ここからはAnkiの作業に入ります。出力リストをインポートするための新規デッキを作成しましょう。
『ChatGPTの英会話必須フレーズ集 Vol.1』
今回はこの名前で新規作成しました。
ノートタイプ作成
『基本_Chat-GPT』という名前でノートタイプを作成します。デッキに入れるカードのテンプレートみたいなものです。デフォルトのノートタイプをコピーして、今回のリストの内容にあわせてちょっとだけ調整します。
ここまできたらあと一息です。最後の仕上げに入りましょう。
出力リストインポート
ファイルを読み込むから出力リストを指定します。
ノートタイプとデッキは先ほど作ったものを使用。
ファイルの列とフィールドが合致するように、フィールドの割り当てを変更します。
読み込みを押して、インポートが成功すれば完了です!
デッキの学習を開始すると、さっそく勉強をはじめられます。やったー!
自分で作るとなると何かと面倒なAnkiのデッキ作成作業ですが、ChatGPTと協力すれば爆速で完成しましたね。
今回は英会話フレーズ集をつくってもらいましたが、プロンプトを変えればいろいろな単語集が無限に生成できそうです。(※内容の正確性はおいておいて)
感想
自分がやりたいことが実現できて、とても満足しています。ChatGPTに出力をもらって、それを語学学習に役立てられる成果物に仕上げられたのが私的に高評価ポイント。
今回一緒に作業を進めてみて、ChatGPTは最強の教師役であり、サポーターであると実感しました。とりあえずなんでも聞けるのがいいです。「これできるかな?」に対してすぐに答えてくれるので、「じゃあやってみよう!」「できた!」「やったー!」となる一連の流れが最高に楽しいです。自分の能力よりちょっと高度なことができるようになる感覚。大人になってからでも感じられるのはうれしいですね。
こうも楽しいと、自然とアウトプットとして情報発信したくなります。いま世界中で起きていることだと思いますが、長年ROM専だった私もまんまとこのnoteを書いている状況です。いやはや、仕事以外でこんなに長い文章久しぶりに書いたな。みなさんのアウトプットも楽しみです。わくわく!!
最後まで読んでいただきありがとうございました。これからもいろいろ試行錯誤していきます!ChatGPT最高〜!
この記事が気に入ったらサポートをしてみませんか?