# Sanitize response queries = self.sanitize_query(response) # Validate queries if not self.validate_cypher_query(queries): raise ValueError("Invalid Cypher query syntax") self.logger.info("Successfully generated Cypher queries") return queries except Exception as e: self.logger.error(f"Error building Cypher queries: {e}") raise def split_queries(self, queries: str) -> List[str]: """Split combined queries into individual statements.""" return [q.strip() for q in queries.split(';') if q.strip()] # Usage builder = CypherQueryBuilder(llm=llm) cypher_queries = builder.build_queries(node_definitions, relationships) print("Cypher Queries:", cypher_queries)