Knowledge Graph Retriever

KGTable Retriever.

class llama_index.indices.knowledge_graph.retrievers.KGRetrieverMode(value)

Query mode enum for Knowledge Graphs.

Can be passed as the enum struct, or as the underlying string.

KEYWORD

Default query mode, using keywords to find triplets.

Type

β€œkeyword”

EMBEDDING

Embedding mode, using embeddings to find similar triplets.

Type

β€œembedding”

HYBRID

Hyrbid mode, combining both keywords and embeddings to find relevant triplets.

Type

β€œhybrid”

class llama_index.indices.knowledge_graph.retrievers.KGTableRetriever(index: KnowledgeGraphIndex, query_keyword_extract_template: Optional[Prompt] = None, max_keywords_per_query: int = 10, num_chunks_per_query: int = 10, include_text: bool = True, retriever_mode: Optional[KGRetrieverMode] = KGRetrieverMode.KEYWORD, similarity_top_k: int = 2, **kwargs: Any)

KG Table Retriever.

Arguments are shared among subclasses.

Parameters
  • query_keyword_extract_template (Optional[QueryKGExtractPrompt]) – A Query KG Extraction Prompt (see Prompt Templates).

  • refine_template (Optional[RefinePrompt]) – A Refinement Prompt (see Prompt Templates).

  • text_qa_template (Optional[QuestionAnswerPrompt]) – A Question Answering Prompt (see Prompt Templates).

  • max_keywords_per_query (int) – Maximum number of keywords to extract from query.

  • num_chunks_per_query (int) – Maximum number of text chunks to query.

  • include_text (bool) – Use the document text source from each relevant triplet during queries.

  • retriever_mode (KGRetrieverMode) – Specifies whether to use keyowrds, embeddings, or both to find relevant triplets. Should be one of β€œkeyword”, β€œembedding”, or β€œhybrid”.

  • similarity_top_k (int) – The number of top embeddings to use (if embeddings are used).

retrieve(str_or_query_bundle: Union[str, QueryBundle]) List[NodeWithScore]

Retrieve nodes given query.

Parameters

str_or_query_bundle (QueryType) – Either a query string or a QueryBundle object.