Keyword Path Retriever¶
KeywordsPathRetriever expands a query into key phrases, retrieves matching entity seeds, and synthesizes one-hop graph context into the returned node content. This makes graph neighborhoods directly usable by downstream prompting without exposing low-level traversal code first.
grawiki.retrieval.keywords
¶
Keyword-driven retriever with graph-context expansion.
Keywords
¶
Bases: BaseModel
Structured output returned by the keyword extraction model.
KeywordExtractor
¶
Bases: Protocol
Protocol for extracting key phrases from a raw query.
KeywordsPathRetriever
¶
Bases: Retriever
Retrieve entity seeds from extracted keywords and attach graph context.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
model
|
str
|
Chat model used by the default keyword extractor. |
required |
db
|
GraphDB
|
Graph database adapter used for vector search and neighbor expansion. |
required |
embedding
|
Embedding
|
Shared embedder used to embed extracted keywords. |
required |
keyword_extractor
|
KeywordExtractor | None
|
Override for tests or alternative extraction strategies. |
None
|
path_limit
|
int
|
Maximum number of one-hop relationships included per seed entity. |
5
|
retrieve
async
¶
retrieve(query, limit=5, *args, **kwargs)
Retrieve entity hits enriched with one-hop graph context.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
str
|
Raw user query text. |
required |
limit
|
int
|
Maximum number of enriched entity hits to return. |
5
|
Returns:
| Type | Description |
|---|---|
list[NodeHit]
|
Scored entity hits with synthesized context text stored in
|