Skip to main content

Graph + Vector retrieval system for InterSystems IRIS with hybrid search, openCypher, and GraphQL APIs

Project description

IRIS Vector Graph

The ultimate Graph + Vector + Text Retrieval Engine for InterSystems IRIS.

Python 3.11+ InterSystems IRIS License: MIT

IRIS Vector Graph is a general-purpose graph utility built on InterSystems IRIS that supports and demonstrates knowledge graph construction and query techniques. It combines graph traversal, HNSW vector similarity, and lexical search in a single, unified database.


Why IRIS Vector Graph?

  • Multi-Query Power: Query your graph via SQL, openCypher, or GraphQL — all on the same data.
  • Blazing Fast Vectors: Native HNSW indexing delivering ~1.7ms search latency (vs 5.8s standard).
  • Zero-Dependency Integration: Built with IRIS Embedded Python — no external vector DBs or graph engines required.
  • Production-Ready: The engine behind iris-vector-rag for advanced RAG pipelines.

Quick Start

# 1. Clone & Sync
git clone https://github.com/intersystems-community/iris-vector-graph.git && cd iris-vector-graph
uv sync

# 2. Spin up IRIS
docker-compose up -d

# 3. Start API
uvicorn api.main:app --reload

Visit:


Unified Query Engines

openCypher

MATCH (p:Protein {id: "PROTEIN:TP53"})-[:interacts_with*1..2]->(target)
RETURN p.name, target.name

GraphQL

query {
  protein(id: "PROTEIN:TP53") {
    name
    interactsWith(first: 5) { id name }
    similar(limit: 3) { protein { name } similarity }
  }
}

SQL (Hybrid)

SELECT TOP 10 id, 
       kg_RRF_FUSE(id, vector, 'cancer suppressor') as score
FROM nodes
ORDER BY score DESC

Performance

Operation Standard IRIS ACORN-1 (HNSW) Gain
Vector Search 5,800ms 1.7ms 3400x
Graph Hop 1.0ms 0.09ms 11x
Ingestion 29 nodes/s 6,496 nodes/s 224x

Interactive Demos

Experience the power of IRIS Vector Graph through our interactive demo applications.

Biomedical Research Demo

Explore protein-protein interaction networks with vector similarity and D3.js visualization.

Fraud Detection Demo

Real-time fraud scoring with transaction networks and bitemporal audit trails.

To run the demos:

# Start the demo server
export PYTHONPATH=$PYTHONPATH:$(pwd)/src
uv run uvicorn src.iris_demo_server.app:app --port 8200 --host 0.0.0.0

Visit http://localhost:8200 to begin.


iris-vector-rag Integration

IRIS Vector Graph is the core engine powering iris-vector-rag. You can use it in your RAG pipelines like this:

from iris_vector_rag import create_pipeline

# Create a GraphRAG pipeline powered by this engine
pipeline = create_pipeline('graphrag')

# Combined vector + text + graph retrieval
result = pipeline.query(
    "What are the latest cancer treatment approaches?",
    top_k=5
)

Documentation


Author: Thomas Dyar (thomas.dyar@intersystems.com)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iris_vector_graph-1.2.0.tar.gz (885.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iris_vector_graph-1.2.0-py3-none-any.whl (256.4 kB view details)

Uploaded Python 3

File details

Details for the file iris_vector_graph-1.2.0.tar.gz.

File metadata

  • Download URL: iris_vector_graph-1.2.0.tar.gz
  • Upload date:
  • Size: 885.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for iris_vector_graph-1.2.0.tar.gz
Algorithm Hash digest
SHA256 11deb47d07c7e0b206f393ebbcbbf8244695ff337152a942c03d1726614452a0
MD5 d00116279f105fa68af4c4d717a1bd67
BLAKE2b-256 9ae516f4e9e99ed8e0116212a38c0ce2d35376c8b672d09c5e4411ecdbace3ed

See more details on using hashes here.

File details

Details for the file iris_vector_graph-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for iris_vector_graph-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2ab62c2817001fa77cdc76587e2cddcc4a5e8dde70f071ac71a8fbbb81b6ebe2
MD5 3ae31d53a11505dcb5dc7e963e35262a
BLAKE2b-256 d9eed443413fff774a6c09cd15236ae799a303dfe293de80e9cb01f9f4603ee4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page