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

SuiAgentic — это приложение на основе FastAPI для встраивания документов и семантического поиска, работающее на базе векторной базы данных Qdrant. Оно позволяет преобразовывать документы (из URL-адресов или локальных файлов) в встраивания, эффективно хранить их и извлекать релевантный контент с помощью запросов на естественном языке. Оно разработано для поддержки инструментов с улучшенным ИИ, таких как Cursor, Copilot, Claude и других клиентов, совместимых с MCP.

💡 Почему SuiAgentic? Многим организациям необходимо интегрировать контекст из внутренних документов (например, PRD, спецификации дизайна, вики) в инструменты, используемые разработчиками и работниками знаний. Однако консолидация документов из различных источников в централизованную, доступную для поиска базу знаний сложна и фрагментирована.

SuiAgentic решает эту проблему, предоставляя централизованный контекстный сервер, который принимает, разделяет, встраивает и индексирует ваш контент, делая его доступным через простой REST API и веб-интерфейс. Он также поддерживает использование в качестве сервера MCP для агентов ИИ.

🚀 Основные функции Встраивание документов: извлекает содержимое из URL-адресов (с аутентификацией или без нее), разбивает его на части, генерирует встраивания и сохраняет их в Qdrant.

Семантический поиск: выполняйте запросы к своей базе знаний на естественном языке и извлекайте соответствующие фрагменты или документы.

Веб-интерфейс: простой в использовании веб-интерфейс для встраивания и поиска.

REST API: полный доступ через конечные точки HTTP для автоматизации или интеграции.

Совместимость с MCP-сервером: используйте его с MCP-совместимыми клиентами, такими как Cursor, Copilot, Claude и т. д.

Поддержка аутентификации: поддерживает базовую аутентификацию и токен на предъявителя для защищенных документов.

⚙️ Быстрый старт

  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 (Векторная БД)

Использование Докера:

docker run -p 6333:6333 qdrant/qdrant

Или с помощью вспомогательного скрипта:

./runqdrant.sh
  1. Запустите приложение Agentic
uvicorn app.main:app --reload # or: python run.py

Посетите http://localhost:8000

🌐 Веб-интерфейс и API

Веб-интерфейс:

  • / - Дом
  • /embed — Встраивание документов через пользовательский интерфейс
  • /retrieve — Интерфейс семантического поиска

🔍 Опубликовать /извлечь

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

🌍 Встраивание из URL-адресов

Публичные URL-адреса:

  • Просто укажите URL-адрес через API или пользовательский интерфейс — аутентификация не требуется.

🤖 Использование в качестве MCP-сервера

Чтобы использовать sui в качестве сервера MCP:

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

Инструменты загрузки документов

В этом каталоге содержатся инструменты для массовой загрузки документов в базу данных SuiAgentic Qdrant.

Доступные инструменты

  1. upload_folder.py — простой скрипт для загрузки PDF-файлов из папки
  2. upload_documents.py — расширенный скрипт для загрузки файлов PDF, DOCX и TXT с дополнительными возможностями

Предпосылки

  • Питон 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. Отслеживайте метаданные для каждого документа

Аргументы командной строки

upload_folder.py

  • folder - Путь к папке, содержащей PDF-файлы.
  • --prefix — Префикс для добавления к именам документов

upload_documents.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

Приложение на базе FastAPI, которое обеспечивает встраивание документов и семантический поиск с использованием векторной базы данных Qdrant, позволяя пользователям преобразовывать документы во встраивания и извлекать релевантный контент с помощью запросов на естественном языке.

  1. Доступные инструменты
    1. Предпосылки
      1. Базовое использование
        1. Загрузить PDF-файлы из папки
        2. Расширенная загрузка документов
      2. Что делают эти инструменты
        1. Аргументы командной строки
          1. upload_folder.py
          2. upload_documents.py
        2. Примеры
          1. Организуйте документы по проектам
          2. Категоризировать документы
        3. Поиск неисправностей

          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