ChatGPTのビジネス利用検討

# 記事の目的

この記事は、**自然言語処理（NLP）に詳しくない方**を主な対象として、[ChatGPT](https://openai.com/blog/chatgpt/) について特に**ビジネスでの利用法という観点で**概説するものです。ChatGPT の現在の提供内容や機能および利用例を紹介し、専門外の方の理解を助けることを目的としています。

:::note warn
記事の内容は、2023年1月時点での情報です。
:::

# ChatGPTとは

[ChatGPT](https://openai.com/blog/chatgpt/) とは、[OpenAI](https://openai.com/) が2022年11月に公開したチャットボットです。
従来のFAQチャットボットとは異なり、単に質問に答えるだけでなく、それ以外の使い方（例：**文章の要約や翻訳など**）もできます。他にも、チャットボット自身の間違いを認めたり、ユーザ（利用者）の質問の矛盾点を指摘・拒否する機能もあります。また、**多言語対応**しており、例えば英語や日本語を扱うことができます。
なお現時点（2023年1月）では、企業独自のマニュアル等、**特定のデータでのチューニングができません**。事前に学習した一般的な知識に基づく応答しかできません。

アカウント登録することで個人は誰でも無料で試してみることができます。
現在（2023年1月）、利用に関して公開されている情報は次の通りです。

* 今のところAPIは公開されていませんが、検討段階にあるようです。
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">We&#39;ve learned a lot from the ChatGPT research preview and have been making important updates based on user feedback. ChatGPT will be coming to our API and Microsoft&#39;s Azure OpenAI Service soon. <br><br>Sign up for updates here: <a href="https://t.co/C7kMVpMAKv">https://t.co/C7kMVpMAKv</a></p>&mdash; OpenAI (@OpenAI) <a href="https://twitter.com/OpenAI/status/1615160228366147585?ref_src=twsrc%5Etfw">January 17, 2023</a></blockquote> 
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

* ChatGPTに入力された内容の**機密性は確保されていません**。機能改善のために開発者がチャット履歴を閲覧する可能性があります。
> Will you use my conversations for training?
>
> Yes. Your conversations may be reviewed by our AI trainers to improve our systems.
> &mdash; [ChatGPT General FAQ](https://help.openai.com/en/articles/6783457-chatgpt-general-faq) No.6


* APIライセンスについてもまだ不明ですが、出力結果の商用利用は認めています。

> Can I use output from ChatGPT for commercial uses?
> 
> Subject to the Content Policy and Terms, you own the output you create with ChatGPT, including the right to reprint, sell, and merchandise – regardless of whether output was generated through a free or paid plan.
> &mdash; [ChatGPT General FAQ](https://help.openai.com/en/articles/6783457-chatgpt-general-faq) No.14


## ChatGPTとGPTシリーズの違い

ChatGPTとGPT（GPT-3, GPT-3.5など）は区別されています。一言で言えば、ChatGPTは、GPTをベースに対話に特化させ人手をかけてチューニングしたものです。

膨大なWebサイトのデータで作られたGPT[^gpt-training-cost]を基に、対話データやプログラミングコードのデータも加えて学習させ、更に人間にとって自然な文を出せるよう多大なコストをかけて繰り返し人手を使ってチューニングしています。

[^gpt-training-cost]: GPT-3の学習は数億～数十億円が必要だと言われています。


## 有効な利用局面
ChatGPT には様々な機能（詳細後述）がありますが、有効利用できる場面は、**チャットボット（対話形式）である必要があるケース**です。
ユーザの入力に対して**出力を１回だけ取り出すケースでは、対話形式のメリットが活かせません**。例えば、文章を単に要約したいだけの場合、要約専用のモデルを用意する方が高い性能が得られる場合があります。翻訳したい場合は翻訳サービスを検討できます。
一方、ユーザの入力に対するChatGPTの応答に対して、**ユーザが追加の入力をする場合には対話形式の利点を活かせます**。例えば、１回目に要約された文章をユーザが見て、追加の指示（例：もっと短く要約したい）を与えるようなケースです。


# 機能

ChatGPTの特長と制限事項の概要は以下の通りです。各項目の詳細な例は[5節](#機能の詳細会話例)で述べています。

## 特長
次のような機能があります。
* 文脈を理解して流暢な会話ができる
* 同じ入力に対して返答を変化させることができる
* 説明の長さを制御できる
* 多言語を扱うことができる
* 矛盾した質問に対して、誤りであることを指摘できる
* 情報の加工（要約、翻訳、情報抽出など）ができる
* 文章を創作できる
* 出力スタイルの制御ができる

## 制限
できることの限界として、次のような制限がありますので、利用時に注意が必要です。
* 発言内容が事実である保証がない
* Web検索はできない
* 一度に入力できる文字数には限りがある
* 応答の生成に時間がかかる
* 扱うデータはテキストのみ
* 特定のデータでチューニングはできない
* 2021年以降の知識は保証されない


# ここまでのまとめ：ビジネス利用が想定できる局面

**ビジネスで利用できる局面は**、現状では**かなり限定的です。**
特に、発言内容が事実である保証がないため、利用する場合は次のいずれかを前提とします。

* **出力結果を人手で事実確認できる**
これは「最終的に人手で確認する前提だが、人手で書くコストをなるべく削減する」局面です。
例えばChatGPTに、メール文を書いてもらうとします。ChatGPTで下書きを作り、人手で細部の修正のみを行うことで、人手で全ての文を作る方法に比べて手間を削減できると期待できます。
※人手で事実確認できないユーザが、ChatGPTの回答を確認せずに利用するのは危険です。

* **正解を求めていない**（どのような回答でも構わない）
これは「自由な応答が欲しい」局面が想定できます。
例えばChatGPTと外国語で話す練習を行ったり、面接の練習を行うなどのケースです。

いずれの場合も、特定のデータでチューニングできないため、**一般的な知識に基づく利用しかできません。**


# 機能の詳細・会話例

[機能](#機能)で挙げた内容について、それぞれ詳細や例を紹介します。

## 特長

### 文脈を理解して流暢な会話ができる

ChatGPTは、文脈（前の発言内容）を考慮した応答ができます。また、流暢な会話ができます。
以下の例１では、２つ目の質問で「自然言語処理」という単語を使わずに「それは、どのような時に使われていますか。」と尋ねていますが、ChatGPTは１つ前の内容に合わせて「自然言語処理」の利用例を答えています。

例１　用語の説明①
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/cdb3e185-7e5e-b6cb-25a9-728dad5fe72c.png)


### 同じ入力に対して返答を変化させることができる

ユーザの入力に対して、返答を変化させることができます。（※確実に同じ返答を得る方法は今のところありません）
例１と同じ入力を行った例２では、少し異なる返答が得られています。

例２　用語の説明②
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/e85fb7f5-58f1-e415-6cae-78fef96a53aa.png)


### 説明の長さを制御できる

ユーザの入力内容に応じて、返答の長さを変えています。
例１のように用語の説明を求めたケースでは、短すぎる回答（例えば「自然言語処理とは NLP と略されます。」など）や長すぎる回答（例えばWikipediaの全文を引用するなど）ではなく、概要のみを回答しています。
また以下の例３のように、最初に詳しい説明を促すと、それに合わせてより詳しい内容を一度に回答しています。

例３　詳細な説明
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/6aa551d8-1f0b-2b38-e3b7-001e665bb36b.png)


### 多言語を扱うことができる

ChatGPTは多言語に対応しています。言語モードを事前に指定する必要は無く、入力された言語や会話の状況に合わせた言語で返答します。
以下の例４のように、日本語と英語の両方の回答を求めるような、日本語の質問文にも上手く答えています。

例４　多言語対応
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/c9a85834-2b2e-8b11-b3f4-920de98acf3d.png)


### 矛盾した質問に対して、誤りであることを指摘できる

以下の例５のように、入力に対する正解が存在しない場合、それを指摘できることがあります。

例５　正解が存在しない問い
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/c1b9b946-3c9e-faa1-d551-02ae9d036d1f.png)


### 情報の加工（要約、翻訳、情報抽出など）ができる

入力された情報を、指定に従って変換したり抽出したりすることができます。
例６では、４文の文章を２文に要約しています。
例７では、文章に基づいて質問に正しく答えています。

例６　要約[^sourceiswikipedia]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/9bce2c7b-e7da-d7aa-0c3a-566a073c0292.png)

例７　情報抽出[^sourceiswikipedia]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/861969ce-ff27-2176-69f6-b67647a9fdae.png)

[^sourceiswikipedia]: 要約元/参照元の文章は、[Wikipedia「自然言語処理」](https://ja.wikipedia.org/wiki/%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86)より抜粋


### 文章を創作できる

ChatGPTが持つ知識に基づいて、文章を創造することができます。ユーザの情報入力を前提とする上記の「特長：情報の加工（要約、翻訳、情報抽出など）ができる」と異なり、ユーザが入力した僅かな情報から、新たな内容を創造することもできます。
例８では、タイトルのみ指示された状況で、それに沿った文章を書いています。
例９では、状況に合わせたメールの例文を書いています。

例８　作文
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/90d4e6b6-fe21-8ade-10d4-88786f2fff32.png)

例９　メールのテンプレート
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/6c20d0c8-6252-c50a-e7a3-62d2b8c52db4.png)


### 出力スタイルの制御ができる

出力するスタイルを制御できます。指定されたスタイルに合わせたり、応答として最適なスタイルで返答したりすることができます。
例１０では、入力で指定された文体で応答しています。

例１０　文体指定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/78c5675c-d9c7-f088-d944-ad03f3b9cfa7.png)


## 制限

### 発言内容が事実である保証がない

ChatGPT は、流暢な会話が可能なため、いかにも正しいことを述べているかのように応答しますが、内容が事実と異なる場合があります。従って、ユーザが応答内容の事実確認をする必要があるため、専門分野外の知識を得るために使うのは危険です。
例１１では、移動経路を尋ねていますが、存在しない空港や路線を説明しています。
例１２では、医療についての問題ですが、致命的な選択肢を答えており、専門外の人が鵜呑みにしてしまうと人命に関わります。
例１３では、計算結果が違います。

例１１　経路検索（誤情報）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/3e1270b0-027c-2dcb-e16f-ec9dbfd52f33.png)

例１２　禁忌肢（誤情報）[^sourceisqk] [^fix-kinkishi]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/b577c695-9319-abda-3d79-27705e6503f8.png)

[^sourceisqk]: [外部ブログ](https://web.quizknock.com/doctorx-quiz)のクイズを参考にしています。
[^fix-kinkishi]: 初版の画像に誤りがありましたので修正しました。ご指摘くださった方、ありがとうございます。


例１３　計算（誤情報）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513839/6c9916ea-a4e5-5f0e-d835-a6642004c0a0.png)


### Web検索はできない

事前に学習した内容に基づいているため、最新のニュース等は参照できません


### 一度に入力できる文字数には限りがある

長いテキストを入力するには、複数の発言に分割することになりますが、入力中もチャットが返答するので、予期しない動きになる可能性があります（例：指示していないにも関わらず、要約を出力し始めるなど）。
なお、何度も入力すると、初めの方に入力した内容を明確に記憶できない可能性があります。


### 応答の生成に時間がかかる

具体的な生成速度については未公開です。日本語より英語の方が速く生成できる傾向にあります。有料プランは速くなるようです。


### 扱うデータはテキストのみ

扱うことができるデータはテキストのみであり、箇条書きやプログラミングコード等の書式は出力できますが、**画像などは扱えません**。


### 特定のデータでチューニングはできない

現時点では、特定のデータでチューニングできないため、企業内マニュアルや製品の仕様書など、**企業独自の情報を登録できません**。
少量のデータであれば、利用の度に入力すれば情報抽出などができますが、一度に入力できる文字数には限りがあり大量のデータは入力しにくいため、大規模な文書検索などへの応用は難しいです。

なお、独自データでチューニングするために、ChatGPTを自前で用意する方法は、あまり現実的ではありません。まず多大なコスト（資金・人手・時間）がかかりますし、データの量も必要です。資金力が確保できても技術力確保（分散処理の高度な知識などが必要です）の課題が考えられます。


### 2021年以降の知識は保証されない

学習データは主に2021年以前のWebデータを利用していますので、それ以降の知識は乏しくなっています。


# その他の例（参考情報）

最初の発言として入力する「チャットに行ってほしい挙動の指示」の例をまとめたサイトがいくつかあります。
英語では「prompts」、日本語では「テンプレート」「入力例」などでWeb検索するとこのようなサイトにたどり着けます。

* [Awesome ChatGPT Prompts](https://github.com/f/awesome-chatgpt-prompts) (英語)
* [500+ Best ChatGPT Prompts](https://vaulted-polonium-23c.notion.site/500-Best-ChatGPT-Prompts-63ef8a04a63c476ba306e1ec9a9b91c0) (英語)
* [ChatGPTに関するチートシート](https://zenn.dev/nameless_sn/articles/chatgpt_cheat_sheet) (日本語)
* [ChatGPTがサポート!実践的なメールアイデア テンプレート集](https://note.com/shoty/n/n5b1cc8f37e32) (日本語)