
ChatGPTの活用方法が多様化

ChatGPTは、2023年3月にGPT-4を発表してから関連サービスの発表が相次いでいます。GPTのAIエンジンのみならず、ChatGPTプラグインやChatGPT APIなど多数の発表がされています。詳細は以降で解説していきます。
【参考】:OpenAI
ChatGPTプラグインを活用する
ChatGPTプラグインは、2023年3月に登場した追加機能です。従来ChatGPTでは、チャットのやり取りしかできませんでした。ChatGPTプラグインでは、必要な機能をプラグインとして取り込み、ニュースへのアクセスやExpediaなどのサービスサイトとの連携が可能です。ChatGPTプラグインで、ChatGPTの活用の幅が一気に広がります。
以前は利用のためにウェイトリストに登録が必要でしたが、現在はChatGPT plus契約者はそのまま利用することができます。
【参考】:ChatGPT plugins

ChatGPT APIを活用する
ChatGPT APIは、2023年3月にリリースされた機能です。ChatGPTを、ソフトウェアやプログラミング言語からAPIを通じてアクセスすることができます。APIアクセスの登場により、ブラウザや専用アプリを用いずにChatGPTのタスクを直接実行することができます。
利用するには、トークンの量に応じて費用が発生します。
この後で紹介する業務活用も、ChatGPT APIを用いることでプログラミング言語やそのアプリケーションから起動することができます。
【参考】:Introducing ChatGPT and Whisper APIs
GPT-4 APIの提供を開始
2023年7月6日、3月以降ウェイティングリストの状態であったGPT-4 APIの提供を開始すると発表しました。7月末には、新規の開発者へも提供を開始する予定です。この提供により、GPT-4、GPT-3.5 Turbo、DALL-E、Whisper APIの一連のサービスへ接続し、利用することが可能となります。
なお、一部の古いモデルについては廃止されることも明らかにし、半年後2024年1月4日までのサポートするモデルでの調整が必要となります。
【参考】:GPT-4 API general availability and deprecation of older models in the Completions API


ChatGPTの活用方法

ChatGPTが、2022年11月に公開されてから多くの話題に上がっています。ここでは、ChatGPTの実際の活用方法を考えていきます。特に、エンジニアの方が業務で使用する際にどのような観点で活用できるのか、エンジニア視点で解説していきます。
ChatGPTとは
ChatGPTとは、OpenAIが開発する自然言語型のAIチャットシステムです。自然言語に対応しますので、英語でも日本語でも言語から判断し適切な返答を返してくれます。つまり日本語で質問すると、適切な返答が日本語で返ってくる優れものです。
また、2023年3月15日、最新版のGPT-4がリリースされました。最新のChatGPTが、司法試験において上位10%の回答レベルに到達したと報告されています。
【参考】:OpenAI 【参考】:OpenAI: Introducing ChatGPT 【参考】:ChatGPT — Release Notes 【参考】:GPT-4 is OpenAI’s most advanced system, producing safer and more useful responses

ChatGPTを利用するには
ChatGPTを利用するには、公式サイトでアカウントを作成し、チャットシステムにログインして利用します。最新版のGPT-4を利用するには、現状では月額20USドルのChatGPT Plusに登録する必要があります。
ただし、マイクロソフト社よりリリースされた新検索サービス「新しいBing」では、カスタマイズされたGPT-4がエンジンであることが公表されています。新しいBingは正式版が公開されており、追加料金なしでサインインにより利用可能です。
【参考】:OpenAI GPT-4 【参考】:Bing 新しいBing 【参考】:Confirmed: the new Bing runs on OpenAI’s GPT-4 | Bing Search Blog


ChatGPTのエンジニア業務活用方法

