CypherQueryCorrector#
- class langchain_community.chains.graph_qa.cypher_utils.CypherQueryCorrector(schemas: List[Schema])[source]#
Used to correct relationship direction in generated Cypher statements. This code is copied from the winnerβs submission to the Cypher competition: sakusaku-rich/cypher-direction-competition
- Parameters:
schemas (List[Schema]) β list of schemas
Attributes
node_pattern
node_relation_node_pattern
path_pattern
property_pattern
relation_type_pattern
Methods
__init__
(schemas)- param schemas:
list of schemas
clean_node
(node)- param node:
node in string format
correct_query
(query)- param query:
cypher query
detect_labels
(str_node,Β node_variable_dict)- param str_node:
node in string format
detect_node_variables
(query)- param query:
cypher query
detect_relation_types
(str_relation)- param str_relation:
relation in string format
extract_node_variable
(part)- param part:
node in string format
extract_paths
(query)- param query:
cypher query
judge_direction
(relation)- param relation:
relation in string format
verify_schema
(from_node_labels,Β ...)- param from_node_labels:
labels of the from node
- clean_node(node: str) str [source]#
- Parameters:
node (str) β node in string format
- Return type:
str
- detect_labels(str_node: str, node_variable_dict: Dict[str, Any]) List[str] [source]#
- Parameters:
str_node (str) β node in string format
node_variable_dict (Dict[str, Any]) β dictionary of node variables
- Return type:
List[str]
- detect_node_variables(query: str) Dict[str, List[str]] [source]#
- Parameters:
query (str) β cypher query
- Return type:
Dict[str, List[str]]
- detect_relation_types(str_relation: str) Tuple[str, List[str]] [source]#
- Parameters:
str_relation (str) β relation in string format
- Return type:
Tuple[str, List[str]]
- extract_node_variable(part: str) str | None [source]#
- Parameters:
part (str) β node in string format
- Return type:
str | None
- extract_paths(query: str) List[str] [source]#
- Parameters:
query (str) β cypher query
- Return type:
List[str]
- judge_direction(relation: str) str [source]#
- Parameters:
relation (str) β relation in string format
- Return type:
str
- verify_schema(from_node_labels: List[str], relation_types: List[str], to_node_labels: List[str]) bool [source]#
- Parameters:
from_node_labels (List[str]) β labels of the from node
relation_type β type of the relation
to_node_labels (List[str]) β labels of the to node
relation_types (List[str]) β
- Return type:
bool
Examples using CypherQueryCorrector