Frequently Asked Questions

Product Information

What is FalkorDB and what does it do?

FalkorDB is a high-performance, open-source graph database designed for managing complex relationships and enabling advanced AI applications. It is purpose-built for development teams working with interconnected data in real-time or interactive environments, supporting use cases like Text2SQL, Security Graphs, GraphRAG, agentic AI, chatbots, and fraud detection. Learn more.

What are the main use cases for FalkorDB?

FalkorDB is used for Text2SQL (natural language to SQL on complex schemas), building security graphs for CNAPP, CSPM & CIEM, advanced GraphRAG (graph-based retrieval-augmented generation), agentic AI and chatbots, fraud detection, and as a high-performance graph database for complex relationships. See all use cases.

What is GraphRAG and how does FalkorDB support it?

GraphRAG (Graph-based Retrieval-Augmented Generation) is a technique that combines LLMs with external knowledge retrieval from graph databases. FalkorDB powers GraphRAG systems by providing low-latency, scalable knowledge graphs and vector indexing, enabling richer, more insightful data retrieval for LLM-powered applications. Learn more about GraphRAG.

How does FalkorDB integrate with LlamaIndex?

FalkorDB integrates with LlamaIndex to enable efficient RAG (Retrieval-Augmented Generation) systems. LlamaIndex acts as the orchestration layer, handling data ingestion, indexing, and querying, while FalkorDB serves as the underlying graph database for storing and retrieving knowledge graph data. This integration allows you to build advanced, context-aware AI applications. See LlamaIndex integration docs.

What programming languages and query languages does FalkorDB support?

FalkorDB supports the Cypher query language, which is widely used for graph databases. It is written in C and Rust for high performance and can be accessed via APIs and SDKs in multiple programming languages. See documentation.

Is FalkorDB open source?

Yes, FalkorDB is open source, encouraging community collaboration and transparency. View the GitHub repository.

What deployment options are available for FalkorDB?

FalkorDB can be deployed in the cloud (FalkorDB Cloud), on-premises, or locally using Docker. You can sign up for FalkorDB Cloud, run a free instance, or deploy via Docker with the official image. See Docker guide.

Does FalkorDB provide an API?

Yes, FalkorDB provides a comprehensive API with references and guides for developers, data scientists, and engineers. Access the API documentation.

Where can I find technical documentation for FalkorDB?

FalkorDB offers complete technical documentation, including setup guides, API references, and advanced configuration instructions. See the official documentation.

Features & Capabilities

What are the key features of FalkorDB?

FalkorDB offers ultra-low latency (up to 496x faster than competitors), 6x better memory efficiency, support for 10,000+ multi-graphs (tenants), open-source licensing, linear scalability, advanced AI integration (GraphRAG & agent memory), cloud and on-prem deployment, and built-in multi-tenancy. See all features.

How does FalkorDB support advanced AI applications?

FalkorDB is optimized for AI use cases such as GraphRAG and agent memory, enabling intelligent agents and chatbots with real-time adaptability. It combines graph traversal with vector search for personalized user experiences and supports frameworks like LlamaIndex and LangChain for LLM integration.

What integrations does FalkorDB offer?

FalkorDB integrates with LlamaIndex, LangChain, Graphiti (by ZEP), Cognee, and g.v() for visualization. These integrations enable advanced AI workflows, knowledge graph visualization, and seamless LLM connectivity. See all integrations.

Does FalkorDB support multi-tenancy?

Yes, FalkorDB supports robust multi-tenancy in all plans, allowing management of over 10,000 multi-graphs. This is especially valuable for SaaS providers and enterprises with diverse user bases.

How does FalkorDB handle scalability?

FalkorDB is designed for linear scalability, supporting flexible horizontal scaling and efficient management of large-scale, high-dimensional data. It can handle over 10,000 multi-graphs and is suitable for both small teams and large enterprises.

What visualization tools are available for FalkorDB?

