Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevIO 2023 ChatGPTに独自データを付与してQAボットを作成する方法
Search
Najo
July 11, 2023
Programming
0
2.7k
DevIO 2023 ChatGPTに独自データを付与してQAボットを作成する方法
Najo
July 11, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
個人軟體時代
ethanhuang13
0
110
AIコーディングAgentとの向き合い方
eycjur
0
240
GUI操作LLMの最新動向: UI-TARSと関連論文紹介
kfujikawa
0
1k
Namespace and Its Future
tagomoris
6
590
20250808_AIAgent勉強会_ClaudeCodeデータ分析の実運用〜競馬を題材に回収率100%の先を目指すメソッドとは〜
kkakeru
0
210
Constant integer division faster than compiler-generated code
herumi
2
700
自作OSでDOOMを動かしてみた
zakki0925224
1
1.4k
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
280
tool ディレクティブを導入してみた感想
sgash708
1
150
令和最新版手のひらコンピュータ
koba789
14
8.1k
学習を成果に繋げるための個人開発の考え方 〜 「学習のための個人開発」のすすめ / personal project for leaning
panda_program
1
110
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
23
9.1k
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Optimizing for Happiness
mojombo
379
70k
A Tale of Four Properties
chriscoyier
160
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
4 Signs Your Business is Dying
shpigford
184
22k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Facilitating Awesome Meetings
lara
55
6.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
2023/07 岩⼿テナージョン ChatGPTに独⾃データを付与して QAボットを作成する⽅法
©Classmethod, Inc. • ⾃⼰紹介 • 今⽇の流れ • LlamaIndex / LLMについての説明
• ハンズオン • Q and A ⽬次
©Classmethod, Inc. ࣗݾհ 新規事業統括部 Bizチーム 岩⼿ テナージョン • 趣味や技術検証を⽬的にコーディングを⾏います •
⽣成AIにハマっています(画像、動画なども含めて) • 何か新しいことを学ぶ時とコーディング⽀援などに ChatGPTを使うことが多いです。(ChatGPTスゴイ!!!)
©Classmethod, Inc. 今⽇の流れ 独⾃データ(PDFファイル)をLlamaindexに読み込ませて回答を得られることが Goalです。 想定受講者 • ChatGPTを使ったことがある • コーディング経験については初学者,または未経験
• 生成AIの業務活用に関心がある 到達⽬標 • LlamaIndexなどのLLM(Large Language Model)が何をやってい るかの概要を説明できる • 実際にドキュメントをLlamaIndexに読み込ませて回答を得る ことができる
©Classmethod, Inc. 前提 • Google Colaboratryを利⽤するため、Googleのアカウントが必要です。 • Open AIの API
Keyはスピーカーにて準備したものを利⽤いただきます (個⼈のものがあればそれでもOK / DEMOの間だけ利⽤可能なKeyです) • 前半10分程度で簡単なLLMとLlamaindexの説明を⾏い、後半20分ほどで ハンズオンの実施 + QAを⾏います。 • メールの利⽤ページポータルから該当するColabのNotebookを開きます ★⼀緒にメールからnotebookを開く作業を⾏いましょう︕
©Classmethod, Inc. Llama index / LLMについての説明
©Classmethod, Inc. Llama indexについての説明 - そもそもLLMってなに︖ LLM(Large language model)は、⽂章の処理が得意な機械学習(≒ AI)の
脳みそ(Model) 何がすごいのか︖ ⼈間っぽく幅広い様々なタスクを実⾏することができる • 質問に対して答えること • アイデアを考えること • 文章を作成すること 何が新しいのか︖ ⼤量のデータを学習して⼈間がチューニングすることで性能が格段に向上し た • めちゃくちゃ精度が高くて自然 • 汎用的なタスクが実行可能
©Classmethod, Inc. Llama indexについての説明 - Llama indexとは︖ Llama indexとはオープンソースのLLM⽤のライブラリです。⽣成AIにおいて独⾃データを活⽤した回 答を得たい時によく利⽤されます。
オープンソースであるため無料で 誰でも利⽤ができる ・多様なファイル形式に対応している ・Llama Hubから様々なLoaderの利⽤が可能
©Classmethod, Inc. Llama indexについての説明 - ChatGPTとの⽐較例 ChatGPT/GPTだけでは回答できない/ウソをついてしまう問題がLlamaIndexを利⽤することで解決できます(常 に100%正確ではないことに注意) 独⾃データを付与していないChatGPTでは不正 確な回答が出⼒される
独⾃データを付与した場合、正確な出⼒を得ることができる 回答︓Zennのコンテンツをエクスポートすることができます。記 事や本のコンテンツは・・・
©Classmethod, Inc. Llama indexについての説明 - ユースケースや活⽤例 ユースケース/活⽤例 利⽤データ 社内からの問い合わせに対する⼀次対応を⾏う ボットとして活⽤
社内のマニュアルや就業規則など 特定の領域に関するデータを付与 して、質問できるボットとして活⽤ 特定領域における規制や 法律に関わる情報 読むのが難しい⽂書情報を付与して、 情報検索やリサーチの効率化 特定企業の決算・IR情報 補助金や助成金などに関する情報 Llamaindexを利⽤することで問い合わせ対応や情報検索への時間を削減する ことができます。
©Classmethod, Inc. Llama indexについての説明 - 「学習」を⾏うのではなく「変換と検索」① Llamaindexの仕組みは独⾃データをまず読みやすい形へと変換を⾏います。 独⾃データ 分割されたデータ A
分割されたデータ B 分割されたデータ C 分割されたデータ D 分割する (ノードにする) No ⽂章の塊(ノード) 1 分割されたデータ A 2 分割されたデータ B 3 分割されたデータ C 4 分割されたデータ D 読み取りやすくする (Index化/ベクトル化)
©Classmethod, Inc. Llama indexについての説明 - 「学習」を⾏うのではなく「変換と検索」② 質問された内容に対して事前に準備したデータの内容と”どれだけ似ているか︖”を⽐較検索し て、回答を作成します*1。 ࣭ɿ000ʹ͍ͭͯڭ͑ͯ ฦɿ000˛˛˛Ͱɾɾ
No ⽂章の塊(ノード) 1 分割されたデータ A 2 分割されたデータ B 3 分割されたデータ C 4 分割されたデータ D 情報の検索を⾏い、 回答を⾃然⾔語で⽣成 *1 必ず正解を答えるわけではないため注意が必要
©Classmethod, Inc. Llama indexについての説明 - もう少し具体的になにを⾏っているか 質問︓OOOについて教えて 返答︓OOOは▲▲▲で・・ Embedding API
質問︓OOOについて教えて ⽂字列をベクトル(数値)に変 換する ベクトル データベース 変換したベクトル 類似している⽂章の⼀部 Completion API ⽂章の⼀部+質問の プロンプト 回答 処理の⼀例となりますが、以下のようにGPTとLlamaIndexは連携して処理を⾏っています。
©Classmethod, Inc. ここまで ”ざっくり” とイメージがつけばOKです︕ ハンズオンを実施しましょう︕
©Classmethod, Inc. ハンズオン
©Classmethod, Inc. ハンズオン実施の⽬的と⼿順 ⽬的 • 動作イメージをつかんでもらって、活⽤にいかしてほしい • 意外と簡単に実装が可能であることが伝わってほしい 実施⼿順 •
Google Colaboratryを開きます • 独⾃データをアップロードします(今回はダミーのデータを利⽤します) • Colabの内容を実⾏します • 質問してみて実際の動作を確認します • (もし時間が余れば)ファイル形式を変えての実⾏も⾏ってみましょう
©Classmethod, Inc. ハンズオンスタート︕