はじめに ABEJAでデータサイエンティストをしている服部です。 今回はLLMで外部データを使うケースについてのお話をしたいと思います。 はじめに LLMと外部データの利用 RetrievalとLLM 0. (事前準備)参照したいテキストデータをDBに格納 1. ユーザの入力文とのテキスト類似度を計算して、関連テキストを抽出する(Retrieval) 2. 関連テキストをLLMのプロンプトに入れ込み、ユーザの入力文に回答する。 Retrieval時の課題 LangChainでの用意 Case1: それぞれの文章がRetrievalしにくい形で保存されている 対策案: ページ構造を意識した形で各文章を格納する 他の対策案 聞き方を明確にする 類似度を測るクエリ文章を置き換える 不要そうな文章をデータから削除する データ自体をLLMで整形し直す Case2: 未知の単語を含む 仮説: ニャオハ