FalkorDB offers the FalkorDB Browser for visualizing knowledge graphs. You can access it at http://localhost:3000/ when running locally, or use g.v() for advanced visualization needs. See FalkorDB Browser.

What is the GraphRAG-SDK and how does it help with compliance?

The GraphRAG-SDK is a framework provided by FalkorDB to help organizations stay ahead of financial regulations. It maps regulations to workflows, identifies compliance gaps, and provides actionable recommendations. Learn more about GraphRAG-SDK.

What are the performance metrics for FalkorDB?

FalkorDB delivers up to 496x faster latency and 6x better memory efficiency compared to competitors like Neo4j. It also supports over 10,000 multi-graphs and offers real-time, interactive analysis of complex data. See benchmarks.

Pricing & Plans

What pricing plans does FalkorDB offer?

FalkorDB offers four main pricing plans: FREE (for MVPs with community support), STARTUP (from /1GB/month, includes TLS and automated backups), PRO (from 0/8GB/month, includes cluster deployment and high availability), and ENTERPRISE (custom pricing with VPC, custom backups, and 24/7 support). See pricing details.

What features are included in the FREE plan?

The FREE plan is designed for building a powerful MVP and includes community support. It allows you to try FalkorDB at no cost and is suitable for initial development and testing.

What features are included in the STARTUP plan?

The STARTUP plan starts at /1GB/month and includes TLS encryption and automated backups, making it suitable for small teams and early-stage projects.

What features are included in the PRO plan?

The PRO plan starts at 0/8GB/month and includes advanced features such as cluster deployment, high availability, and enhanced support for production environments.

What features are included in the ENTERPRISE plan?

The ENTERPRISE plan offers tailored pricing and includes enterprise-grade features such as VPC deployment, custom backups, and 24/7 support. It is designed for large organizations with advanced requirements.

Competition & Comparison

How does FalkorDB compare to Neo4j?

FalkorDB offers up to 496x faster latency, 6x better memory efficiency, and includes multi-tenancy in all plans, unlike Neo4j where multi-tenancy is a premium feature. FalkorDB uses an in-memory storage model and is written in C and Rust for higher performance. See detailed comparison.

How does FalkorDB compare to AWS Neptune?

FalkorDB is open source, supports multi-tenancy, and offers better latency performance compared to AWS Neptune, which is proprietary and closed-source. FalkorDB also provides highly efficient vector search and supports the Cypher query language. See AWS Neptune comparison.

How does FalkorDB compare to TigerGraph?

FalkorDB delivers faster latency, more efficient memory usage, and flexible horizontal scaling compared to TigerGraph. Both support multi-tenancy and vector search, but FalkorDB is rated as 'fast' versus TigerGraph's 'adequate' latency. See comparison table.

How does FalkorDB compare to ArangoDB?

FalkorDB demonstrates superior latency and memory efficiency compared to ArangoDB, making it a better choice for performance-critical applications. Both support multi-tenancy and vector search, but FalkorDB offers more efficient scaling. See comparison table.

Why should I choose FalkorDB over other graph databases?

FalkorDB stands out for its exceptional performance (up to 496x faster latency), open-source licensing, built-in multi-tenancy, advanced AI integration, and proven success with customers in healthcare, media, and AI. It is trusted by organizations like AdaptX, XR.Voyage, and Virtuous AI. See case studies.

Use Cases & Benefits

Who can benefit from using FalkorDB?

FalkorDB is ideal for developers, data scientists, engineers, and security analysts at enterprises, SaaS providers, and organizations managing complex, interconnected data in real-time or interactive environments. It is especially valuable for teams building AI, security, and compliance solutions.

What business impact can I expect from FalkorDB?

Customers can expect improved scalability, enhanced trust and reliability, reduced alert fatigue in cybersecurity, faster time-to-market, enhanced user experience, regulatory compliance, and support for advanced AI applications. These outcomes help organizations unlock the full potential of their data and achieve strategic goals. Learn more.