ここからChatGPTを、エンジニアの業務へどのように活用できるか検討していきます。さらに、実際にChatGPTとチャットを行い、その返答の妥当性もチェックします。主にITエンジニアの職務の利用ケースを想定し、いくつかの実例をまとめてみました。
ドキュメントの和訳や英訳
ドキュメントの和訳や英訳は、エンジニアの仕事で重要なウェイトを占めています。技術用語や解説は欧米から発信されることも多く、英語のコミュニケーションは重要です。
ここでは、特定のホームページの文章を英語から日本語に訳す場面を想定します。一例として、ChatGPTのホームページの説明文を英語から日本語にしてもらいます。最初に日本語で以下の文面を入力します。
(私)次の文章を日本語にしてください。
ChatGPTは、日本語の依頼内容を把握しており、意図的に英語で以下のように返答しています。
(ChatGPT)Please translate the following sentence into Japanese.
"I love listening to music while I exercise."
ここで、ChatGPT公式サイトの文面を貼り付けてみます。
(私)Introducing ChatGPT
We’ve trained a model called ChatGPT which interacts in a conversational way. The dialogue format makes it possible for ChatGPT to answer followup questions, admit its mistakes, challenge incorrect premises, and reject inappropriate requests.
その結果、以下の回答が得られました。日本語訳は概ね妥当だと判断できます。
(ChatGPT)ChatGPTを紹介します。当社は対話形式で動作するChatGPTモデルを訓練しました。この対話形式により、ChatGPTは追加の質問に答えたり、誤りを認めたり、不正確な前提を挑戦したり、不適切な要求を拒否したりすることが可能になります。
念のため、以下のように感謝を伝えます。
(私)ありがとうございます。
今度は適切に、次のように日本語で返答がされます。
(ChatGPT)どういたしまして。何か他にお力になれることがあれば、遠慮なくお申し付けください。
エンジニア向けドキュメントはPDF化しているものも多いですが、PDFからテキスト変換することで翻訳ソフトとしても活用することができます。
プログラムコードのレビュー
作成したプログラムのコードは言語仕様に基づいてレビューすることができます。そのため、ChatGPTも時間をかけずにコードレビューを手助けしてくれます。
次の例は、PHPで和暦を西暦に変換するプログラムを作成し、ChatGPTにレビューを依頼したものです。
(私)次のPHPのプログラムは正常ですか?
<?php
$subject='これは平成31年の報告書です'; // この行を変更すると、'令和 元年'や'令和 XX年'、平成でも処理できます。
$subject=preg_replace('/(元年)/','1年',$subject); // 先に'元年'を'1年'に変換します。
$pattern='/(令和|平成) *([0-9]+)年/'; // 和暦の正規表現パターンです。
if (preg_match($pattern, $subject, $matches)) { // 正規表現のパターンマッチを行います。
ar_dump($matches); で$matchesの値が分かります。
if ($matches[1]=='令和') { // 和暦が令和の場合の処理です。
$year_base=intval($matches[2])+2018; // 令和の場合 2018を追加します。
} elseif ($matches[1]=='平成') { // 和暦が平成の場合の処理です。
$year_base=intval($matches[2])+1988; // 平成の場合 1988を追加します。
}
$year='西暦'.$year_base.'年'; // 数値から文字列に変換します。
echo preg_replace($pattern,$year,$subject); // 和暦を西暦に変換します。
}
else {
echo $subject; // そのまま表示します。
}
?>
ChatGPTは、以下のコメントを返答してくれました。
(ChatGPT)このPHPコードは正常です。このコードは、指定された文字列が和暦である場合、それを西暦に変換する処理を行います。和暦の形式が「令和 XX年」または「平成 XX年」の場合に対応しています。コード内で正規表現パターンを使用し、和暦の部分を特定して、西暦に変換しています。また、和暦の部分がない場合は、元の文字列をそのまま表示するようになっています。
丁寧にこちらの作成した変換手順やロジックまで解説してくれており、妥当であることが分かります。
アルゴリズムのコード化
プログラムコードのレビューと同様に、アルゴリズムのコード化も簡単に行ってくれます。次の例は、1~100までの足し算を行うプログラミングのコードを依頼したものです。
(私)1~100までの足し算を表示する、C言語のコードを教えてください。
次の通り、簡単にコードを生成し返答してくれました。
(ChatGPT)以下は、C言語で1から100までの数字を足し合わせ、合計値を出力するコード例です。
#include <stdio.h>
int main() {
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
printf("1から100までの合計は %d です。\n", sum);
return 0;
}
もちろん、同じ依頼を別のプログラミング言語にも用いることができます。下のやり取りは、Java言語で依頼したものです。
(私)java言語の場合はどうなりますか?
(ChatGPT)以下は、Java言語で1から100までの数字を足し合わせ、合計値を出力するコード例です。
public class Main {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
System.out.println("1から100までの合計は " + sum + " です。");
}
}
上記の通り、コードを返答してくれるとともに、次の解説コメントまで返答してくれました。
(ChatGPT)C言語のコード例とほぼ同じように、Javaではforループを使って1から100までの数字を順番に足し合わせ、sum変数に格納します。最後に、System.out.printlnメソッドを使ってsum変数の値を表示しています。注意点として、Javaではコードをクラスとして定義する必要があります。そのため、上記のコードはMainという名前のクラスを定義しています。
さらに次のように、生成したプログラムコードにコメントを追加することも簡単にできます。
(私)C言語のコードにコメントを追加してください。
(ChatGPT)以下は、C言語で1から100までの数字を足し合わせ、合計値を出力するコード例にコメントを追加したものです。
#include <stdio.h>
int main() {
int sum = 0; // 合計値を初期化する
for (int i = 1; i <= 100; i++) { // 1から100までの数字を順番に足し合わせるループ
sum += i; // iを合計値に加える
}
printf("1から100までの合計は %d です。\n", sum); // 合計値を表示する
return 0;
}
(ChatGPT)上記のように、コメントを追加することで、コードの意図を明確にすることができます。コメントは、変数や関数の役割、ループの目的、特定の処理の説明などを記述することができます。
ちょっとした手伝いであれば、苦も無く対応してくれそうです。
新規プロジェクト市場性を把握
市場規模や成長性が不確かな場合においても、総合的な参考意見をもらえます。
(私)金融業界のITシステムを開発する予定です。ChatGPTのGPT-4はどの程度役立ちますか?
ChatGPTの返答は、以下の通りです。
(ChatGPT)現在、GPT-4に関する情報は公開されていないため、その役立ち具合を正確に予測することはできません。ただし、GPTシリーズは自然言語処理における最先端技術であることが知られており、金融業界においても自然言語処理技術を活用することで様々な課題解決が可能になる可能性があります。
例えば、金融業界では、投資情報の自動要約、契約書の自動生成、リスク管理や詐欺検出のための自動監視など、多くの業務で自然言語処理技術が利用されています。GPT-4がリリースされた場合、より高度な自然言語処理が可能になり、より高度な業務効率化や精度向上が期待されます。
ただし、金融業界は機密性が高く、セキュリティー上の問題もあるため、GPT-4の導入に際しては慎重な検討が必要です。また、ITシステムの開発には様々な技術や手法が存在するため、GPT-4が必ずしも最適解となるわけではありません。業務に必要な機能や要件に合わせた最適な技術や手法を選択することが重要です。
ビジネス機会の解説とともに、影響されるリスクにも踏み込んでいます。コンサルティング領域でも利用価値はありそうです。もちろん、次のように将来動向についても簡単に得ることができます。
(私)AIのITへの利用は今後も成長すると考えますか?
ChatGPTの返答は、以下の通りです。
(ChatGPT)はい、私はAIのITへの利用が今後も成長すると考えます。現在、AIは様々な分野で利用されており、その効果や可能性が注目されています。特に、機械学習や自然言語処理などの技術が進化したことで、AIがより高度な処理や分析を行うことが可能になり、ビジネスにおいてもさまざまな利用シーンが増えています。
例えば、AIはデータ分析や予測に活用されており、金融業界ではリスク管理や投資分析、小売業界では需要予測や商品推薦などに利用されています。また、製造業や物流業界では、AIを活用することで生産効率の向上やコスト削減、物流の最適化が可能になっています。
AIは今後も進化し続けるため、より高度な処理や分析が可能になることで、ますます多くの分野で利用されることが予想されます。さらに、AI技術を活用することで、業務の自動化や生産性の向上など、ビジネスにとって大きなメリットがあるため、今後もAIのITへの利用は拡大していくことが予想されます。
このような内容は、意思決定支援として有効です。エンジニアのロール別にもさらに多様な用途に活用ができると考えられます。回答の正確性については利用者が判断することになりますが、実用領域に近づいていることは間違いないでしょう。

ChatGPTの活用方法は多岐に渡ります

ChatGPTは自然言語に対応し、学習内容に基づいて多くの検索結果から要約文を作成したり、より適切な回答をしたりすることができます。エンジニアの観点ではドキュメント作成やプログラミングの生産性向上が期待できます。
このように多くの領域に使用することができますので、是非とも色々な場面で試してみることをおすすめします。


編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから