SuiAgentic

by AnhQuan2004
  • Linux
  • Apple

Integrations

  • Uses .env files for configuration management of connection parameters and application settings

  • Supports Docker for running the Qdrant vector database component, simplifying deployment and setup

  • Built on FastAPI to provide REST API endpoints for document embedding and semantic retrieval capabilities

🧠 スイエージェント

SuiAgenticは、Qdrantベクターデータベースを活用した、FastAPIベースのドキュメント埋め込みおよびセマンティック検索アプリケーションです。URLまたはローカルファイルからドキュメントを埋め込みに変換し、効率的に保存し、自然言語クエリを使用して関連コンテンツを取得できます。Cursor、Copilot、ClaudeなどのMCP対応クライアントなどのAI強化ツールをサポートするように設計されています。

💡 SuiAgentic を選ぶ理由 多くの組織では、社内文書(PRD、設計仕様書、Wiki など)のコンテキストを、開発者やナレッジワーカーが使用するツールに統合する必要があります。しかし、さまざまなソースからの文書を一元管理され、検索可能なナレッジベースに統合することは、複雑で断片化されています。

SuiAgenticは、コンテンツの取り込み、チャンク化、埋め込み、インデックス作成を行う集中型コンテキストサーバーを提供することでこの問題を解決し、シンプルなREST APIとWebインターフェースを介して利用できるようにします。また、AIエージェントのMCPサーバーとしても使用できます。

🚀 主な機能 ドキュメントの埋め込み: URL からコンテンツを抽出し (認証の有無にかかわらず)、それをチャンクに分割し、埋め込みを生成して Qdrant に保存します。

セマンティック検索: 自然言語を使用してナレッジベースをクエリし、関連するチャンクまたはドキュメントを取得します。

Web UI: 埋め込みや検索に使いやすい Web インターフェイス。

REST API: 自動化または統合のために HTTP エンドポイント経由で完全にアクセス可能です。

MCP サーバー対応: Cursor、Copilot、Claude などの MCP 対応クライアントで使用します。

認証サポート: 保護されたドキュメントの基本認証とベアラー トークンをサポートします。

⚙️ クイックスタート

  1. リポジトリのクローンを作成する
git clone https://github.com/AnhQuan2004/mcp_agent.git cd mcp_agent
  1. Python環境の設定
python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
  1. 依存関係をインストールする
pip install -r requirements.txt
  1. .env ファイルを作成する (または提供されている .env.example を使用する)
QDRANT_URL=localhost QDRANT_PORT=6333 QDRANT_COLLECTION_NAME=documents
  1. Qdrant(ベクターDB)を起動する

Docker の使用:

docker run -p 6333:6333 qdrant/qdrant

または、ヘルパー スクリプトを使用します。

./runqdrant.sh
  1. Agenticアプリを実行する
uvicorn app.main:app --reload # or: python run.py

http://localhost:8000にアクセスしてください

🌐 ウェブインターフェースとAPI

ウェブ UI:

  • / - 家
  • /embed — UI 経由でドキュメントを埋め込む
  • /retrieve — セマンティック検索UI

🔍 POST /取得

{ "query": "What is the architecture of Sui?", "top_k": 5, "group_by_doc": true }

🌍 URLからの埋め込み

公開 URL:

  • API または UI 経由で URL を提供するだけで、認証は必要ありません。

🤖 MCPサーバーとして使用する

sui を MCP サーバーとして使用するには:

{ "mcpServers": { "suiAgentic": { "url": "http://localhost:8000/mcp" } } }

ドキュメントアップロードツール

このディレクトリには、SuiAgentic Qdrant データベースにドキュメントを一括アップロードするためのツールが含まれています。

利用可能なツール

  1. upload_folder.py - フォルダからPDFファイルをアップロードするシンプルなスクリプト
  2. upload_documents.py - より多くのオプションを使用して PDF、DOCX、TXT ファイルをアップロードするための高度なスクリプト

前提条件

  • Python 3.8以上
  • SuiAgenticアプリケーションがインストールおよび設定されている
  • Qdrant サーバーはローカルで実行されているか、ネットワーク経由でアクセス可能
  • 必要な依存関係がインストールされています(PyPDF2、python-docx)

基本的な使い方

フォルダからPDFファイルをアップロードする

