Skip to content

Pipeline viz #122

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 31 commits into from
Sep 11, 2024
Merged

Pipeline viz #122

merged 31 commits into from
Sep 11, 2024

Conversation

stellasia
Copy link
Contributor

@stellasia stellasia commented Sep 5, 2024

Description

Add support for pipeline visualisation as image.

To make things easier and avoid to build (again) the parameter mapping dict when building the visualisation graph, a parameter_mapping variable is added to the Pipeline class. This variable is fed during the "connection validation". That means that the previous input_config_validation is now split into two methods:

  1. Validate the "connection" (validate_connection_parameters), ie the input config defined in the connect method: this method checks that the component and parameter name actually exists. It feeds the param_mapping dict and the missing_inputs dict (list of required parameters for components that are not mapped in any connect and that must be provided by user). The param_mapping dict is reused when building the component inputs during a run, and by the visualisation methods.
  2. Full validation with user input (validate_all_parameters): checks that the missing parameters are actually provided by users.

Type of Change

  • New feature
  • Bug fix
  • Breaking change
  • Documentation update
  • Project configuration change

Complexity

Note

Please provide an estimated complexity of this PR of either Low, Medium or High

Complexity: Medium

How Has This Been Tested?

  • Unit tests
  • E2E tests
  • Manual tests

Checklist

The following requirements should have been met (depending on the changes in the branch):

  • Documentation has been updated
  • Unit tests have been updated
  • E2E tests have been updated
  • Examples have been updated
  • New files have copyright header
  • CLA (https://neo4j.com/developer/cla/) has been signed
  • CHANGELOG.md updated if appropriate

stellasia added 20 commits June 25, 2024 09:36
…this dict when fetching the component inputs
…on to prepare for drawing pipelines (without user inputs)
@stellasia stellasia marked this pull request as ready for review September 5, 2024 15:24
Copy link
Contributor

@alexthomas93 alexthomas93 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@stellasia stellasia merged commit c017521 into neo4j:main Sep 11, 2024
11 checks passed
a-s-g93 pushed a commit to a-s-g93/neo4j-genai-python-dev that referenced this pull request Sep 13, 2024
* Save input configs in the Pipeline class while validating, and reuse this dict when fetching the component inputs

* Split the parameter connection validation and the user input validation to prepare for drawing pipelines (without user inputs)

* WIP: pipeline visualization

* Invalidate the pipeline param mapping if the graph structure changes

* Hide unused outputs by default but add option to display them

* Install graphviz during CI

* Install graphviz-dev in CI to fix installation error

* Update changelog and doc

* Add a few tests for data validation

* Fix error message

* This is a change of behavior that will be implemented in a separate PR

* Add UT for pipeline to pygraphviz format and pipeline draw method

* Fix docstring

* Improve naming and docstrings

* Update CHANGELOG.md
a-s-g93 pushed a commit to a-s-g93/neo4j-genai-python-dev that referenced this pull request Sep 13, 2024
* Save input configs in the Pipeline class while validating, and reuse this dict when fetching the component inputs

* Split the parameter connection validation and the user input validation to prepare for drawing pipelines (without user inputs)

* WIP: pipeline visualization

* Invalidate the pipeline param mapping if the graph structure changes

* Hide unused outputs by default but add option to display them

* Install graphviz during CI

* Install graphviz-dev in CI to fix installation error

* Update changelog and doc

* Add a few tests for data validation

* Fix error message

* This is a change of behavior that will be implemented in a separate PR

* Add UT for pipeline to pygraphviz format and pipeline draw method

* Fix docstring

* Improve naming and docstrings

* Update CHANGELOG.md
@stellasia stellasia deleted the feature/pipeline-viz branch September 16, 2024 08:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants