397 Views
August 24, 23
スライド概要
機械学習や音声認識に関する書籍を執筆しています。
4. 発展的な事例 ChatGPT 研修⽤資料 ベクトル化 質問 共感 Empathize 問題定義 Define 追加⽂書 社内⽂書 創造 Ideate プロトタイプ prototype テスト \ Test 類似度計算 Slideshow 回答 分割してベクトル化 ⼿軽な⾳声⼊⼒ ⻑所 テキスト⼊⼒よりも簡単に⾳声⼊⼒ができる ⾃然なコミュニケーション ハンズフリー操作 ⾳声⼊⼒と出⼒を使うことで、⾃然な会話が可能 ⾳声⼊出⼒を利⽤することで、ハンズフリーで操作できる ⾳声認識技術は進歩しているが、まだ完璧ではない 認識の正確さ ⾳声⼊出⼒のスマートフォンアプリ 短所 ノイズやアクセントの影響で正確さが低下する場合がある プライバシーの懸念 メッセージングアプリ ユースケース 4.1 ChatGPT Plus の機能 4.2 ChatGPT API ⾳声⼊⼒は個⼈の会話や情報をアプリに提供するため、プライバシーの懸念が⽣じることがある ⾳声⼊⼒でメッセージの送信や返信を⼿軽に⾏う ⾳声アシスタント スマートフォンアプリを通じて⾳声アシスタントを利⽤し、情報やサービスにアクセスする ドキュメント作成 ⾳声⼊⼒で⽂章の作成やメモの取り込みを効率化する 荒⽊ 雅弘 著者 : 荒木 雅弘 ライセンス : CC BY-NC-SA 注意事項 : 本資料は2023年8月時点の情報に基づく
ChatGPT 研修用資料 1. ChatGPT の仕組みと基本的な使い⽅ 2. プロンプトエンジニアリングの概要 3. デザイン思考を題材としたプロンプトエンジニアリングの実践 4. 発展的な事例
4.1 ChatGPT Plus の機能 プラグイン コードインタープリタ
4.1.1 プラグイン (1/2) プラグインとは ChatGPT と既存のアプリケーションを接続するための拡張機能 ChatGPT Plus で利用可能 3つまでのプラグインを同時に利用可能 プラグインによって可能になること リアルタイム情報の取得(最新のニュース、天気、株価など) 特定の公開情報の利用(企業が公開している文書、個人用のメモなど) ユーザーに代わってアクションを実行(ホテル予約、食事の注文など) プラグインの例 ChatWithPDF: PDFファイルを読み込んで、質問応答を行う(「保護」されているものは読めない) Show Me Diagrams: マインドマップなどの作成 Visla: ビデオの作成
4.1.1 プラグイン (2/2) プラグインの仕組み (実行例) ChatGPT は言語入力を受け取り、使用可能なプラグインを選択してコマンドを送信する プラグインはコマンドを解析し、中身を実行して結果を JSON で ChatGPT に返す ChatGPT はプラグインから返された JSON を解析し、自然言語に変換してユーザに返答する ブラウザ ChatGPT 以下のPDFを読み込んでください https:// ... plugin service REQUEST {"pdf_url": "https:// ..." } RESPONSE PDFの読み込みが成功しました。 何を知りたいですか︖ 要約してください {"status": "success" } REQUEST {"query": "summary", "pdf_url": "https:// ..." } RESPONSE この報告書は ... {"results": [ ... ] }
4.1.2 コードインタープリタ コードインタープリタとは 言葉で問題を説明すると、Python のコードを生成して、実行してくれる 処理対象のファイルをアップロードすることができる 実行結果はダウンロードできる 実行例 初学者向けにPythonの基礎と統計学の基礎を並行して教えるスライドを、pptxライブラリを使 用してpptxファイルで作成してください。ぺージ数は10ページ、1ページに箇条書きで5項目程 度を記述してください。 参考ページ ChatGPTの新機能コードインタープリターに《未来の仕事の全自動化》が見える
4.2 ChatGPT API ChatGPT API とは Python などのプログラムから LLM を使うためのインタフェース System: 何をさせたいのかを指定 User: 処理させたい文章を指定 Assistant: システムの回答(これまでの対話履歴やfew-shotの応答例に用いる) パラメータ Model: gpt-4, gpt-3.5-turbo-16k などが選べる Temperature: 生成する文書のランダム性を0~2で指定。0に近いほどランダム性が低くなる Maximum length: 生成する文書の最大トークン数を指定。最大2048 Top P: 生成するトークンの確率の上位何%を使うかを指定。1に近いほど確率が高いトークンを使う
4.2.1 PlayGround PlayGround とは API にコマンドを送信するのと同じことが GUI で試せる
4.2.2 専用のデータで fine-tuning
APIを通じた fine-tuning
ユーザが用意したデータでモデルの出力を調整できる
応答精度の向上、応答のスタイルや形式の調整、特定のトピックに関する応答生成などが可能
fine-tuning の手順
データを用意する
{"messages": [{"role": "system", "content": "..."}, {"role": "user", "content": "..."},
{"role": "assistant", "content": "..."}]}
{"messages": [{"role": "system", "content": "..."},
...
fine-tuning を行うメソッドを呼び出す
openai.FineTuningJob.create(training_file="file-abc123", model="gpt-3.5-turbo")
学習後のモデルで応答を生成する
4.2.3 関連文書を加えた質問応答 LangChain と Deep Lake を使った質問応答 notebook 実装は、"retrieval augmented generation" というアイディアに基づく 関連文書は適当な長さに分割してベクトル化しておく 質問が与えられたら、まず検索ステップでベクトルの類似度に基づいて関連する文書を取得 検索された文書を元の質問と一緒に LLM に渡し、応答を生成 ベクトル化 質問 追加⽂書 社内⽂書 類似度計算 回答 分割してベクトル化
まとめ ChatGPT Plus の追加機能 プラグイン 外部のアプリケーションとの連携 コードインタープリタ コードを生成し、実行結果を返す ChatGPT API の概要 Python や JavaScript などのプログラムから利用可能 パラメータを調整することで、生成結果を調整可能 入出力データは学習には用いられない 活用のためのフレームワークがいくつか公開されている 例: エージェント機能 参考
練習問題 4 1. (ChatGPT Plus) ビデオ作成プラグインを使って、適当なテーマでビデオを作成してください 2. (ChatGPT Plus) 適当なテーマを与えて、コードインタープリタで powerpoint のスライドを作 成してください