AI智能体项目 について
Spring AI を基盤とし、RAG、ツール呼び出し、マルチモーダル処理を組み合わせた AI エージェントの実装例です。コンピューター学習向けエージェントと、問題を分解してツールを使うエージェントを含みます。
主な機能
- 01SQL データベースや PDF を使った RAG
- 02外部サービス向けツール呼び出し
- 03画像と PDF のコンテンツ処理
- 04コンピューター学習向けエージェント
- 05CoT と ReAct による問題分解
活用シーン
- 01検索した知識によるコンピューター学習の質問対応
- 02プロジェクトのデータベースや PDF からの情報取得
- 03複雑な質問の分解とツール呼び出し
詳細
AI エージェントプロジェクト
これは Spring AI フレームワークに基づいて構築された AI エージェントプロジェクトです。RAG(検索拡張生成)、Tool Calling、マルチモーダルコンテンツ処理(MCP)、および Agent 技術を組み合わせて、強力なインテリジェントアプリケーションを構築する方法を示すことを目的としています。
モデル 1:AI 学習エージェント
RAG、Tool Calling、MCP を使用して、主にコンピュータ学習の簡単な問題を解決し、ナレッジベースを呼び出して外部知識を取得します。SystemPrompt とナレッジベースを変更するだけで、あなた自身の専属 AI を得ることができます。
モデル 2:AI スーパーエージェント
CoT 思考チェーンと ReAct 思考行動を使用して、1 つの問題を分解して回答し、ツールを呼び出して問題を解決します。
コア技術の特徴
1. Spring AI
本プロジェクトはコアフレームワークとして Spring AI を採用しています。これは OpenAI や Hugging Face などのさまざまな AI モデルを統合するための、シンプルで統一された API セットを提供します。Spring AI を通じて、テキスト生成、埋め込み、画像処理などの操作を簡単に実行でき、AI アプリケーション開発を大幅に簡素化できます。
2. RAG(検索拡張生成)
AI モデルの知識の幅と精度を向上させるため、本プロジェクトは RAG 技術を統合しています。RAG を通じて、AI エージェントはプロジェクト内の SQL データベースや PDF ドキュメントなどの外部ナレッジベースから関連情報を検索し、それをコンテキスト入力として言語モデルに提供することで、より正確でより情報量の多い応答を生成できます。これは特定の領域知識またはリアルタイムデータの処理に非常に有用です。
3. Tool Calling
エージェントは Tool Calling 機能を通じて、ユーザーの指示または現在のタスクの必要性に応じて、外部ツールまたはサービスを動的に呼び出して複雑な操作を完了できます。たとえば、エージェントはデータベースクエリツールを呼び出してデータを取得したり、ファイル処理ツールを呼び出してドキュメントを解析したりできます。これにより、エージェントはテキストインタラクションに限定されず、外部システムとの深い統合が可能になります。
4. MCP(マルチモーダルコンテンツ処理)
本プロジェクトはマルチモーダルコンテンツ処理をサポートし、特に画像と PDF ドキュメントを対象としています。MCP を通じて、エージェントは異なる形式の情報を理解および処理でき、例えば PDF からテキストコンテンツを抽出したり、画像を分析したりできます。これにより、エージェントはより豊富なユーザー入出力を処理できます。
5. Agent
本プロジェクトの AI エージェント(Agent)はコアコンポーネントであり、ユーザーの意図を理解し、実行ステップを計画し、RAG、Tool Calling、MCP などの機能を利用してタスクを完了できます。Agent の設計により、システムはより強い自律性と問題解決能力を備え、より複雑なビジネスロジックとユーザーリクエストを処理できます。
プロジェクト表示
プロジェクト構成概要
.gitignore
.mvn/
chatMemory/
pom.xml
sql/
├── table.sql
src/
├── main/
│ ├── java/
│ └── resources/
└── test/
└── java/
tmp/
├── files/
├── pdf/
└── resource/
zxc-agent-picture-search-mcp-server/ # 可能包含图片搜索和多模态内
容处理相关服务
├── .gitignore
├── .mvn/
├── pom.xml
└── src/
├── main/
└── test/
zxcAgent-Front/ # 前端项目,可能用于展示智能体交互界面
├── .gitignore
├── README.md
├── index.html
├── package-lock.json
├── package.json
├── public/
│ └── vite.svg
├── src/
│ ├── App.vue
│ ├── assets/
│ ├── components/
│ ├── main.js
│ ├── router/
│ ├── style.css
│ └── views/
└── vite.config.js
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。