2023 年 7月 10 日
ChatGPTで高精度に翻訳する方法【コピペOK】
高い自然言語処理能力と幅広いタスクを実行できる高い汎用性から注目を集めつつあるChatGPT。正しく活用すれば、限られた時間でより多くの翻訳作業を効率的にこなすことができます。
例えば、文体の指定や用語の統一が簡単に行え、翻訳結果をより自然で丁寧なものに仕上げることができます。
この記事では、ChatGPTを使った翻訳の具体的な方法と、活用する際のポイントについて詳しくご紹介します。
【目次】
- ChatGPTで翻訳する時のポイント
- 【実践編】ChatGPTで翻訳とチェック
- ChatGPTの翻訳とチェックまとめ
- ChatGPTを使う上での注意点
- 無料版と有料版の違い
- 生成された訳文は必ずチェックしよう
ChatGPTで翻訳する時のポイント
翻訳に限らず、ChatGPTに何かをお願いする際のポイントは入力する指示文です。これを「プロンプト」と呼びます。DAIR.AIが運営する『Prompt Engineering Guide』というウェブサイトでは、プロンプト(指示文)を作る一般的なTipsが公開されています。
プロンプト(指示文)を最適化するうえで重要なポイントは、「指示をできるだけ具体的にすること」と「出力例を提示すること」です。指示を具体化させるには、関連する背景情報を与えたり、実行する手順を明確にすることが有効です。また、ChatGPTに出力してほしい情報や形式を明示するために出力の例を与えることも有効な手法です。
例えば、翻訳の指示をするときは、「そのドキュメントの種類や特徴は何か」「想定する読者は誰か」という背景情報を与えることで、より質の良い訳文が期待できます。また、プロンプト内に見出しをつけることで原文や指示文を明確にわけるような細やかな工夫も大切です。
スタイルの指定する方法
ChatGPTでは文体スタイルの指定が簡単にできます。
従来の機械翻訳システムでも文体を調整することは可能でしたが、専用のサービスを使用する必要があるほか、場合によっては機械学習やプログラミング言語に関する知識が必要でした。ChatGPTを使えば、自然言語(人間の言語)で明確に文体を指示することができます。
例えば、スタイルの指定の一例として、以下のような原文に対して、4つの表記ルールを守った訳文を出力するように指示してみました。
原文 This computer is broken. A graphical user interface (GUI) is a type of user interface through which users interact with electronic devices via visual indicator representations. John Smith works as a developer at Yaraku Inc. |
表記ルール
- カタカナ語の語尾の長音は省略する。
- 3語以上の長いカタカナ複合語は半角スペースで区切る。
- 人名では姓と名の間に半角のスペースを入れる。
- 丸括弧は全角を使用する。
実際にChatGPTに指示した文章は以下の通りです。どの箇所が原文で、どの箇所が表記ルールにあたるのかを明確にするために、「#原文」や「#表記ルール」のように見出しを付けて該当箇所を指定しています。このように指示した結果、ChatGPTは指示した表記ルールをすべて守った英訳文を出力してくれました。
【プロンプト】
#原文 にある英文を日本語に翻訳してください。訳文の表記は #表記ルール に書かれた指示に従ってください。
#表記ルール
- カタカナ語の語尾の長音は省略する。
- 3語以上の長いカタカナ複合語は半角スペースで区切る。
- 人名では姓と名の間に半角のスペースを入れる。
- 丸括弧は全角を使用する。
#原文
This computer is broken.
A graphical user interface (GUI) is a type of user interface through which users interact with electronic devices via visual indicator representations.
John Smith works as a developer at Yaraku Inc.
【ChatGPT-4.0の出力】
このコンピュータは壊れています。
グラフィカル ユーザ インターフェース(GUI)は、ユーザが視覚的な指示物によって電子機器と対話するためのユーザ インターフェースの一種です。
ジョン スミスは、ヤラク株式会社で開発者として働いています。
一方、既存の自動翻訳では、敬体(です・ます調)と常体(だ・である体)を指定することは可能ですが、それ以上の細かいスタイルの指定は現状困難です。実際の自動翻訳の訳文を見てみると、先ほどの表記ルールと合致していないところがたくさんあり、これを使用しようとすると修正の手間がかかってしまいます。
英語の丁寧さを指定する方法
英文メールを書く場合などは相手との関係性や文化の違いによってカジュアルな表現とかしこまった表現を使い分ける必要があります。このような丁寧さに関わる表現は英語のネイティブでない人にとっては感覚で身につけるのは少し難しいものです。しかし、ChatGPTをうまく使えば、英文の丁寧さを調整することができます。例えば、以下の日本語のビジネスメールを海外の取引先に送る場面を想定してみましょう。
原文 スミス様 申し訳ありませんが、今週の金曜日午後のお打ち合わせをリスケできますか。 ご迷惑をおかけして申し訳ございません。 よろしくお願いいたします。 山田太郎 |
この日本語の文章をChatGPTを使って英訳するには以下のことを指示します。
- 原文の日本語を英訳する
- 生成した英訳をカジュアルな表現と丁寧な表現に変更する
実際のChatGPTへの指示文は以下の通りになります。見出しを作って原文を明確にするほか、手順を明示することでより正確な出力がされるように意識しました。
【プロンプト】
以下の手順で翻訳と添削をしてください。
1.
#原文 にある日本語はビジネスメールに使用する予定の文章です。この日本語の文章を英語に翻訳してください。
2.
翻訳で生成した英訳文を3回添削してください。1回目はカジュアルな表現に、2回目はより少し丁寧な表現に、3回目は最も丁寧な表現に添削してください。
#原文
スミス様
申し訳ありませんが、今週の金曜日午後のお打ち合わせをリスケできますか。
ご迷惑をおかけして申し訳ございません。
よろしくお願いいたします。
山田太郎
【ChatGPT-4.0の出力】
まず、ご指定の文章を英語に翻訳します。
#翻訳
Dear Mr. Smith,
I apologize for any inconvenience, but would it be possible to reschedule our meeting this Friday afternoon? I am truly sorry for any trouble caused. Thank you for your understanding.
Best regards,
Taro Yamada
以下にそれぞれの添削を行います。
#添削1 - カジュアルな表現
Hey Smith,
Sorry for the hassle, but can we move our meeting from this Friday afternoon? Really sorry for the trouble. Thanks for your understanding.
Cheers,
Taro
#添削2 - 丁寧な表現
Dear Mr. Smith,
I sincerely apologize for any inconvenience, but might we consider rescheduling our meeting this Friday afternoon? I truly regret any disruption this may cause. Thank you so much for your understanding.
Kind regards,
Taro Yamada
#添削3 - 最も丁寧な表現
Esteemed Mr. Smith,
Please accept my deepest apologies for any potential inconvenience, but might I request the consideration of rescheduling our meeting this Friday afternoon? I profoundly regret any disturbances this may cause to your schedule. Your understanding in this matter is highly appreciated.
With utmost respect,
Taro Yamada
このように指示したことで、ChatGPTは英訳を出力した後、その英訳をカジュアルな表現、ある程度丁寧な表現、最も丁寧な表現に調整したものを出力してくれました。これらの英訳では、特に誤訳も見うけられず、それぞれの丁寧さと合致した表現が使われています。
例えば、原文の「リスケできますか」はカジュアルな表現として ”can we move (our meeting)” が使用されていますが、添削2と3の英文ではかしこまった表現である “might we consider rescheduling” と “might I request the consideration of rescheduling” が使用されています。
誤訳を見つける方法
ChatGPTに翻訳させるだけでなく、すでにある訳文の誤訳や訳抜けがないか確認させる(品質評価)という使い方もあります。これには、ChatGPTに原文、訳文、指示文を与えます。
例えば、日本語のニュース記事を英語に翻訳する場面を想定してみてください。以下の日本語文を機械翻訳にかけて生成された英訳に誤訳が無いかをチェックします。
原文 「お客さまをはじめ、このクルマに関わるさまざまな人々に安全と安心をお届けすることが目標」というモビリティカンパニーの礎ともいえる伝統がスタートした。 機械翻訳文 The goal of the Mobility Company is to deliver safety and peace of mind to customers and other people involved vehicle. This is the foundation of the Mobility Company. |
よく見ると、生成された機械翻訳文では「伝統がスタートした」という原文の意味が抜け落ちています。訳文を公開するにはこのような誤訳を特定・修正する必要がありますが、チェックするにはどうしても時間がかかってしまいます。
特に訳抜けは原文と機械翻訳文を注意深く読み込まなければ気づきにくいものです。
そこで、時間短縮のために、ChatGPTに誤訳の有無をチェックしてもらいます。実際に作成したプロンプトは以下の通りです。
【プロンプト】
以下の訳文に誤訳があった場合、該当する箇所、誤訳と判断した理由、修正案の3つを教えてください。 誤訳とは、「原文の意味が訳文に適切に反映されていない場合」を指します。
原文:「お客さまをはじめ、このクルマに関わるさまざまな人々に安全と安心をお届けすることが目標」というモビリティカンパニーの礎ともいえる伝統がスタートした。
訳文:The goal of the Mobility Company is to deliver safety and peace of mind to customers and other people involved vehicle. This is the foundation of the Mobility Company.
【ChatGPT-4.0の出力】
誤訳の箇所:「This is the foundation of the Mobility Company.」
誤訳と判断した理由:「伝統がスタートした」という原文の部分が訳文では「This is the foundation of the Mobility Company.」と訳されていますが、これは「これがモビリティカンパニーの礎である」という意味になります。つまり、「伝統がスタートした」という原文の意味が適切に反映されていません。
修正案:The goal of delivering safety and peace of mind to customers and various people involved with this car, which can be described as the foundation of the Mobility Company, has started.
誤訳が生じた箇所、誤訳と判断した理由、修正案の3つを出力するように、指示文を作成してみました。すると、先ほどのように、「伝統がスタートした」の訳抜けがあることをChatGPTは指摘してくれました。惜しいことに、修正案でも「伝統」の意味が抜けてしまっていますが、誤訳と判断した箇所は正しいため、修正すべき箇所の特定が容易になります。
様々な言語タスクをこなせるChatGPT。翻訳業務にはどのように活用できるでしょうか。ここまではChatGPTでできる翻訳のタスクを紹介し、プロンプトの例を紹介しました。
ここからは、実際にChatGPTを活用して翻訳する様子をレポートします。
【実践編】ChatGPTで翻訳とチェック
今回翻訳をするのは以下のような英語の新聞記事です。
Killer nurse receives four life sentences
Hospital nurse Colin Norris was imprisoned for life today for the killing of four of his patients. 32 year old Norris from Glasgow killed the four women in 2002 by giving them large amounts of sleeping medicine. Yesterday, he was found guilty of four counts of murder following a long trial. He was given four life sentences, one for each of the killings. He will have to serve at least 30 years. Police officer Chris Gregg said that Norris had been acting strangely around the hospital. Only the awareness of other hospital staff put a stop to him and to the killings. The police have learned that the motive for the killings was that Norris disliked working with old people. All of his victims were old weak women with heart problems. All of them could be considered a burden to hospital staff."
(出典:『The Independant』 2008年3月4日)
これを日本語に訳して、日本人向けメディアでニュース記事として公開することを想定してみましょう。
記事として一般的な表記は常体(である体)なので、これから作る和訳も常体にしたいです。
また、記事はそれぞれのメディア独自の表記ルールに沿った文章である必要があります。例えば、今回は以下のような表記ルールがあると想定してみます。
- アラビア数字は半角表記にする(ただし1桁の数字は全角表記)
- 人名や地名などはカタカナ表記にし、括弧書きで英語表記を後ろに追記する
これから作成する訳文も上記の表記ルールに従った形で作成します。また、当然ながら、原文の情報を過不足なく読者に伝えることも重要です。
翻訳の手順
ChatGPTを使った翻訳には様々な手順がありますが、今回は以下のような手順で行います。
- 訳文を作成する
- 訳文の表記を整える
- 誤訳を確認・修正する
プロンプトの工夫次第ですべての手順を一度に行うことも可能ですが、今回はわかりやすさを優先するため、3つのステップにわけます。
誤訳を修正するタスクはChatGPTの精度がまだまだ不安定であるため、適切なレベルの翻訳力を持った人によるチェックが不可欠であることに注意です。
また、今回使用するバージョンはGPT-4で、カスタム指示の設定はしません。
①訳文を作成する
まずは、英語の新聞記事を日本語に翻訳するためのプロンプトを作成しましょう。さまざまなプロンプトが考えられますが、まずはシンプルに「翻訳してほしい」とだけ指示してみます。
出典:ChatGPT(https://chat.openai.com/)
そうすると、日本語訳を返してくれました。しかし、文体が敬体(です・ます体)となっており、記事として使用するには少し修正が必要]です。
次にもう少し具体的なプロンプトを作って翻訳してみましょう。先日発売された書籍『ChatGPT翻訳術(山田優, 2023)』にならって、翻訳の目的と対象読者を指定するプロンプトを投げてみます。
プロンプト:
次の【原文】の英語の文章を日本語に翻訳してください。
翻訳するときに以下の条件を満たしてください。
翻訳の目的:英語で書かれた新聞記事を日本人の読者にも伝えるため
対象読者:新聞記事の日本人読者
出典:ChatGPT(https://chat.openai.com/)
目的と読者を教えてあげることで、より記事に近い文章に変わりました。敬体が常体になったうえ、最初の見出しが体言止めに変わり見出しっぽくなったと思います。
②訳文の表記を整える
次に、訳文を表記ルールにそった文章にするため、もう少し修正を加えてみます。
生成した日本語訳をChatGPTに与えて、表記ルールを守った文章に書き換えてもらうように指示してみましょう。
プロンプト:
【訳文】の文章を以下の表記ルールに従って書き換えてください。
・1桁の数字は全角、2桁以上は半角にすること
・人名や地名はカタカナで表記し、後ろに英語表記を括弧書きでつけること
出典:ChatGPT(https://chat.openai.com/)
人名や地名の表記はルールに従って書き換えてくれました。しかし、2桁以上の数字も全角表記になってしまっています。そのため、再度修正してもらうようにお願いしてみました。
プロンプト:
「2桁以上の数字は半角にすること」という表記ルールが守られていません。修正してください。
出典:ChatGPT(https://chat.openai.com/)
そうすると、最初に指定したルール通りに修正してくれました。これで表記ルールにそった訳文を作ることができました。
③誤訳を確認・修正する
最後に、訳文に誤訳がないかを確認します。以前紹介したプロンプトを使って、ChatGPTに誤訳と思われる箇所を指摘してもらいましょう。
プロンプト:
以下の【訳文】に誤訳があった場合、該当する箇所、誤訳と判断した理由、修正案の3つを教えてください。 誤訳とは、「原文の意味が訳文に適切に反映されていない場合」を指します。
出典:ChatGPT(https://chat.openai.com/)
すると3つの誤訳箇所を指摘してくれました。一つずつ内容を確認します。
- 「看護師に4件の終身刑」が不完全な文であるという指摘ですが、これは誤りです。これは見出しであることから体言止めにすることは問題ないはずです
- 「32歳のノリスは、2002年にグラスゴー(Glasgow)出身で」は「ノリスが2002年にグラスゴー出身である」という意味に取れるという指摘ですが、これは正しいです。「2002年に」の係り受け先を明確にするため、語順を変更する必要がありそうです。ChatGPTの提案通り、「32歳のグラスゴー出身のノリスは、2002年に(略)殺害した」という順序に変更したほうがよいでしょう
- 「他の病院スタッフの注意深さが彼とその殺人行為を止めることとなった。」について、“awareness”の訳が「注意深さ」だとニュアンスが違うという指摘については、これは正しいと言えます。文脈的に“awareness”の意味は「病院スタッフが注意深く監視していた」というよりも「スタッフが(犯行に)気づいた」の方が近いからです。
このように、ChatGPTはいくつか適切な指摘をしてくれました。しかし、記事として公開するには他にも改善する点があります。例えば、以下のようなポイントです。
- “Killer nurse receives four life sentences”の“killer(殺人を犯した)”の意味が抜けています
- 「彼は」が繰り返し使用されているため、翻訳調すぎます。より日本語らしくするには、「彼」を「コリン・ノリス」や「男」に変える、主語を省略するなどの工夫ができます
- 「負担と見なされていた」と断定的になっています。原文は“could be considered”となっているので「見なされていたといえる」など婉曲的な表現が適切です
- 直訳調になっている箇所が複数箇所見られます。例えば、“The police have learned that”が「警察は(略)と知った」とありますが、「警察の調べにより判明した」などに言い換える必要があります
これらの修正を加えた結果、最終版の日本語記事が完成しました。ChatGPTが指摘した箇所以外にも修正点が多くあったため、誤訳が無いか自分自身でも確認することを心掛けた方が良さそうです。
看護師に4件の終身刑
病院の看護師コリン・ノリス(Colin Norris)は、患者4人を殺害した罪で本日終身刑となった。グラスゴー(Glasgow)出身の32歳のノリスは、2002年に4人の女性に大量の睡眠薬を投与して殺害した。昨日、長期間にわたる裁判の末、4件の殺人で有罪となった。ノリスには殺害のそれぞれに対して終身刑が言い渡され、最低30年の服役となった。警察官クリス・グレッグ(Chris Gregg)は、ノリスが病院内で奇妙な行動をしていたと証言した。病院スタッフによる目撃が唯一の手がかりとなり、ノリスの殺人行為の阻止につながった。警察の調べでは、殺人の動機はノリスが高齢者との仕事を嫌っていたことであるという。被害者は心臓疾患のある無力な高齢の女性たちであり、病院スタッフにとって負担と見なされていたのかもしれない。
「『The Independant』 2008年3月4日」の日本語訳
ChatGPTで翻訳とチェックまとめ
この記事ではChatGPTを使って実際に新聞記事を翻訳してみました。ChatGPTは非常に便利なツールであり、特に表記ルールに合わせた文章作成が得意なようです。一方、誤訳を特定するようなタスクは精度がそこまで高くなく、まだ間違いを起こしやすいです。そのため、ChatGPTが言うことすべてを鵜呑みにするのではなく、情報を精査し正誤を見極めることを怠ってはいけません。
ChatGPTを使う上での注意点
Google翻訳などの無料で使用できる機械翻訳システムと同じく、ChatGPTでもユーザーが入力したデータはモデルの学習に二次利用されます。
(参照:生成AIツールの業務利用とセキュリティリスクについて)
また、ChatGPTの場合は、有料プランのユーザーが入力するデータも二次利用の対象になっています。そのため、ChatGPTで社外秘の情報を扱う際は注意が必要です。データの二次利用を避けるためには、「オプトアウト(データの二次利用の禁止)」の設定が必要です。
出典:ChatGPT(https://chat.openai.com/)
この設定をするには、ChatGPTの画面左下の「Settings」から「Data controls」タブ内の「Chat history & training」をオフにします。オプトアウトの設定をすることで、入力したデータがモデルの学習に利用されることはありません。
ただし、この設定はブラウザや端末間で共有されないため、いつもと違う環境でChatGPTを使用する際はその都度設定を確認することをおすすめします。
無料版と有料版の違い
無料版と有料版で一番の違いは使用できるChatGPTのモデルが異なることです。無料版ではGPT-3.5というモデルを、有料版ではGPT-3.5に加えてGPT-4.0というモデルを使用できます。有料版でのみ使用できるGPT-4.0は旧バージョンであるGPT-3.5よりも多くの自然言語処理タスクにおいて高い性能を持つと報告されています。
翻訳においても、訳文の品質が良いという研究結果があります。また、GPT-4.0ではテキストだけでなく写真や画像も処理できることから視覚情報を活用した翻訳ができるかもしれません。
また、2023年3月から有料版でβ版のプラグイン機能が使えるようになりました。プラグインを使うことで、ChatGPTの機能を拡張することができます。例えば、画像、グラフ、コードの自動生成が可能です。ただし、データの二次利用を禁止するオプトアウトの設定をしていると、β版の機能は使用できないため注意が必要です。
生成された訳文は必ずチェックしよう
ChatGPTは確かに高性能ですが、常に正確な回答をしてくれるわけではありません。特に、プロンプト(指示文)が曖昧だったり、出力例が与えられていない場合は、生成された訳文が期待したものにならないこともあります。特に、ChatGPTの仕組み上、言語として自然な表現は得意ではあるものの、原文にあった情報が訳文で抜けることもあるため注意が必要です。
機械翻訳の訳文をチェックをする際は、チェックに便利な機能が搭載された翻訳支援ツールを活用しましょう。
ChatGPTを翻訳エンジンとして搭載
ヤラクゼンは訳文をチェックする際に便利な機能があります。
例えば、単語をハイライトすることで意味を検索できる辞書機能や類似する過去の訳文を検索できる機能(フレーズ検索)があるほか、訳抜け(原文の情報の漏れ)や固有名詞をハイライトする機能があります。また、プロの翻訳者にチェックを外注できるシステムも搭載されているため、英語に自信がない方やチェックする時間が取れない方にもおすすめの翻訳支援ツールです。
AI自動翻訳プラットフォーム「ヤラクゼン」は、ChatGPTを翻訳エンジンとして標準搭載しています。機械翻訳研究者が作成したプロンプトを基に翻訳が自動で開始されるので、面倒なプロンプトの入力の手間を省きます。ChatGPT以外にも複数の翻訳エンジンを搭載しており、翻訳結果の比較にも役立ちます。
ぜひ一度「ヤラクゼン」をご利用ください。法人の方限定で、「カンパニープラン」を2週間無料でご利用いただけます。
※トライアル終了後に自動で有料に切り替わることはございません。
この記事の執筆者:Yusuke
八楽株式会社でカスタマーサポートを行う傍ら、機械翻訳の研究に励んでいる。ブログでは、翻訳業務や機械翻訳・ChatGPTに関する情報を発信中。