Skip to content

1.23.0

Latest

Choose a tag to compare

@jonnylaw jonnylaw released this 28 Oct 10:40
· 7 commits to main since this release

See the CHANGELOG for full details.

Changed

  • SchemaExtractionTemplate now tells the model to define each node type once, because a node label is global and carries one property and constraint set by @adamnsch in #673
  • Lockfile now uses CPU-only PyTorch wheels by default: the sentence-transformers and examples extras resolve torch from PyTorch's CPU index. A new gpu extra resolves CUDA torch (cu126) for SentenceTransformerEmbeddings on GPU, and --all-extras now needs --no-extra gpu by @williedoran-neo4j in #678

Fixed

  • Parquet writes no longer fail when a LIST property mixes element types across rows or inside one list (for example ["1998"] and [1998], or [12.3, "N/A"]). Those elements are written as strings; uniform and int/float lists are unchanged by @breakanalysis in #688
  • Parquet export no longer emits KEY(__id__) when a label already has a semantic KEY, fixing Data Importer re-import errors (Neo4j 22N41) by @breakanalysis in #700
  • Neo4jWriter now respects neo4j_database during setup and cleanup by @tomasonjo in #649
  • VectorCypherRetriever.search no longer fails with "Vector Search with filters requires: node_label, embedding_node_property, embedding_dimension" by @stellasia in #699
  • LLM-generated schemas: duplicate node types sharing a label are merged into one type with the union of their properties, and GraphSchema now rejects duplicate labels with a clear error by @adamnsch in #673
  • LLM-generated schemas: redundant EXISTENCE or UNIQUENESS constraints on a property already covered by a KEY are dropped instead of raising SchemaValidationError by @ali-sedaghatbaf in #681

Full Changelog: 1.22.0...1.23.0