What pain points does FalkorDB address?

FalkorDB addresses trust and reliability in LLM-based applications, scalability and data management challenges, alert fatigue in cybersecurity, performance limitations of competitors, interactive data analysis needs, regulatory compliance, and the development of agentic AI and chatbots.

What industries use FalkorDB?

FalkorDB is used in healthcare (AdaptX), media and entertainment (XR.Voyage), and artificial intelligence/ethical AI development (Virtuous AI). See industry case studies.

Can you share customer success stories with FalkorDB?

Yes. AdaptX used FalkorDB to analyze clinical data and uncover hidden insights, XR.Voyage overcame scalability challenges in immersive media, and Virtuous AI built a high-performance, multi-modal data store for ethical AI. Read full case studies.

What feedback have customers given about FalkorDB's ease of use?

Customers like AdaptX and 2Arrows have praised FalkorDB for its rapid access to insights, ease of running non-traversal queries, and user-friendly dashboards. 2Arrows called it a 'game-changer' for performance and usability. See testimonials.

Technical Requirements & Implementation

How do I set up FalkorDB for a GraphRAG system?

You can set up FalkorDB using Docker with docker run -p 6379:6379 -p 3000:3000 -it --rm falkordb/falkordb:latest or sign up for FalkorDB Cloud. Then, integrate with LlamaIndex and configure your environment as shown in the official tutorials. See setup guide.

How long does it take to implement FalkorDB?

FalkorDB is built for rapid deployment, allowing teams to go from concept to enterprise-grade solutions in weeks, not months. Quick start options include Docker, Cloud, and comprehensive documentation. See implementation details.

What are the best practices for maintaining a GraphRAG pipeline with FalkorDB?

Best practices include regularly updating your knowledge base, monitoring query response times, implementing a feedback loop for quality control, and designing for scalability (e.g., sharding). See best practices.

What frameworks and libraries are required to use FalkorDB with LlamaIndex?

You need to install llama-index, llama-index-llms-openai, and llama-index-graph-stores-falkordb Python packages. You can also use JupyterLab for interactive development. See integration docs.

How do I visualize my knowledge graph in FalkorDB?

You can use the FalkorDB Browser at http://localhost:3000/ to visually explore and interact with your knowledge graphs. Select the 'falkor' graph to view your data.

Security & Compliance

Is FalkorDB SOC 2 Type II compliant?

Yes, FalkorDB is SOC 2 Type II compliant, meeting rigorous standards for security, availability, processing integrity, confidentiality, and privacy. See compliance details.

What security features does FalkorDB provide?

FalkorDB provides robust security features including protection against unauthorized access, operational availability, accurate and timely data processing, confidentiality safeguards, and privacy compliance. Learn more.

Support & Community

What support options are available for FalkorDB users?

FalkorDB offers comprehensive documentation, community support via Discord and GitHub Discussions, access to solution architects, and demo options. Enterprise customers receive 24/7 support. See support options.

Where can I find community resources for FalkorDB?

You can join the FalkorDB Discord server, participate in GitHub Discussions, and explore community projects and tutorials on the official website. See community resources.

FalkorDB Header Menu

LlamaIndex RAG: Build Efficient GraphRAG Systems

LlamaIndex RAG Implementation How to Get Started

Large language models (LLMs) and large vision models (LVMs) are incredible tools, but they have one big catch—they rely on static, pre-trained data. This often leads to outdated or incomplete responses. You can overcome this challenge by using Retrieval-Augmented Generation (RAG), a technique that enables LLMs to dynamically access and retrieve real-time, contextually relevant information from multiple data sources.

LlamaIndex RAG Implementation: How to Get Started

In this article, you’ll learn how to leverage LlamaIndex with FalkorDB to build an efficient RAG system. LlamaIndex is a versatile framework for developing LLM-powered applications, making it easy for you to connect LLMs with private or domain-specific data sources, including knowledge graph databases like FalkorDB. With LlamaIndex, you can seamlessly ingest, structure, and index data from diverse formats, such as PDFs, SQL databases, and APIs.

