初学者向けの最小限のプログラムを作りました。
PDFを読み込み、Qdrantベクターデータベースに埋め込みデータを保存、OllamaのLLMを使って、埋め込みデータを元に文章を生成する例です。
最小限とは言っても、200行ほどあります。もう少し短くできるといいな。
今回は長いのでソースコードの引用はなしです、ごめんなさい。
塾生や塾のスタッフには共有してあります。
一般にRAG (Retrieval Augmented Generation)を使う利点は、
- LLMが知らない最新の情報を元に文章生成ができる
- 業務や業界に特化してデータを使って文書生成ができる
- ハルシネーションが抑制できる
などです。
ローカルLLMとの組み合わせで、企業や行政機関などの内部情報を使った文章生成ができるということで注目している企業が多いかもしれません。
なかなかLLMを自前で作るのは計算資源の関係で難しいですが、LoRA使ったファインチューニングとRAGを組み合わせて小さめのLLMを活用するくらいなら弱小組織でもやれます。これにMCPのようなエージェント技術を加えてアプリケーションを作って行くことになるのでしょう。
そろそろ社内業務アプリケーションの開発にはAIエンジニアを雇った方が良いかもしれませんね。チューニングにしても、アプリケーションにしても調整を繰り返さないと実用的なものになりそうにありませんから外注には向かない仕事です。
本来なら、人手不足を理由に業務を拡大できないと嘆いている中小企業こそAIを有効利用した方が良いです。ところが優秀なITエンジニアを抱えられる中小企業は少ないので、なかなか上手くいきませんし、中小企業の経営者がITに疎いのも問題。ITをコストだと思って軽視せずにプロフィットセンターだと思えない経営は不味いかもしれません。
「最小限のRAGアプリケーション」への1件のフィードバック