はじめに

OpenAIは、自然言語処理において世界をリードする企業の一つです。OpenAI APIは、機械学習に基づいた言語処理技術を使用し、英語の文章に対する添削や修正を行うことができます。以下では、OpenAI APIを使用した英作文添削処理について詳しく説明します。

OpenAI APIを使用した英作文添削処理は、以下のような手順で行われます。

  1. OpenAI APIにアクセスする:OpenAI APIにアクセスするためには、OpenAIのアカウントを作成し、APIキーを取得する必要があります。
  2. テキストを入力する:OpenAI APIにテキストを入力します。これは、添削を行いたい英語の文章です。
  3. 添削処理を実行する:OpenAI APIは、機械学習に基づいた自然言語処理技術を使用して、入力された文章に対して添削処理を実行します。添削処理には、文法エラーの修正、適切な表現の提案、文章の構造の改善などが含まれます。
  4. 結果を取得する:OpenAI APIは、添削処理が完了すると、修正された文章を出力します。出力された文章を確認し、必要に応じて修正を加えることができます。

OpenAI APIを使用した英作文添削処理は、英語学習者や英文ライティングを行う人々にとって非常に便利なツールです。特に、ネイティブスピーカーでない場合や、文法や表現に自信がない場合には、OpenAI APIを使用して文章を添削することで、より自然で正確な文章を作成することができます。

しかしながら、OpenAI APIを使用した添削処理には限界があります。例えば、機械学習モデルが把握できない専門用語や略語、文脈による表現の違いなどに対応することができない場合があります。

以上が、OpenAI APIを使用した英作文添削処理についての説明です。OpenAI APIは、英作文の添削や修正に非常に役立つツールであり、英語学習者や英文ライティングを行う人々にとって大きな支援となるOpenAI APIを使用した英作文添削処理の利点は、以下のようなものが挙げられます。

  1. 正確で迅速な添削処理が可能:OpenAI APIは、機械学習に基づいた言語処理技術を使用しているため、高い精度で正確な添削処理を実行することができます。また、処理速度も非常に高速であるため、迅速に添削結果を取得することができます。
  2. 自然な英語表現の提案:OpenAI APIは、自然言語処理技術を使用して、より自然な英語表現の提案を行うことができます。これにより、より流暢で自然な文章を作成することができます。
  3. 文法エラーの修正:OpenAI APIは、文法エラーの修正も行うことができます。これにより、正しい英語表現を学ぶことができ、より自信を持って英語を使用することができます。
  4. 複数の文章に対応可能:OpenAI APIは、一度に複数の文章を添削することもできます。これにより、時間を節約しながら多くの文章を修正することができます。

OpenAI APIを使用した英作文添削処理は、英語学習者や英文ライティングを行う人々にとって非常に有用なツールであることが分かります。しかしながら、完全に自動化された添削処理には限界があるため、人間が最終的に確認することが必要であることに留意する必要があります。

いかがですか?以上はChatGPT(GPT-3.5)に以下の指示で書いてもらったブログの内容です。

OpenAIのAPIを使った英作文添削処理に関するブログを書いてください。

実際にやってみよう

なるほど。相変わらず自然な表現で要点を的確にまとめてくれていて、注意事項も忘れていません。

では実際にOpenAI APIを使って確認してみようではありませんか。

OpenAIのドキュメントにPythonによるサンプルコードが載っていましたので、そちらを参考にやってみたいと思います。

※ OpenAI APIの使用は有料です。詳しくはOpenAI Pricingをご確認ください。

まずはサンプルコードをそのままコピペしました。

APIコールサンプル
APIコールサンプル

すると「Import “openai” cloud not be resolved」エラーが出ました。ChatGPTに聞いてみると’openai’モジュールのインストールが必要との事です。

openaiモジュールをインストールし、実行したところ次はAPIキーがないとエラーが出ました。

openai.error.AuthenticationError: No API key provided. You can set your API key in code using 'openai.api_key = <API-KEY>', or you can set the environment variable OPENAI_API_KEY=<API-KEY>). If your API key is stored in a file, you can point the openai module at it with 'openai.api_key_path = <PATH>'. You can generate API keys in the OpenAI web interface. See https://onboard.openai.com for details, or email support@openai.com if you have any questions.

ふむ。そういえば先ほどのChatGPTが書いてくれたブログにAPIキーを取得する必要があると書いていました。

OpenAIページにログインし、アカウントメニューの「View API Keys」に行くとAPIキーを生成するためのボタン[+ Create new secret key]があるのでこれを押してAPIキーを生成します。

