jiku log

データサイエンスの核心を掴む : 学びと発見の記録

「RAG・AIエージェント[実践]入門」を読む ~第1章 LLMアプリケーション開発の基礎~

はじめに

OpenAIの大規模言語モデル(Large Language Model)を活用したサービスであるChatGPTの登場以来,業務においてもLLM・生成AIが活用され,2024年現在ではかなり浸透している。

業務でLLMを活用していくためには,検索拡張生成(RAG)やAIエージェントといった技術が必要になってくると考えられる。これらの技術の基礎知識と実践経験を積むために,西見公宏・吉田真吾・大嶋勇樹 著「LangChainとLangGraphによるRAG・AIエージェント[実践]入門」を読むことにした。

本記事は,第1章 「LLMアプリケーション開発の基礎」の読書メモである。

  • 本書の紹介ページ

gihyo.jp

https://raw.githubusercontent.com/yoshidashingo/langchain-book/main/assets/cover.jpg

第1章 LLMアプリケーション開発の基礎

1.1 活用され始めた生成AI

本節では,ChatGPTをはじめとしたLLM(大規模言語モデル)が,企業内で使われ始めたシーンについて説明している。特に重要な技術として,本書のテーマである検索拡張生成(Retrieval-Augmented Generation; RAG)について,従来のエンタープライズ検索システムの代替である,と紹介している。

本節において,社内ドキュメント検索以外の応用方法として,下記が挙げられている。

  1. 外部ソース統合型Q&Aサービス(デスクトップリサーチ)
  2. メタデータ活用型分析(Text-to-SQL)
  3. カスタマーサポートの強化
  4. コンテンツ生成の自動化
  5. コード生成と最適化

今後の方向性として,特定のドメインに特化したモデルマルチモーダル,そしてこれらを統合して複雑なワークフローの自動化を実現するAIエージェントの普及が進む,と説明している。

1.2 Copilot vs AIエージェント

本節では,GitHub CopilotMicrosoft Copilotなどの"Copilot型"アプリケーションの問題点とAIエージェントの重要性について説明している。

AIエージェントの特徴は,置かれている環境を認識して,複雑な目標に対して自律的に稼働することである。

本節においてCopilot型のAIシステムとAIエージェントの違いは下表のように説明されている。

Copilot型AIシステム AIエージェント
環境情報や制約,記憶 都度人間から与えられる 置かれている環境を認識する
ユーザへの影響 ユーザ側で使いこなすスキルが必要 ユーザの手間を大幅に削減することが可能

1.4 AIエージェントの知識地図

本節では,本書におけるAIエージェントの説明の流れについて紹介している。
本書の前半・後半において紹介される内容は以下の通りである。

  • 前半
    • OpenAIのチャットAPI
    • LangChainの基礎
    • ドキュメントの検索と生成を組合わせるシステムの構築・評価方法
  • 後半

まとめと感想

現在私の職場では,RAGを用いた社内データの検索に取組んでいる。私自身は直接検索システムの開発などに取り組んでいるわけではないが,今後全社にLLMを用いた仕組みを展開していくためには,LLMやRAGをきちんと理解し,可能な限り実践して勘所をつかんでおくことが重要だと考えている。

LLMは,要約や文書生成などができるため,企画や文章作成,プログラム開発などを行なう作業者の作業時間を直接減らすことが可能になる。労働時間が減れば,自由な時間が増えたり,無駄な残業が減らせる可能性がある。そのためにもAIエージェントを作って,私自身の業務を効率化できればいいなと考えている。

本書はまだ読み始めたばかりだが,しっかり学んでいきたい。


本記事を最後まで読んでくださり,どうもありがとうございました。