langchain.chains.graph_qa.cypher_utils
.CypherQueryCorrector¶
- class langchain.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: https://github.com/sakusaku-rich/cypher-direction-competition
- Parameters
schemas – 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
- detect_labels(str_node: str, node_variable_dict: Dict[str, Any]) List[str] [source]¶
- Parameters
str_node – node in string format
node_variable_dict – dictionary of node variables