有料 API

DeepL APIでglossaryを作成して翻訳結果を指定する #Node.js

DeepL APIで翻訳を行う際に、glossary(グロッサリー・グローサリー)を指定することで、翻訳結果をカスタマイズすることができます。例えば今回のコードでは、`Hello`という単語を`ハロー`という単語に置き換えるように指定しています。

Shou Arisaka
1 分で読める
2024年8月21日

DeepL APIで翻訳を行う際に、glossary(グロッサリー・グローサリー)を指定することで、翻訳結果をカスタマイズすることができます。

これにより、特定の単語を翻訳しないようにしたり、特定の単語を特定の単語に置き換えるようにしたりすることができます。

例えば今回のコードでは、Helloという単語をハローという単語に置き換えるように指定しています。

これにより、通常はDeepL APIで翻訳を行った場合にはHello, world!という文がこんにちは、世界!という文に翻訳されるのですが、glossaryを指定した場合にはハロー、世界!という文に翻訳されるようになります。

glossaryを利用したNode.jsプログラムの例

以下のプログラムでは、translator.createGlossary()でglossaryを作成し、translator.translateText()で作成されたglossaryを指定して翻訳を行っています。

なお、Node.jsパッケージは"deepl-node": "^1.13.0"となります。

以下、コードとその出力結果です。

  • Node.jsプログラムのコード
(async () => {

  const resNormal = await translator.translateText(`Hello, world!`, 'en', 'ja');

  console.log("glossaryを指定しない場合の翻訳結果:");
  console.log(resNormal.text);

  const pairs = {
    source: "Hello",
    target: "ハロー",
  }

  // Create a glossary

 __| |____________________________________________| |__
(__   ____________________________________________   __)
   | |                                            | |
   | |                                            | |
                 [購読で表示されます] 
   | |                                            | |
 __| |____________________________________________| |__
(__   ____________________________________________   __)
   | |                                            | |

  const res = await translator.translateText(`Hello, world!`, 'en', 'ja', { glossary, });
  
  console.log("glossaryを指定した場合の翻訳結果:");
  console.log(res.text);
  • 出力結果
glossaryを指定しない場合の翻訳結果:
こんにちは、世界よ!
glossaryを指定した場合の翻訳結果:
ハロー、世界よ!

以上です。

DeepL APIを利用した翻訳のご依頼も承ります

  • DeepL APIを活用したアプリやツールの開発
  • DeepL APIを使ったテキストデータやExcel・スプレッドシート等ドキュメントの一括翻訳
  • 他、DeepL APIや翻訳に関わらない開発やデータ処理のご依頼

他、DeepL APIの利用に関するご相談やトラブル解決支援もリモートデスクトップ等にて承ります。

費用は一律で3000円/30分となります。(繁忙期にはご対応の難しい場合がありますため、事前のご予約やご相談をお願いいたします。)

この記事をシェア

Shou Arisaka 2024年8月21日

🔗 リンクをコピー