Skip to main content

Build upon GraphRAG, provide a quick solution setup and is part of the overall Qredence System like AgenticFleet and FleetUI

Project description

Overview

image

GraphFleet is an advanced implementation of GraphRAG from Microsoft, designed to enhance large language models' ability to reason about complex information and private datasets. It builds upon GraphRAG (Retrieval Augmented Generation using Graph structures) and will gradually adopt its own path to fulfill our roadmap at Qredence.

GraphFleet

GraphFleet uses knowledge graphs to provide substantial improvements in question-and-answer performance when reasoning about complex information. It addresses limitations of traditional RAG approaches: <<<<<<< HEAD

Roadmap

=======

origin/main

  • Provide a FleetUI Design Kit and a quicker way of starting GraphFleet locally.
  • Provide a Toddle interface ready to use for GraphFleet
  • Add integrations of Composio
  • Add integrations of LangSmith
  • Add few selfhosting one click deploy solutions.
  • Access GraphFleet through a secure and enterprise-ready Azure Cloud hosting version.
  • And way more... 👀

Key Features

  • Structured, hierarchical approach to Retrieval Augmented Generation.
  • Knowledge graph extraction from raw text.
  • Community hierarchy building.
  • Hierarchical summarization.
  • Enhanced reasoning capabilities for LLMs on private datasets.

Contribute

  • Leave us a star ♥
  • Fork and contribute to the project
  • Join the discord

Getting Started

Prerequisites

<<<<<<< HEAD

  • Python 3.10
  • Poetry
  • Make sure to have a virtual environment manager such as virtualenv installed =======
  • Python 3.11
  • Make sure to have a virtual environment manager such as virtualenv installed

origin/main

Installation

  1. Clone the repository: <<<<<<< HEAD =======
   git clone https://github.com/Qredence/GraphFleet.git
   cd GraphFleet

origin/main

git clone https://github.com/Qredence/GraphFleet.git
cd GraphFleet

<<<<<<< HEAD 2. Simply run these in your terminal:

poetry shell
poetry install

======= 2. Create a virtual environment and activate it:

python3.11 -m venv gfleetenv
source gfleetenv/bin/activate
  1. Install dependencies:
pip install -r requirements.txt

origin/main

Usage

  1. Configuration: Environment Variables: Set up your environment variables in a .env file (refer to the .env.example file for available options). Key variables include: <<<<<<< HEAD

    export GRAPHRAG_API_KEY="<apikey>"
    export GRAPHRAG_API_BASE="custom base api url"
    export GRAPHRAG_API_VERSION="version (if not OpenAI)"
    export GRAPHRAG_LLM_MODEL="model name"
    export GRAPHRAG_DEPLOYMENT_NAME="model name"
    export GRAPHRAG_EMBEDDING_MODEL="embedding model"
    

    settings.yaml: Customize GraphFleet's behavior further by modifying the settings.yaml file within the graphfleet directory.

  2. Data Indexing: Jupyter Notebook Guide: Follow the instructions provided in the get-started-graphfleet.ipynb notebook to learn how to index your data with GraphFleet. This notebook provides a hands-on experience for setting up your knowledge base.

  3. Interacting with GraphFleet: Jupyter Notebooks: Explore GraphFleet's capabilities with the provided notebooks:

    get-started-graphfleet.ipynb: A comprehensive guide to indexing your data and running basic queries.

    Local Search Notebook.ipynb: Demonstrates local search techniques.

    app.py (FastAPI Application): Run a Streamlit-powered web interface to interact with GraphFleet using a user-friendly chat-like interface.

Start the application

streamlit run app.py

Access the interface in your web browser at the provided URL (usually http://localhost:8080).

=======

GRAPHRAG_API_KEY
GRAPHRAG_API_BASE (for Azure OpenAI)
GRAPHRAG_API_VERSION (for Azure OpenAI)
Other settings related to your LLM and embedding models.
settings.yaml: Customize GraphFleet's behavior further by modifying the settings.yaml file within the graphfleet directory.
  1. Data Indexing:

Jupyter Notebook Guide: Follow the instructions provided in the get-started-graphfleet.ipynb notebook to learn how to index your data with GraphFleet. This notebook provides a hands-on experience for setting up your knowledge base.

  1. Interacting with GraphFleet: Jupyter Notebooks: Explore GraphFleet's capabilities with the provided notebooks:

get-started-graphfleet.ipynb: A comprehensive guide to indexing your data and running basic queries. Local Search Notebook.ipynb: Demonstrates local search techniques. [Add descriptions of other notebooks and their purpose here] app.py (FastAPI Application): Run a Streamlit-powered web interface to interact with GraphFleet using a user-friendly chat-like interface:

Start the application:

streamlit run app.py

Access the interface in your web browser at the provided URL (usually http://localhost:8080).

origin/main

python -m graphrag.query --root ./graphfleet --method local "What are the key features of GraphRAG ??"

For Global query mode :

python -m graphrag.query --root ./graphfleet --method global "What are the top main features of GraphRAG"

<<<<<<< HEAD

=======

origin/main

Running the API only

To run the API, save the code in a file named api.py and execute the following command in your terminal:

uvicorn api:app --reload --port 8001

Security

Security

License

text

Star History

<<<<<<< HEAD Star History Chart

Star History Chart

origin/main

Project details


Download files

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

Source Distribution

graphfleet-0.4.0.tar.gz (63.5 kB view hashes)

Uploaded Source

Built Distribution

graphfleet-0.4.0-py3-none-any.whl (66.3 kB view hashes)

Uploaded Python 3

Supported by

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