
plateerlab/synaptic-memory
Database managementЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Граф знаний + сервер инструментов MCP для агентов LLM с гибридным поиском, синхронизацией в реальном времени DB, корейской FTS и обратной связью с памятью.
Обзор
Сервер инструментов графа знаний + MCP для агентов LLM с гибридным поиском, синхронизацией живой базы данных на основе CDC и встроенным корейским FTS. Эта команда создает крошечный граф, поддерживаемый SQLite, и выполняет три поиска — все во время индексации. Omit -db для теста дыма с нулевой зависимостью. Полный источник для расширенного примера: examples/quickstart.py. Обычный RAG обычно отвечает от независимых кусков. Synaptic сначала создает график, поэтому агент может искать, следить за отношениями, проверять структурированные строки и запоминать, какие доказательства помогли. Это не замена векторной базы данных. Это граф и слой инструментов вокруг ваших существующих документов, данных SQL, конечной точки встраивания и времени выполнения агента. Вот так. Автодетектирует формат файла или схему DB, генерирует онтологический профиль, глотает, индексирует, строит FK-краи. - mode="cdc" позволяет постепенно обновлять: таблицы с обновленной колонкой в стиле at читаются с фильтром водяных знаков, другие возвращаются к хешированию контента в строке.
Обзор (машинный перевод)
** Путь по умолчанию: нулевой вызов API в момент индекса. Нулевая инфра. Нулевая блокировка.** Граф знаний + сервер инструментов MCP для агентов LLM с гибридным поиском База данных на основе CDC синхронизируется, а корейская FTS встроена.
Читать дальше → Readme
5-минутный старт
Эта команда создает крошечный граф с поддержкой SQLite и запускает три поиска — все ** без вызова LLM** во время индексации. В память о них вспоминать, Тест на нулевую зависимость. Полный источник для расширенного примера: [[Т1]].
Почему бы не сделать RAG?
Обычный RAG обычно отвечает от независимых кусков. Синаптик сначала строит график, агент может искать, следить за отношениями, проверять структурированные строки и запоминать Какие доказательства помогли.
Обычная RAG | Синаптическая память
| куски + векторный поиск | документы, куски, строки и края | | обычно восстанавливается при изменении данных | CDC синхронизируется для живых баз данных | | однократное извлечение по умолчанию | инструменты MCP для многооборотного исследования | | обратная связь живет вне индекса | необязательные события памяти, обратная связь и сигналы здоровья |
Это не замена векторной базы данных. Это граф и слой инструмента вокруг
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
Synaptic Memory
Default path: zero API calls at index time. Zero infra. Zero lock-in. A knowledge graph + MCP tool server for LLM agents, with hybrid retrieval, CDC-based live database sync, and Korean FTS built in.
5-minute start
pip install "synaptic-memory[sqlite,korean,vector]"
synaptic-quickstart --db quickstart.db
That command builds a tiny SQLite-backed graph and runs three searches — all
without calling any LLM at indexing time. Omit --db for an in-memory,
zero-dependency smoke test. Full source for the expanded example:
examples/quickstart.py.
Why not just RAG?
Plain RAG usually answers from independent chunks. Synaptic builds a graph first, so an agent can search, follow relations, inspect structured rows, and remember which evidence helped.
| Plain RAG | Synaptic Memory |
|---|---|
| chunks + vector search | documents, chunks, rows, and edges |
| usually rebuilds on data change | CDC sync for live databases |
| single-shot retrieval by default | MCP tools for multi-turn exploration |
| feedback lives outside the index | optional memory events, feedback, and health signals |
It is not a vector database replacement. It is the graph and tool layer around your existing documents, SQL data, embedding endpoint, and agent runtime.
Build and search
import asyncio
from synaptic import SynapticGraph
async def main():
# Any data → knowledge graph (CSV, JSONL, directory)
graph = await SynapticGraph.from_data("./my_data/", preset="rag")
try:
result = await graph.search("my question")
print(result.nodes[0].node.title if result.nodes else "no result")
finally:
await graph.close()
asyncio.run(main())
That’s it. Auto-detects file format or DB schema, generates an ontology profile, ingests, indexes, builds FK edges.
Presets keep the common knobs compact:
# local: deterministic, no external services (default)
graph = await SynapticGraph.from_chunks(chunks, preset="local")
# rag: reads SYNAPTIC_EMBED_URL / SYNAPTIC_RERANK_URL if set
graph = await SynapticGraph.from_data("./docs/", preset="rag")
# agent: rag + deterministic component bridging for multi-turn exploration
graph = await SynapticGraph.from_data("./docs/", preset="agent")
Live database sync (CDC) —
mode="cdc"enables incremental updates: tables with anupdated_at-style column are read with a watermark filter, others fall back to per-row content hashing. Deletes are detected via a TEMP TABLE LEFT JOIN; FK rewires re-link the corresponding RELATED edges. Search results are
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →