run-llama/llama_index · error · ValueError
Invalid mode: {self.mode}
Error message
Invalid mode: {self.mode} What it means
Error "Invalid mode: {self.mode}" thrown in run-llama/llama_index.
Source
Thrown at llama-index-core/llama_index/core/postprocessor/node.py:203
query_bundle: Optional[QueryBundle] = None,
) -> List[NodeWithScore]:
"""Postprocess nodes."""
all_nodes: Dict[str, NodeWithScore] = {}
for node in nodes:
all_nodes[node.node.node_id] = node
if self.mode == "next":
all_nodes.update(get_forward_nodes(node, self.num_nodes, self.docstore))
elif self.mode == "previous":
all_nodes.update(
get_backward_nodes(node, self.num_nodes, self.docstore)
)
elif self.mode == "both":
all_nodes.update(get_forward_nodes(node, self.num_nodes, self.docstore))
all_nodes.update(
get_backward_nodes(node, self.num_nodes, self.docstore)
)
else:
raise ValueError(f"Invalid mode: {self.mode}")
all_nodes_values: List[NodeWithScore] = list(all_nodes.values())
sorted_nodes: List[NodeWithScore] = []
for node in all_nodes_values:
# variable to check if cand node is inserted
node_inserted = False
for i, cand in enumerate(sorted_nodes):
node_id = node.node.node_id
# prepend to current candidate
prev_node_info = cand.node.prev_node
next_node_info = cand.node.next_node
if prev_node_info is not None and node_id == prev_node_info.node_id:
node_inserted = True
sorted_nodes.insert(i, node)
break
# append to current candidate
elif next_node_info is not None and node_id == next_node_info.node_id:
node_inserted = TrueView on GitHub (pinned to afd0fef371)
Solutions
- Set self.mode to a supported value before postprocessing.
- Use one of the documented modes for this node postprocessor.
When it happens
Trigger: Thrown at llama-index-core/llama_index/core/postprocessor/node.py:203 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of run-llama/llama_index@afd0fef371 (2026-08-15).
Data as JSON: /api/errors/73dc09f6ba0c42f7.
Report an issue: GitHub.