
graphersal/graphersal
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
In-memory graph database and Gremlin traversal engine in Rust: browser playground, CLI, MCP server for AI agents, durable store, Python bindings.
Обзор
AI moves faster than the tools around it. We built Graphersal so you don't have to wait for them: a lightweight, embeddable graph engine you can turn into whatever your AI solution needs — a library inside your application, a tool for your agents, or a full server with your own features on top. It works out of the box: a browser UI, an MCP endpoint for AI agents, an AI chat where you simply ask about your graph in plain language and it writes and runs the queries for you, durable storage and transactions, and the safety to run queries you did not write — permissions, read-only access, resource limits and timeouts. You start with a working system, not with a list of components to wire together. Store your embeddings next to the graph and search them in the same query that walks it. A vector is a value type of its own (f32, or quantized to f16, i8 or bit to save memory), declared in the schema, searched exactly with nearest() and similarity() (cosine, dot product, L2, Hamming).
README
Показан фрагмент оригинального README. Открыть оригинал.
Graphersal
An in-memory graph database and traversal engine in Rust, queried with GQL, the ISO standard graph query language, and with Gremlin, with vector search for GraphRAG.
Playground · Book · Step reference · API docs · Mirror on GitHub Pages
Why Graphersal
AI moves faster than the tools around it. We built Graphersal so you don’t have to wait for them: a lightweight, embeddable graph engine you can turn into whatever your AI solution needs — a library inside your application, a tool for your agents, or a full server with your own features on top.
It works out of the box: a browser UI, an MCP endpoint for AI agents, an AI chat where you simply ask about your graph in plain language and it writes and runs the queries for you, durable storage and transactions, and the safety to run queries you did not write — permissions, read-only access, resource limits and timeouts. You start with a working system, not with a list of components to wire together.
Vector search and GraphRAG
Store your embeddings next to the graph and search them in the same query that walks it. A
vector is a value type of its own (f32, or quantized to f16, i8 or bit to save memory),
declared in the schema, searched exactly with nearest() and similarity() (cosine, dot product,
L2, Hamming). GraphRAG in one traversal: find the passages nearest to the question, then follow
the edges to what the graph knows about them, and hand that context to your language model.
// "What should I cook for my cat?" ~ the question's embedding
g.v().has_label("doc").nearest("emb", question, 2)
.project("title", "author", "topic")
.by("title")
.by(__.in("wrote").values("name"))
.by(__.out("about").values("name"))
Установка
docker run --rm -p 127.0.0.1:8080:8080 -v "$PWD/my.gstore:/data/graph.gstore:ro" graphersal