Thursday, July 13, 2023

生成AIを使いこなそう、プロンプトエンジニアリング事始め - ITpro

misaltag.blogspot.com

全3697文字

 大規模言語モデル(LLM)に基づく生成AI(人工知能)を使いこなすには、十分な精度の回答を安定して引き出せるようにして、システム化していく必要がある。

 まず必要なのはLLMの出力を自力でコントロールできるように「カスタマイズ」するスキルだ。想定外の回答ばかり繰り返されては、業務効率を高めるどころか逆に下げかねない。

 自力でコントロールする方法は大きく3つある。「プロンプトエンジニアリングの有効活用」「既存LLMのファインチューニング」「LLMの自作」――である。

 ただ最後のLLMの自作は一朝一夕にはできない。深層学習に対する深い知識と大量のデータセットの収集、高性能なハードウエアなどが必要となるからだ。

 今の段階では、既存LLMの活用を第一に考えるべきであり、その方法が「プロンプトエンジニアリングの有効活用」と「既存LLMのファインチューニング」となるわけだ。いずれもLLMに対していかに必要な知識を学習させるかがポイントになる。なおプロンプトエンジニアリングは対話型AIに関連してよく使われる言葉だが、学習という視点から「コンテキスト(文脈)内学習」とも呼ばれる。

LLMにおける2つのカスタマイズ方法

LLMにおける2つのカスタマイズ方法

コンテキスト内学習(インコンテキストラーニング)とファインチューニングがある。OpenAIの場合、現状でファインチューニングできるモデルは限られている。ChatGPTに使われるモデルでは適用できない。

[画像のクリックで拡大表示]

 LLMの出力を自力でコントロールできるようにカスタマイズするには、まずは手軽に試せるコンテキスト内学習に取り組み、うまくいかない場合はファインチューニングを検討するとよい。ファインチューニングはより信頼できるモデルを構築でき、自力でLLMをつくるのに比べれば手間は少ない。とはいえ、適切なデータセットの用意と、学習が正しく進んでいるかを判断できるだけの機械学習に関する知見が必要だ。

 また現時点でファインチューニングできるモデルはGPT-3の基本モデルに限られている。なお米OpenAI(オープンAI)は2023年内にGPT-4やGPT-3.5のファインチューニングへの対応を予定している。ファインチューニングを利用中のユーザーに対し、こうした新しいモデルでのファインチューニングに優先アクセス権を提供するという。

 ただ取り込むべき業務知識が膨大だと、コンテキスト内学習では対処できない場合があり得ることを知っておきたい。実はGPT-3.5では最大1万6384トークン、GPT-4でも最大3万2768トークンまでしか入力できないといった上限がある。トークン数はAPIの利用コストに直結するため、むやみにトークン数を増やすことにも注意したい。

OpenAIのAPIは2種類

 LLMをカスタマイズするには、前提としてAPIの利用が必須である。まずOpenAIが提供するAPIを中心に説明しよう。

 LLMをシステムとして取り込む場合、着手しやすいのがユーザー向けチャットアプリの開発だろう。このときに注意したいのが、生成AIが持つチャットサービスのAPIはステートレスである点だ。

 ユーザー向けチャットアプリを開発する際には、過去のチャットの履歴を含む形でチャットサービスを呼び出す必要がある。ChatGPTで対話が継続しているように見えるのは、それまでの履歴もチャットの一部として背後で保持しているからだ。

チャットの履歴をプロンプトに記述

チャットの履歴をプロンプトに記述

チャットサービスのモデルは、個々の対話の内容をリアルタイムに学習するわけではない。一見対話の内容を覚えているように見えるのは、チャットのインターフェースがチャット履歴をプロンプトに付加して推論しているためだ。

[画像のクリックで拡大表示]

 OpenAIが提供するAPIは大きく分けて2つある。文章の続きを生成させるというテキスト生成のAPIである「Completion」と、対話の続きを生成させるというチャットのAPIである「ChatCompletion」だ。当初はCompletionしかなかったが、ChatGPTに合わせてChatCompletionを公開した。

 OpenAIは2023年7月6日に発表したGPT-4 APIの正式公開に合わせ、開発者にChatCompletion型のAPIを使うよう呼びかけている。同時に一部のCompletion型のAPIを使ったモデルを提供終了する計画を明らかにした。

 具体的には、「ada」「text-davinci-003」などで2024年1月4日に提供を終える。これらのモデルの提供終了後も、同じCompletion型のAPIを使えるモデルとして「gpt-3.5-turbo-instruct」などを提供するので、従来型のAPIを使ったプログラムが全く使えなくなるわけではない。

Adblock test (Why?)


からの記事と詳細 ( 生成AIを使いこなそう、プロンプトエンジニアリング事始め - ITpro )
https://ift.tt/d974itS
Share:

0 Comments:

Post a Comment