Meanwhile, FalkorDB offers a low-latency, scalable knowledge graph database that powers GraphRAG systems—RAG implementations enhanced by knowledge graphs, giving you access to richer, more insightful data retrieval. FalkorDB also includes vector indexing capabilities, making it a powerful tool for building advanced RAG applications.

What is Retrieval Augmented Generation (RAG)?

Retrieval-Augmented Generation (RAG) takes your LLM’s performance to the next level by combining it with external knowledge retrieval. With RAG, you can pull relevant information from external data sources—like documents, databases, or APIs—based on your input query. This retrieved data then “augments” the model’s response, helping you get more accurate, up-to-date, and contextually grounded answers every time.

The process typically involves two main components:

  1. Retrieval Module: This component searches and retrieves relevant data from external data stores, such as knowledge graphs. It converts the input query into a format appropriate for searching through the store, and finding the most contextually relevant information.
  2. Generation Module: After retrieving the relevant context, this module prompts the LLM with the information, which then generates a response that incorporates both the pre-trained knowledge and the retrieved data.


By combining these steps, you can use RAG systems to break free from the limitations of static, pre-trained data. With RAG, your LLM can continuously pull in fresh, domain-specific knowledge, making it an incredibly powerful tool—especially in fields where real-time information or specialized expertise is a must.

RAG also helps bypass the context window limitations that LLMs typically have, when dealing with large numbers of documents. To bypass this limitation, some LLMs are now starting to feature context windows of over a million tokens. However, research has shown that with large contexts, LLMs suffer from a problem known as ‘lost in the middle’, where the LLM may lose track of essential details that appear in the middle of the input context. This can lead to inaccuracies in response generation. RAG mitigates this issue by selectively retrieving only the most relevant snippets of information, keeping the input manageable for the LLM while ensuring that critical context is preserved.

Diagram explaining What is Retrieval Augmented Generation (RAG)

What is LlamaIndex?

LlamaIndex is an open-source framework that makes it easy for you to build LLM-powered applications. With its tools for ingesting different data structures, indexing, and querying, you can effortlessly create AI applications that tap into external knowledge.

LlamaIndex Components

LlamaIndex consists of several key components that can be combined when creating RAG systems:

Data Connectors: These act as a bridge between your data sources and the LLM. LlamaIndex allows you to easily ingest data from various sources such as APIs, PDFs, SQL databases, and cloud storage. The data is converted into a uniform format (document representation), making it ready for indexing and retrieval. LlamaHub provides a vast repository of pre-built data connectors, allowing you to plug and play different data types with minimal effort.

Llamaindex data connectors diagram FalkorDB

Data Indices: Once you’ve ingested your data, the next step is to organise it for efficient retrieval. With LlamaIndex, you can create structured indices tailored to your specific needs—whether it’s for question answering, summarization, or document search. These indices break the data into manageable chunks, like documents or nodes, making it easy for you to quickly retrieve the most relevant information.


Common types of indices:

  1. Vector Store Index
  2. List Index
  3. Tree Index
  4. Keyword Table Index
Llamaindex rag Data Indices hierarchy FalkorDB

Query Interface: The query interface is the component that allows you to interact with the data using natural language prompts. This interface handles the user’s query, retrieves the relevant data from the indexed documents, and passes it along with the query to the LLM for generating an answer. It also supports more advanced workflows, allowing you to chain together multiple retrieval and generation steps to deliver knowledge-augmented outputs in real-time.

Key components of the Query Interface:

  1. Query Engines
  2. Retriever
  3. Response Synthesiser
Llamaindex rag query interface diagram

Why Use LlamaIndex for RAG?

