Skip to content
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

Fix bug for running single flow nodes with nested dict inputs #3881

Closed
wants to merge 3 commits into from

Conversation

pjanowski
Copy link

@pjanowski pjanowski commented Dec 8, 2024

Description

Inputs like ${parent_node.output.result.inner_key} will fail because of how the inputs are currently written to the jsonl inputs file. Eg.

{"parent_node.output.result.inner_key":{"result":{"inner_key1":"foo","inner_key2":"bar"},"metrics":{"mertric_1":1.2}}

This is different behavior than when running entire flow where the input is always keyed on "parent_node.output.result" rather than "parent_node.output.result.inner_key".

All Promptflow Contribution checklist:

  • The pull request does not introduce [breaking changes].
  • [] CHANGELOG is updated for new features, bug fixes or other significant changes.
  • I have read the contribution guidelines.
  • I confirm that all new dependencies are compatible with the MIT license.
  • Create an issue and link to the pull request to get dedicated review from promptflow team. Learn more: suggested workflow.

Fixes #3882

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • [ x There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

  • Pull request includes test coverage for the included changes.

Inputs like ${parent_node.output.result.inner_key} will fail because of how the inputs are currently written to the jsonl inputs file. Eg. 

{"parent_node.output.result.inner_key":{"result":{"inner_key1":"foo","inner_key2":"bar"},"metrics":{"mertric_1":1.2}}

This is different behavior than when running entire flow where the input is always keyed on "parent_node.output.result" rather than "parent_node.output.result.inner_key".
@pjanowski pjanowski requested a review from a team as a code owner December 8, 2024 02:58
add whitespace around operator
Copy link

github-actions bot commented Jan 7, 2025

SDK CLI Global Config Test Result patch-1

0 tests   0 ✅  0s ⏱️
0 suites  0 💤
0 files    0 ❌

Results for commit 4f0dcbb.

Copy link

github-actions bot commented Jan 7, 2025

Executor Unit Test Result patch-1

0 tests   0 ✅  0s ⏱️
0 suites  0 💤
0 files    0 ❌

Results for commit 4f0dcbb.

Copy link

github-actions bot commented Jan 7, 2025

Executor E2E Test Result patch-1

0 tests   0 ✅  0s ⏱️
0 suites  0 💤
0 files    0 ❌

Results for commit 4f0dcbb.

Copy link

Hi, thank you for your interest in helping to improve the prompt flow experience and for your contribution. We've noticed that there hasn't been recent engagement on this pull request. If this is still an active work stream, please let us know by pushing some changes or leaving a comment.

@github-actions github-actions bot added the no-recent-activity There has been no recent activity on this issue/pull request label Jan 21, 2025
@pjanowski
Copy link
Author

@MilesHolland @ninghu @luigiw Can one of you review please? Has been submitted for review since 12/7/24. Thanks!

@github-actions github-actions bot removed the no-recent-activity There has been no recent activity on this issue/pull request label Jan 22, 2025
@@ -69,6 +69,8 @@ def parse_value(i: InputAssignment, nodes_outputs: dict, flow_inputs: dict):

def parse_node_property(node_name, node_val, property=""):
val = node_val
if "." in property and property in val.keys():
val = val[property]
property_parts = re.findall(property_pattern, property)
Copy link
Member

Choose a reason for hiding this comment

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

Can you add unit test to support this change.

Copy link

Hi, thank you for your interest in helping to improve the prompt flow experience and for your contribution. We've noticed that there hasn't been recent engagement on this pull request. If this is still an active work stream, please let us know by pushing some changes or leaving a comment.

@github-actions github-actions bot added the no-recent-activity There has been no recent activity on this issue/pull request label Feb 11, 2025
@pjanowski
Copy link
Author

still active

@github-actions github-actions bot removed the no-recent-activity There has been no recent activity on this issue/pull request label Feb 13, 2025
Copy link

Hi, thank you for your interest in helping to improve the prompt flow experience and for your contribution. We've noticed that there hasn't been recent engagement on this pull request. If this is still an active work stream, please let us know by pushing some changes or leaving a comment.

@github-actions github-actions bot added the no-recent-activity There has been no recent activity on this issue/pull request label Feb 28, 2025
Copy link

github-actions bot commented Mar 8, 2025

Hi, thank you for your contribution. Since there has not been recent engagement, we are going to close this out. Feel free to reopen if you'd like to continue working on these changes. Please be sure to remove the no-recent-activity label; otherwise, this is likely to be closed again with the next cleanup pass.

@github-actions github-actions bot closed this Mar 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
external no-recent-activity There has been no recent activity on this issue/pull request promptflow-core
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Single node test runs with nested dict parent node inputs InvalidReferenceProperty error.
3 participants