GraphRAG
AI & LLMsA modular graph-based Retrieval-Augmented Generation (RAG) system
Release History
View all versions →v3.1.22 fixesThis patch release updates dependencies and fixes minor issues including doc string parameters and event loop preservation in the LLM cache middleware.
v3.1.16 fixes1 featureThis release introduces a native CosmosTableProvider with namespace partitioning and includes several bug fixes for logging, data handling, and type hints. It also updates the litellm dependency and loosens the service_tier type for greater flexibility.
v1.2.2v3.1.03 featuresVersion 3.1.0 introduces significant enhancements to the CosmosTableProvider, including native support for namespace partitioning and transactional batch writes, alongside an update to the litellm dependency.
3.0.92 fixes3 featuresThis release (v3.0.6 to v3.0.9) introduces NLP streaming and Parquet reader support, fixes documentation links, and updates dependencies to address security vulnerabilities.
v3.0.81 fixThis patch release updates the nltk dependency to address a security vulnerability (CVE-2025-14009).
v2.7.2v1.2.1v3.0.71 fixThis patch release pins the litellm dependency and updates vector store sizing logic based on the embedding model used.
v3.0.61 fix1 featureThis release introduces NLP streaming and fixes an issue related to phantom entity relationships.
v3.0.51 fix1 featureThis patch release (v3.0.5) includes a fix for the CSV file reader and introduces batch loading for documents in the vector store.
v3.0.41 fix8 featuresThis release introduces significant streaming capabilities across several core document and graph processing steps, alongside bug fixes and enhancements to vector operations.
v3.0.2Breaking2 fixes6 featuresThis patch introduces significant enhancements to data handling with new TableProvider abstractions, CSV support, and asynchronous reading capabilities. It also removes the NetworkX dependency from graph utilities.
v3.0.11 fixThis patch release addresses a missing dependency issue.
v3.0.0Breaking1 featureThis major release introduces a significant monorepo restructure, splitting the codebase into several new dedicated packages and requiring users to reinitialize their configuration.
v2.7.1This patch release pins the pandas dependency to version 2.3.3 for stability.
v2.7.01 fix1 featureThis release sets LiteLLM as the default for content initialization and resolves an Azure authentication scope issue when LiteLLM is used.
v2.6.04 fixes5 featuresThis release introduces support for LiteLLM providers, adds new configuration options for NLP and vector stores, and includes several bug fixes, notably correcting 0-based indexing for human_readable_id fields.
v.2.5.01 featureThis release introduces an enhancement to the build index signature by adding an additional context variable and migrates the internal package management from Poetry to UV.
v.2.4.03 fixes2 featuresThis release introduces the ability to inject custom pipelines and refactors the StorageFactory using a registration-based approach, alongside several minor fixes and cleanup.
v2.3.0Breaking3 fixes2 featuresVersion 2.3.0 removes Dynamic Max Retries support, updates dependencies including pyarrow, and introduces fixes for LLM responses and search prompts.
v2.2.12 fixesThis patch release addresses minor issues, including fixes for prompt tuning responses and missing edge weights in graph creation, alongside workflow updates.
v2.2.02 fixes2 featuresThis release introduces support for OpenAI reasoning models and adds an option to snapshot raw extracted graph tables, alongside various minor fixes and alignment updates.
v2.1.04 featuresThis minor release introduces support for JSON input files and updates the prompt tuning client with new metadata injection capabilities and output file naming conventions.
v2.0.0Breaking7 fixes11 featuresVersion 2.0.0 introduces major architectural changes, including reworking the API to accept callbacks, reorganizing workflows, and refactoring configuration management into type-safe dataclasses. This release also adds features like LLM provider registration and multi-index querying support.
Common Errors
BadRequestError9 reportsBadRequestError in graphrag often arises from incorrect data types or invalid values passed to the OpenAI API, particularly within parameters like `max_tokens`, `previous_response_id`, or content violating audit policies. To fix, carefully inspect the data being sent to the OpenAI API, ensuring all parameters conform to the expected data types and ranges as defined by the OpenAI documentation, and implement robust input validation and sanitization to prevent invalid or inappropriate content.
FailedToGenerateValidJsonError4 reportsThe "FailedToGenerateValidJsonError" often arises when attempting to serialize Python objects containing unserializable data types (e.g., custom classes, SQLAlchemy models) directly into JSON. To resolve this, ensure all objects being serialized are primitive types (string, integer, boolean, list, dictionary) or provide custom serialization logic (e.g., using a `default` function in `json.dumps` or converting objects to dictionaries manually) to handle non-serializable attributes. Consider using libraries like `marshmallow` for complex object serialization.
FileNotFoundError2 reportsFileNotFoundError in graphrag usually means a specified file or database table path is incorrect or the resource doesn't exist at that location. Double-check the file path or table name for typos and ensure the file or table has been created or initialized before being accessed by the code. If using ChromaDB, ensure the collection name is spelled correctly and the database is accessible.
JSONDecodeError2 reportsJSONDecodeError usually arises from malformed JSON strings returned by the LLM, often containing invalid control characters or incorrect formatting. To fix this, implement error handling using a `try-except` block to catch the `JSONDecodeError`, then sanitize the LLM response by removing or replacing problematic characters (e.g., using regex to remove control characters) before attempting to decode it again. Ensure the cleaned string consistently adheres to JSON standards before decoding.
UnicodeEncodeError1 reportUnicodeEncodeError often happens when trying to write or print Unicode characters to a destination that doesn't support them, like a file opened with the wrong encoding. To fix this, ensure your file is opened with the correct encoding (e.g., `open("file.txt", "w", encoding="utf-8")`) or encode the string to a compatible encoding before writing (`string.encode("utf-8")`). Choosing "utf-8" typically solves this problem for most Unicode characters.
WorkerLostError1 reportWorkerLostError in graphrag often signifies that a worker process executing a Ray task died unexpectedly, potentially due to exceeding memory limits, encountering a fatal error (like a ValueError due to unexpected data), or being preempted. To fix it, thoroughly examine the logs of the failed worker to pinpoint the root cause exception (e.g., memory error, specific ValueError), address the underlying issue in your code (e.g., optimize memory usage, handle malformed data gracefully), and ensure your Ray cluster has sufficient resources. Retrying the failed task with `ray.wait` might also help in cases of transient failures.
Related AI & LLMs Packages
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.
Get up and running with OpenAI gpt-oss, DeepSeek-R1, Gemma 3 and other models.
🦜🔗 The platform for reliable agents.
The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
LLM inference in C/C++
GPT4All: Run Local LLMs on Any Device. Open-source and available for commercial use.
Subscribe to Updates
Get notified when new versions are released