# Upload all PDFs from a folder python upload_folder.py /path/to/pdf/folder # Upload with a prefix (useful for categorizing documents) python upload_folder.py /path/to/pdf/folder --prefix "Research Papers"

高度なドキュメントアップロード

# Upload all supported documents from a folder and subfolders python upload_documents.py /path/to/documents --recursive # Add metadata tags to all documents python upload_documents.py /path/to/documents --tag category=research --tag project=alpha # Specify collection name (if not using default) python upload_documents.py /path/to/documents --collection my_collection # Complete example with all options python upload_documents.py /path/to/documents --recursive --prefix "Project X" --tag department=marketing --tag status=final

これらのツールの機能

  1. 指定されたフォルダ内のサポートされているドキュメントを検索します
  2. 各ドキュメントからテキストコンテンツを抽出する
  3. テキストを扱いやすいチャンクに分割する
  4. 各チャンクに対して3072次元の埋め込みを生成する
  5. チャンクと埋め込みをQdrantに保存する
  6. 各ドキュメントのメタデータを追跡する

コマンドライン引数

アップロードフォルダ.py

  • folder - PDFファイルを含むフォルダへのパス
  • --prefix - ドキュメント名に追加するプレフィックス

アップロードドキュメント.py

  • folder - ドキュメントを含むフォルダへのパス
  • --prefix - ドキュメント名に追加するプレフィックス
  • --recursive - サブフォルダ内のファイルを再帰的に検索します
  • --collection - 使用するQdrantコレクションの名前
  • --tag - ドキュメントにメタデータタグを追加します(複数回使用できます: --tag key=value

プロジェクトごとにドキュメントを整理する

python upload_documents.py /path/to/projects/project1 --recursive --prefix "Project 1" --tag project=alpha python upload_documents.py /path/to/projects/project2 --recursive --prefix "Project 2" --tag project=beta

ドキュメントを分類する

python upload_documents.py /path/to/contracts --prefix "Legal" --tag department=legal --tag confidential=true python upload_documents.py /path/to/manuals --prefix "Technical" --tag department=engineering

トラブルシューティング

  • 大きなドキュメントでメモリエラーが発生した場合は、小さなファイルに分割してみてください。
  • 大量の文書の場合は、小さなバッチで処理することを検討してください
  • 処理中にエラーが発生していないかログ出力を確認します

🪪 ライセンス

Apache License 2.0 に基づいてライセンスされています。

-
security - not tested
F
license - not found
-
quality - not tested

Qdrant ベクター データベースを使用したドキュメントの埋め込みとセマンティック検索を可能にする FastAPI ベースのアプリケーション。ユーザーはドキュメントを埋め込みに変換し、自然言語クエリを通じて関連コンテンツを取得できます。

  1. 利用可能なツール
    1. 前提条件
      1. 基本的な使い方
        1. フォルダからPDFファイルをアップロードする
        2. 高度なドキュメントアップロード
      2. これらのツールの機能
        1. コマンドライン引数
          1. アップロードフォルダ.py
          2. アップロードドキュメント.py
          1. プロジェクトごとにドキュメントを整理する
          2. ドキュメントを分類する
        2. トラブルシューティング

          Related MCP Servers

          • -
            security
            F
            license
            -
            quality
            Enables LLMs to perform semantic search and document management using ChromaDB, supporting natural language queries with intuitive similarity metrics for retrieval augmented generation applications.
            Last updated -
            Python
            • Apple
          • -
            security
            A
            license
            -
            quality
            Provides RAG capabilities for semantic document search using Qdrant vector database and Ollama/OpenAI embeddings, allowing users to add, search, list, and delete documentation with metadata support.
            Last updated -
            5
            4
            TypeScript
            Apache 2.0
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol server that enables semantic search capabilities by providing tools to manage Qdrant vector database collections, process and embed documents using various embedding services, and perform semantic searches across vector embeddings.
            Last updated -
            89
            TypeScript
            MIT License
          • -
            security
            A
            license
            -
            quality
            Enables semantic search across multiple Qdrant vector database collections, supporting multi-query capability and providing semantically relevant document retrieval with configurable result counts.
            Last updated -
            46
            TypeScript
            MIT License

          View all related MCP servers

          ID: k89urpzdu5