GraphQueryEngine

GraphQueryEngine(*args, **kwargs)

An abstract base class that represents a graph query engine on top of a underlying graph database.

This interface defines the basic methods for graph-based RAG.

Parameters:
NameDescription
*args
**kwargs

Instance Methods

add_records

add_records(self, new_records: list) -> bool

Add new records to the underlying database and add to the graph if required.

Parameters:
NameDescription
new_recordsType: list

init_db

init_db(self, input_doc: list[autogen.agentchat.contrib.graph_rag.document.Document] | None = None) -> 

This method initializes graph database with the input documents or records. Usually, it takes the following steps,

  1. connecting to a graph database.
  2. extract graph nodes, edges based on input data, graph schema and etc.
  3. build indexes etc.
Parameters:
NameDescription
input_doca list of input documents that are used to build the graph in database.

Type: list[autogen.agentchat.contrib.graph_rag.document.Document] | None

Default: None

query

query(
    self,
    question: str,
    n_results: int = 1,
    **kwargs
) -> autogen.agentchat.contrib.graph_rag.graph_query_engine.GraphStoreQueryResult

This method transform a string format question into database query and return the result.

Parameters:
NameDescription
questionType: str
n_resultsType: int

Default: 1
**kwargs