適当な英文を直してくれる「Grammar correction」をいろいろな文章で試してみた – 日本一詳しいOpenAI入門

Microsoft Ignite 2021の基調講演で発表された「Azure OpenAI Service」。公式ページにある通り OpenAI  でOpenAI APIを発行してもらったのでExpamplesにある49個のアプリから「Grammar correction」をPythonから実行して試行錯誤します。

OpenAIのExpamplesにあるGrammar correctionとは

公式の説明では「Corrects sentences into standard English.」とあり、“適当な英文を標準的な英語に修正”となります。文法を気にせずニュアンスで書いた英文を正しくしてくれるものです。

公式のタグでは「Transformation」と「Generation」の2つが付与されています。

プログラムを見るとエンジンは「Davinci」となっております。

サンプルコードでは最初に「Original: She no went to the market.」とあり、まず間違えた英語を入力すると正しく直してくれるようです。

早速使ってみた

公式にあるコードを参考に、好きな文章を入れられるように str という変数に会話を入れて実行できるようにします。

1Python Code 
2
3‘’’ 
4
5import os 
6
7import openai 
8
9 
10
11openai.api_key = os.getenv("OPENAI_API_KEY") 
12
13str = """Original: She no went to the market. 
14
15Standard American English:""" 
16
17 
18
19response = openai.Completion.create( 
20
21  engine="davinci", 
22
23  prompt=str, 
24
25  temperature=0, 
26
27  max_tokens=60, 
28
29  top_p=1.0, 
30
31  frequency_penalty=0.0, 
32
33  presence_penalty=0.0, 
34
35  stop=["\n"] 
36
37) 
38
39 
40
41print(response["choices"][0]["text"]) 
42
43‘’’

ニュアンスで入力すれば正しくしてくれる

実行すると「She didn’t go to the market.」と直してくれます。

no wentの部分が“didn’t go”に修正されているのがわかります。

他にも「i gone school tommorrow.」とやると「I’m going to school tomorrow.」のように

  • i goneを明日という言葉からI’m going to(行く予定)に修正
  • tommorrowのスペルミスをtomorrowに修正

文脈から内容を推測し、スペルミスも修正してくれています。

単純な文法の修正だけでなく、tomorrow(明日)という単語を理解し、過去分詞形→過去形への修正ではなくbe going to(するつもり)に修正されています。

「Standard American English」とあるということは

Standard American Englishということは、ここを変えることで他の文法にも変えられるのか試してみましょう。

「My favorite color yellow.」を修正してみましょう。

Standard American English; My favorite color is yellow.

Standard Englishman English; My favorite color is yellow.

Standard American Slang; My favorite color is yellow.

残念ながら、イギリス英語(color→colourを期待)のようにはなりませんでした。また、通常の翻訳ツールでは難しいスラングへの変更も期待しましたが出来ませんでした。

もしかしたら他の変換アプリと同じ様に例文を多く用意することで対応されるかもしれません。

どんなときに使えるのか?

私が英語でメールをするときにGoogle翻訳やDeepL翻訳を使い、翻訳しやすい日本語を作って翻訳するという使い方をし、ストレートに伝わるようにします。結果として硬い表現で遣り取りをすることになってしまいます。

OpenAI 「Grammar correction」を使うことで、ある程度英単語がわかるのであればニュアンスに合わせて英文を作成し、文法を修正してもらうことでより幅広い表現ができます。

また、翻訳ツールに頼ると英語で考えることがなくなりますが、「Grammar correction」であれば英語を使いながらも自信が無い文法部分を補足してくれることで、一部の英語の壁を取り除いてくれます。翻訳ツールとは違う新しい価値を持ったアプリです。

この記事を書いた人

azure-recipe-user