LlamaIndex makes it easier for you to build RAG systems by streamlining data integration and query handling. You can easily connect to diverse data sources — APIs, PDFs, databases — through data connectors, and this allows you to ingest data with minimal effort. With its built-in data indexing, you can structure your data efficiently and simplify the retrieval step.

LlamaIndex is great for low-code AI, which means you can set up AI workflows quickly without getting bogged down by complex setups. The real-time query interface ensures you can retrieve and augment your LLM’s responses with the most relevant data, making it ideal for use cases like RAG systems. 

It also supports advanced use cases, like knowledge-graph-powered RAG systems​, which is what we will showcase in this tutorial. 

How to Build RAG Applications Using LlamaIndex

There are two parts to a RAG system: the retrieval module and the generation module. We will use LlamaIndex to orchestrate the two steps. To power our retrieval module, we will use FalkorDB. For the generation, you can use any LLM that has been trained on Cypher queries, which are needed for fetching data from modern graph databases like FalkorDB.

How to Build RAG Applications Using FalkorDB

Get GraphRAG, CodeGraph and Graph DBMS news, code examples and opinions delivered weekly.

No spam, cancel anytime.

Setting Up

Before implementing our RAG system, we need to set up our environment. This includes starting the FalkorDB instance and installing the necessary libraries.

You can start the FalkorDB instance using Docker:

				
					docker run -p 6379:6379 -p 3000:3000 -it --rm falkordb/falkordb:latest

				
			

Alternatively, you can sign up for FalkorDB Cloud.

Next, launch a Jupyter Lab environment with the following steps: 

				
					$ pip install jupyterlab
$ jupyter lab

				
			

Now, install the required libraries. We’ll use OpenAI as the language model for processing context fetched from the knowledge graph:

				
					!pip install llama-index llama-index-llms-openai
!pip install llama-index-graph-stores-falkordb
				
			

Once installed, import the necessary libraries:

				
					from llama_index.core import SimpleDirectoryReader, KnowledgeGraphIndex
from llama_index.llms.openai import OpenAI
from llama_index.core import Settings
from IPython.display import Markdown, display
import os
				
			

Finally, set up the OpenAI API key as an environment variable:

				
					os.environ["OPENAI_API_KEY"] = "OPEN_AI_API_KEY"

				
			

You’re now ready to start coding your RAG system! 

Loading Documents

We will load documents from a specified directory using LlamaIndex’s SimpleDirectoryReader. These documents will then be used to populate the graph database by creating nodes and edges.

Before running the code, make sure you have created a folder named “data” in the working directory and populated it with data. For this tutorial, we’ll use the introduction and company description text from The Falcon User Guide from SpaceX.

				
					DIRECTORY_PATH="data"


reader = SimpleDirectoryReader(input_dir=DIRECTORY_PATH)
documents = reader.load_data()

				
			

Please note that the code above may take some time to execute. 

Setting Up LlamaIndex

Next, we’ll set up LlamaIndex with the OpenAI GPT 4o language model. We’ll also configure the chunk size, which allows us to specify the size of each chunk extracted from the documents we’ve loaded.

				
					llm = OpenAI(temperature=0, model="gpt-4o-2024-08-06")
Settings.llm = llm
Settings.chunk_size = 512
				
			

Setting Up FalkorDB

Assuming you’ve already launched the FalkorDB graph database using the Docker command, you can now connect to it using the FalkorDBGraphStore helper function in LlamaIndex. The storage_context object encapsulates the graph store settings and will be used to create or load indexes.

				
					from llama_index.graph_stores.falkordb import FalkorDBGraphStore
from llama_index.core import StorageContext


graph_store = FalkorDBGraphStore(
    "redis://localhost:6379", decode_responses=True
)
storage_context = StorageContext.from_defaults(graph_store=graph_store)

				
			

Populating FalkorDB Graph

