Skip to content

Releases: graphbrain/graphbrain

Version 0.6.1

31 Oct 07:31
Compare
Choose a tag to compare

Changed

  • Hyperedge.replace_argroles() .insert_argrole() and .insert_edge_with_argrole() now works with functional patterns such as var.
  • Fixed bug when matching patterns containing atoms functional pattern where no atom has argroles.

Removed

  • interactive_case_generator() from graphbrain.notebook.

Version 0.6.0

26 Oct 22:11
Compare
Choose a tag to compare

Added

  • Hyperedge.atom and .not_atom properties.
  • Hyperedge.mtype() and .connector_mtype() methods.
  • Hyperedge.t, .mt, .ct and .cmt type shortcut properties.
  • Functional patterns: var, atoms, lemma.
  • Moved all patterns functions to graphbrain.patterns.
  • Hypergraph.text().
  • Parser.parse_and_add().
  • Parser.sentences().
  • Hyperedge.normalized().
  • New package graphbrain.readers, for text readers from various sources.
  • New package graphbrain.processors, for miscellaneous processors.
  • Processor class.

Changed

  • Coreference resolution now using the new spaCy experimental model.
  • Now using spaCy transformer GPU models by default, can fallback to CPU model.
  • Hyperedge.is_atom() deprecated.
  • Improved Hyperedge.main_concepts().
  • Hyperedge.atom() renamed to .inner_atom().
  • Sequences keep track of their size, no need to specify position when adding edge to sequence.
  • Improved wikipedia reader.
  • Improved coreference resolution.
  • LevelDB included by default again.
  • Old package graphbrain.meaning renamed to graphbrain.utils.
  • Hyperedge.argroles() now also works at relation/concept level.

Removed

  • graphbrain.patterns.normalize_edge().
  • graphbrain.stats obsolete package.
  • graphbrain.cognition obsolete package.
  • graphbrain.op obsolete module.
  • Hyperedge .predicate() and .predicate_atom().

Version 0.5.0

28 Jul 13:10
Compare
Choose a tag to compare

Added

  • SQLite3 hypergraph database backend.
  • Hypergraph.add_with_attributes().
  • import and export commands.
  • Hypergraph context manager for batch writes (with hopen(hg_locator) as hg ...).

Changed

  • Main hypergraph database backend is now SQLite3.
  • LevelDB backend becomes optional. (disabled by default)
  • Neuralcoref becomes optional. (disabled by default)

Removed

  • Hypergraph.atom_count().
  • Hypergraph.edge_count().
  • Hypergraph.primary_atom_count().
  • Hypergraph.primary_edge_count().
  • info command.
  • corefs_unidecode agent.

Version 0.4.3

22 Apr 15:20
Compare
Choose a tag to compare

[0.4.3] - 22-04-2021

Changed

  • Fixed AlphaBeta bug related to temporary atoms being removed too soon from atom2tokens.
  • Hypergraph.add_sequence() converts sequence name directly to atom.
  • Parser level coreference resolution (neuralcoref) disabled by default, requires dedicated build.

Version 0.4.2

12 Apr 11:09
Compare
Choose a tag to compare

[0.4.2] - 12-04-2021

Changed

  • Solving wheel compilation issue.

Version 0.4.1

07 Apr 12:55
Compare
Choose a tag to compare

[0.4.1] - 07-04-2021

Changed

  • Solving issue with inclusion of auxiliary data file in non-binary distributions.

Version 0.4.0

07 Apr 10:08
Compare
Choose a tag to compare

[0.4.0] - 07-04-2021

Added

  • Agents system.
  • Conjunctions resolution agent.
  • Number agent (singular/plural relations) and related meaning.number module.
  • Wikipedia agent.
  • Coreference resolution in the parser through local fork of neuralcoref.
  • atom_gender(), atom_number(), atom_person(), atom_animacy() in parsers.
  • Coreference inference: gender, number and animacy.
  • Coreference inference:'X is Y' relationships.
  • dir_parser agent (looks for text files in directory tree).
  • Function meaning.concepts.has_common_or_proper_concept(edge).
  • Function Hypergraph.add() now has optional 'count' parameter.
  • Function Hypergraph.sequences().
  • Function Hyperedge.replace_argroles().
  • Function Hyperedge.insert_argrole().
  • Function Hyperedge.insert_edge_with_argrole().
  • Function Hyperedge.all_atoms().
  • Function Hyperedge.size().
  • Function Hyperedge.predicate().
  • Function Hyperedge.predicate_atom().
  • Function Hyperedge.simplify().
  • Function Hyperedge.connector_atom().
  • Utility functions to show colored edges in the terminal.

Changed

  • Special characters in atoms are now percent-encoded.
  • parse() now returns a dictionary that includes inferred edges.
  • parse() now returns a dictionary of edges to text.
  • New parser framework, improved English parser + scripts to help train and test new parsers.
  • Hyperedge main type character codes become upercase (apple/C instead of apple/c).
  • Conjunction hyperedge type, character code: "J" (e.g.: and/J).
  • Modifier hyperedge type can now be applied to anything.
  • Searching patterns can now include types, argument roles and other atom parts.
  • Hypergraph.search_count() renamed to Hypergraph.count().
  • corefs_names agent is simplified.
  • corefs_onto agent is simplified.
  • Tests now run with pytest instead of the deprecated './setup.py test'.
  • Hyperedge.replace_atom() optional unique argument.

Removed

  • Meta-modifier hyperedge type.
  • Auxiliary, subpredicate and dependency hyperedge types.
  • Obsolete Hyperedge.nest() method.

Version 0.3.2

10 Feb 12:28
Compare
Choose a tag to compare

Added

  • simplify_role() on Atom objects produces an atom with only its simple type as role.

Changed

  • Lemmas are now based on atoms with simplified roles.
  • Improved actors agent (more accurate identification of actors, English only for now).

Version 0.3.1

03 Feb 13:42
Compare
Choose a tag to compare

Added

  • German parser (experimental and incomplete).
  • Documentation.
  • Hyperedge sequences.

Changed

  • Improved hyperedge visualization in notebooks.
  • Agents receive language and sequence.
  • txt_parser agent creates a sequence.
  • Refactored parsers code.
  • Catching and logging exceptions during parse.
  • Improved conflict agent.

Version 0.3.0

28 Sep 16:51
Compare
Choose a tag to compare

Added

  • Tests.
  • Documentation.

Changed

  • Graphbrain is now beta (main APIs considered stable).
  • LevelDB edge attributes encoded in JSON.
  • Renamed hypergraph() to hgraph() and moved function to jnit.
  • Fixed notebook examples.
  • Moved Hypergraph.lemma_degrees() to meaning.lemmas.
  • Argroles location is normalized (first position in both predicates and builders).
  • In the parsers package, create_parser() was moved to init and the factory module was removed.
  • is_proper_concept() renamed to has_proper_concept() (meaning.concepts module)
  • find_concept() renamed to strip_concept() (meaning.concepts module)

Removed

  • graphbrain.funs module.