生成AIエンジニアLab

生成AIの最新技術を、ハンズオンで解き明かす実践ラボです。
次の一歩を描きながらAI時代のキャリアを模索する羅針盤を目指します。

カテゴリ: RAG

本記事では、Azure AI Document IntelligenceとLangChainを活用したRAG(Retrieval-Augmented Generation)の構築手順を解説します。
特に、AI Document IntelligenceによるドキュメントのMarkdown変換と、LangChainを用いたチャンク分割の方法をご紹介します。

Azure AI Document Intelligenceとは

Azure Document Inteligenceとは、pdf や画像ファイルから情報抽出するOCRサービスです。取得可能な情報として、テキスト、テーブル、段落、座標、レイアウト情報を抽出できます。一般的な文章の文字起こしや、領収書や請求書などの読み取りなど様々なデータの処理が可能です。

様々な事前学習済みのモデルが提供されており、例えばLayoutモデルを用いると、文書構造(レイアウト情報)を保ったまま、Markdown の形式で抽出することが可能です。
Markdown の形式で抽出し、#、##等の見出しで分割することで、セマンティックチャンキングが可能となります。

続きを読む

本記事では、Azure AI SearchとLangChainを使用して、RAGシステムを構築する方法を解説します。

RAGは生成AIの精度を向上させるための有力な技術であり、Azure AI Searchの強力な検索機能とLangChainを組み合わせることで、効率的で高精度な情報検索と生成が可能になります。

前の記事:Azure AI Document IntelligenceとLangChainを活用したRAGの実装

Azure AI Searchとは

Azure AI Searchはクラウド型の検索サービスです。キーワード検索、ベクトル検索、ハイブリッド検索、セマンティック検索(意味的な再ランク付け)を利用できます。

Azure AI Searchでは、インデックス内に複数のJSON形式のドキュメントを格納する形式でデータを保存します。インデックスは、フィールド名、データ型(String, Int, Double等)、フィールド属性(検索可能,フィルター可能,ソート可能,キー等)を設定して作成します。 
続きを読む

AIエージェントは、知識を事前学習に依存しがちですが、実際の業務や未知の環境では 「その場で学び、適応する力」 が求められます。

本記事では、NeurIPS 2024 に採択された論文「Mars: Situated Inductive Reasoning in an Open-World Environment」を取り上げ、AIエージェントにおけるメモリ設計の考え方を検討します。

Marsの提案 ― 経験を「ルール」と「スキル」に変換する

論文では、環境Marsを提案し、AIエージェントの手法として、Skill LibraryとInduction from Reflection(IfR)でルール抽出&活用を実施しています。その際、単に経験を記憶するのではなく、「抽象化」して再利用することに注目しています。

ルール(世界モデル):経験から導かれる一般的な因果関係
スキル(成功パターン):ゴール達成に有効だった手順

AIは「経験 → 抽象化 → 応用 → 失敗から修正 → 知識化」という学習サイクルを繰り返し、未知の状況でも柔軟に推論できるようになります。

続きを読む

DeepSeek-R1-Distill(ローカルLLM)を用いたRAGの実装方法を解説します。

参考書籍:


3つの基礎知識

ローカルLLMとは

ローカル LLMとは、クラウド環境ではなく、PCなどのローカル環境で稼働するLLMを指します。
推論時のインターネット接続が不要で、外部への情報漏洩リスクが少なく、API使用料がありません。小型モデルの場合、GPUと一定以上のメモリを持つPC(もしくはColab環境)を利用すれば無料で動かせます。
動作に必要なメモリ量は、7Bパラメータで8GB、14Bパラメータで16GBがざっくりの目安です。
続きを読む

OpenAIのRAG(Retrieval Augmented Generation、検索拡張生成)を紹介します。
RAGの手法により、企業の社内文書や最新ニュースなど、GPTが学習していない独自の知識を元に、回答することが可能です。

RAG(Retrieval Augmented Generation)とは

質問文に対し、検索した参考情報(Context)を付けてLLMに質問する仕組みがRAGです。RAGは質問タスクを、Contextの検索タスクに変換していると言えます。

RAGの典型的な処理の流れは、以下の通りです。
①外部データ準備:社内文書などの外部データを収集、前処理する。
②インデックス作成:収集した外部データを、チャンク分割、ベクトル化して検索システム(ベクトルDB)に登録する。
③検索:質問文をベクトル化して、類似度等で検索処理を行う。
④回答生成:検索結果と質問文を生成AIのプロンプトとしてに与えて、LLMに回答文書を生成させる。
続きを読む

↑このページのトップヘ