Python node progress reporting question

Hello Knime team,

I have a question regarding the little progress bar that appears while a node is running.

Does there exist any internal variable where I could specify total number of “tasks” and a callback that updates the progress towards this “total”, such that the progress bar under the node actually displays the progress (kind of like the tqdm module)?

Perhaps a flow variable or similar that could be updated on each iteration of a loop, which could then be used to render the progress bar, or an integration with existing progress bar modules such as tqdm, which would automatically display existing ones.

I have some long running scripts and it would be helpful if I could display the current progress of the node.

I already have progressbars all over the place because I like to see how far along things are; if I could at least see stdout in real time, that would be enough, but I haven’t figured out how to do that (if it even is possible).

If this feature doesn’t exist, are there any plans to add it or something similar to it?

Best,
J S

1 Like

Hi @strny

no this is not possible, but I really like the idea.

I will move this to our Feature Request category :slight_smile:

4 Likes

Hi @strny,

At least that one is possible. All prints to Python’s stdout and stderr also log to the KNIME console at the INFO level. By default, that level is not visible (only WARN and above). You can change that by selecting INFO at File > Preferences > KNIME > KNIME GUI > Console View Log Level.

The ability to log progress within the Python and R scripting nodes has been brought up by some other forum users in the past. I will update our internal ticket to add your request :slight_smile:.

Marcel

6 Likes

Hi @MarcelW and @Iris,

Thank you for this.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

Python has a package ‘tqdm’ that provides progress bar functionality. It would be nice if the output of ‘tqdm’ could be re-directed to the progress bar beneath the node in the KNIME GUI.

It may require a patched version of ‘tqdm’ for this to work and an API on the have side of the node that could be called by the Python script.

1 Like