このキーは1回しか見れないので忘れないように他の安全な場所に書き込むなどして保持しておく必要があります。忘れてしまったら再度生成すれば良いのですが。

APIキーを生成出来たのでコードにAPIキーを設定して再度実行したところ、エラーが消えました。

エラーは出ていないものの何も出力していないのでレスポンスを出力してみたいと思います。先ほどのOpenAIドキュメントにResponse formatが書いてあるのですが、’choices’配列の’message’の’content’がChatGPTからの返事のようです。

レスポンスサンプル

レスポンスを出力するコードを追加してみました。

実行してみると

「The World Series in 2020 was played in Arlington, Texas at Globe Life Field.」とレスポンスサンプルと同じメッセージが出力されました。

英語添削をやってくれるのか確認

ちゃんと動いている事が確認出来たので英語添削をやってもらいましょう。

プロンプトから入力した英文を添削してもらうようにAPIコールします。

まずは正しい英文を入れてみます。

英作文してください: My name is Tom.

Your writing is correct and there are no errors. “My name is Tom” is a simple sentence that introduces yourself to others. Good job!

すると特に問題なく、Good job!と褒められました。

今度は間違った英文を入れてみます。

英作文してください: My name are Tom.

添削:My name is Tom.

説明:名前を表現する時は、「My name is」を使います。また、「are」は複数形の形容詞、「is」は単数形の形容詞を修飾するのに使われます。したがって、「My name are」は文法的に間違っています。正しく表現するためには、「My name is Tom.」となります。

おぉ。ちゃんと添削と説明もしてくれます。

褒め言葉が英語なのがちょっと気になりますが、添削の説明をお願いしたので説明は日本語で返ってきたものの、褒め言葉は気を利かして付けてくれたようです。

おまけ

最後に学習関連でOpenAI APIを使ってコンテンツを作れないかいくつか他の質問を試してみました。

問い合わせメッセージレスポンスメッセージ
中学レベルの英単語を1つ選んで例文を3つ作ってください。翻訳もお願いします。単語:fortunate
1. I feel very fortunate to have such a loving family.(私はこんなに愛情深い家族がいてとても幸運だと感じています。)
2. The fortunate winner of the lottery was able to travel around the world.(宝くじの幸運な勝者は世界中を旅することができました。)
3. He was fortunate enough to find a job right after graduating from college.(彼は大学を卒業してすぐに仕事を見つけることができて幸運でした。)
小学生5年生レベルの計算問題を10個出題してください。1. 357 + 482 = ?2. 888 – 233 = ?3. 125 x 6 = ?4. 672 ÷ 8 = ?5. 238 + 497 – 183 = ?6. 444 ÷ 6 x 2 = ?7. 376 + 259 + 101 = ?8. 28 x 5 – 72 = ?9. 523 – 187 + 273 = ?10. 942 ÷ 6 x 3 = ?
英語の穴埋め問題を出してください。1. I _______ to the store to buy some milk.a. am goingb. wentc. will go
2. He _______ playing basketball when it started to rain.a. isb. wasc. will be
3. She _______ her homework every night.a. dob. didc. does
4. They _______ a great time at the party last night.a. hadb. havec. will have
5. I _______ to the gym every morning before work.a. gob. wentc. will go
6. He _______ his phone in the car and had to go back for it.a. leftb. leavesc. will leave
7. She _______ her test yesterday and got an A.a. tookb. takesc. will take
8. They _______ to the beach last weekend.a. wentb. goc. will go
9. I _______ to try that new restaurant downtown.a. wantb. wantedc. will want
10. He _______ his bike to school every day.a. rides b. rodec. will ride

OpenAI APIを利用するとコンテンツは無限に作る事ができるので英語やそれ以外の学習Webアプリなども簡単に作れそうです。

例えばWeb Speech APIを使って、AIとの英会話Webアプリも実現出来るのではないでしょうか。

既にSpeakという英会話アプリはGPT-4を使ったAIとの英会話機能を実現しており、TC3ではSpeak利用も含めてスキルアップの福利厚生が整っています。

おわりに

TC3は「Gig Innovated.」のスローガンを掲げ、ギグ・エコノミーとの共創を通してソフトウェア開発やAI開発を支援する会社です。ギグ・エコノミーとの共創による開発には、ツール、プロセスなどの観点で様々な課題も存在しています。このような世界を一緒に作っていく仲間をTC3では募集していますので、カジュアル面談などお気軽にお問い合わせください!(参考:リクルートサイト