We’ll now populate the FalkorDB knowledge graph using a simple function provided by LlamaIndex. In the code below, the max_triplets_per_chunk parameter controls the number of triplets created from each chunk of the document. These triplets are then stored in the FalkorDB knowledge graph for retrieval later.

				
					knowledge_graph_index = KnowledgeGraphIndex.from_documents(
    documents,
    max_triplets_per_chunk=5,
    storage_context=storage_context,
)

				
			

Once this step is complete, the knowledge graph will be ready to query.

Putting It All Together

Next, we’ll set up a query engine with the knowledge graph. The include_text parameter controls whether the query response should include the original document chunk. Once the query_engine is initialized, you can query the graph with a question related to the document you loaded.

				
					query_engine = knowledge_graph_index.as_query_engine(
    include_text=True, response_mode="tree_summarize"
)

				
			

RAG Output

You can now test your function with a query like: “List the products that SpaceX has developed.” When you invoke query_engine.query, it uses the GPT-4 model to convert the user query into a Cypher query, retrieves the relevant data from the knowledge graph, and constructs the following response using the fetched context data. This results in a response like the one below:

RAG output FalkorDB

As you can see, GraphRAG systems powered by FalkorDB and orchestrated with a framework like LlamaIndex are not only easy to build but also highly effective at providing contextually relevant and verifiable responses to user queries. LlamaIndex abstracts the complexities of working with Cypher queries, offering you a simple interface to harness the power of GraphRAG in your applications.

Visualising the Graph

We can also visualise the underlying graph that was created using FalkorDB Browser. To do so, head to http://localhost:3000 and then select the ‘falkor’ graph.

Visualising the Graph with falkordb screenshot FalkorDB

We only used the first page of the report, so the graph created was small. With larger dataset, you will a far more complex graph in the browser.

Best Practices for Maintaining LlamaIndex RAG Pipelines

To ensure that your GraphRAG system remains accurate and relevant, here are a few best practices you can follow. 

  1. Regular Updates: Keep your knowledge base up-to-date by periodically adding new documents and reindexing.
  2. Performance Monitoring: Monitor the user query response times and adjust chunk sizes or index types if needed.
  3. Quality Control: Implement a feedback loop to improve the quality of the responses over time.
  4. Scalability Considerations: Design your system to handle increasing amounts of data and queries as your application grows. You can use techniques like sharding to scale if required.

 

Why Choose FalkorDB for GraphRAG

FalkorDB is purpose-built to empower advanced GraphRAG solutions, offering features designed for efficiency, scalability, and ease of use. With its ultra-low latency graph processing and massive scalability, FalkorDB efficiently handles large datasets without compromising performance, making it ideal for real-time, data-rich applications.

Benchmarks highlight FalkorDB’s impressive speed and performance, positioning it as a leader in the industry. Additionally, FalkorDB supports advanced GraphRAG applications through its standalone GraphRAG-SDK framework, enabling developers to seamlessly build sophisticated, context-aware AI solutions.

To enhance the GraphRAG experience further, FalkorDB includes knowledge graph visualisation support via the FalkorDB Browser, allowing you to visually explore and interact with your knowledge graphs. This robust set of features makes FalkorDB an unparalleled platform for creating responsive and intelligent applications in the GraphRAG space.

Conclusion

Implementing a Retrieval-Augmented Generation (RAG) system with LlamaIndex and FalkorDB enables you to build powerful applications capable of leveraging real-time, structured knowledge from knowledge graphs. By combining LlamaIndex’s streamlined data ingestion, indexing, and querying with FalkorDB’s high-performance, ultra-low latency graph database, you can create RAG solutions that deliver both precision and scalability.

This guide outlined the steps to set up your environment, ingest and index data, and build a GraphRAG system using Cypher-based retrieval from FalkorDB. As RAG continues to evolve, frameworks like LlamaIndex and databases like FalkorDB will play a vital role in enabling LLMs to provide contextually relevant and reliable responses.

To get started with building enterprise-grade GraphRAG applications, sign up for FalkorDB Cloud or reach out to us for a demo.