Node PostProcessor module.
MetadataReplacementPostProcessor
Bases: BaseNodePostprocessor
Source code in llama-index-core/llama_index/core/postprocessor/metadata_replacement.py
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 | class MetadataReplacementPostProcessor(BaseNodePostprocessor):
target_metadata_key: str = Field(
description="Target metadata key to replace node content with."
)
def __init__(self, target_metadata_key: str) -> None:
super().__init__(target_metadata_key=target_metadata_key)
@classmethod
def class_name(cls) -> str:
return "MetadataReplacementPostProcessor"
def _postprocess_nodes(
self,
nodes: List[NodeWithScore],
query_bundle: Optional[QueryBundle] = None,
) -> List[NodeWithScore]:
for n in nodes:
n.node.set_content(
n.node.metadata.get(
self.target_metadata_key,
n.node.get_content(metadata_mode=MetadataMode.NONE),
)
)
return nodes
|