UX/UI for improved ease of use
First available in the early access of KNIME Analytics Platform Version 5, this release marks the first time the new UX/UI is the default. The new interface features a sleeker look and feel, more intuitive workflow editor, improved navigation and search to help users more quickly identify which nodes they need. A new quick node feature, built upon the KNIME workflow coach, also offers next-node recommendations, based on the nodes users have selected thus far in their workflows.
The 5.1 release also offers improved workflow annotations, so users can annotate and document their workflows. Also, the Space Explorer offers a more intuitive way to browse and access workflows from the KNIME Hub.
The Starter Perspective to improve onboarding
Initially introduced in the early access version 5.0, KNIME 5.1 includes a production-ready Starter Perspective which limits nodes displayed in the node repository to a set commonly used by beginners and spreadsheet users. Rather than parsing through the 3000+ available nodes, beginners can ease into building visual workflows by starting with basic data manipulation and automation nodes.
New spreadsheet manipulation and automation nodes
The release introduces new production ready nodes that make it easy for spreadsheet users to automate repetitive work, combine spreadsheets with workflows, and even transition entirely to workflows.
These include nodes such as:
Value Lookup: Adds matching values from a dictionary table to a data table based on a lookup column. When a lookup value matches an entry in the dictionary, the selected cells are added to the data table. Otherwise, missing cells will be inserted.
Row Aggregator: Aggregates numerical columns based on one of the following aggregation functions: Occurrence count, sum, average, minimum, or maximum. Some aggregation functions support weighting. Rows can optionally be grouped by a category column.
Table Splitter: Splits the input table at the row that matches a given condition. The part of the table that occurred before the matching row is forwarded to the top output table, the bottom output table contains the rest of the input table
Table Cropper: Crops the input table based on the chosen row and column range. The row range is defined via row number, the column range either via column name or column number.
Cell Extractor: Extracts the value of a single cell from the input table and outputs it as a 1x1 table. The row selection is defined via row number, the column selection either via column name or column number.
Table Updater: Updates cells in the top input table with matching cells from the bottom update table. A matching cell must have the same column name and RowID in both tables. Multiple cells of multiple rows and columns can be updated. Additional rows and columns from the update table can be appended to the input table.
Cell Updater: Updates a single cell of the input table with the value of the specified flow variable. The cell to be updated must be specified via the row number and column name. The output table will be identical to the input table except for the single updated cell.
KNIME AI assistant using ChatGPT
In keeping with all the rapid progress that is being made in the space of Large Language Models, KNIME released an early access AI assistant based on ChatGPT.
The prototype AI assistant - not yet recommended for production environments - provides users with guidance in chat format and can be used in two modes. In the first mode, the assistant answers user prompts and provides instructions on workflow building. In the second mode it builds workflows from scratch, adding and connecting nodes according to the user’s instructions.
The AI assistant is currently at an experimental stage. We’d love to hear your feedback.
KNIME AI extension (Labs)
The early release KNIME AI extension - also not recommended for production environments - provides nodes for building LLM-powered applications such as chat bots via KNIME workflows. It supports both state-of-the-art OpenAI models as well as open source LLMs from Hugging Face Hub.
Enhancements to the Python extension
For users sharing Python scripts, the Python extension no longer ships all users’ Python packages, but rather triggers the packages to download at install time. This means that the download packages are now significantly smaller. For offline installations, we have introduced a new preference page allowing users to prepare a folder with all required packages that can be used as a resource by other machines.
This release also includes some improvements to developing new nodes using Python. You can now leverage KNIME credentials when authenticating from a 3rd party service. Additionally, we’ve added support for JSON, XML and PNG cells in Python Script and pure-Python nodes.
The new ConnectionPortObject type can now be used in Python nodes for connections to databases or other services that need a session to be kept alive. This allows users, for instance, to build pure-Python database integrations. Finally, a full column filter is now available.
Additions to visualization capabilities
To increase the ease of use of visualization features, about a year ago, we started improving the UX of view nodes to reduce the number of nodes necessary to build interactive charts. To this end, this release provides modern replacements for all the Local/Swing views and marks them as legacy. We continue to work towards having a replacement for all the other views.
This release includes new nodes for data visualizations such as ROC Curve, Sunburst Chart, and Parallel Coordinates, now available in the new interface. These nodes can be found in the same Views category as the other nodes and can be identified by their lack of a prefix or suffix.
The table view now lets users adjust row height and column width, resize images, and also supports number formatting.
The text view comes with a rich text editor that makes it easier to create text, and allows for text to be adjusted with flow variables. Improvements to color management provide support for several nodes, with more to come.
KNIME Reporting (Labs)
Users can now test out new static reporting capabilities available in Labs. You can use the view nodes mentioned in the previous section to build visualizations, just as you would do in a data app and get the choice to export it to a static report or set of reports.
You can now further format data in table visualizations using the Number Format Manager or highlight data using conditional formatting via new functions in the Column Expression node. You can also choose to concatenate different reports, for instance by leveraging loop functionality, and export your visualizations as PDF or HTML reports using the new Report PDF Writer and Report HTML Writer nodes.
KNIME now offers an integration with Scikit-learn, one of the most popular machine learning libraries in Python. This should make it easier for Python developers to bring new algorithms from the Python community, including the highly requested partial-least-squares (PLS) regression.
Additionally, this extension can serve as an example for developers planning on developing Python Extensions for KNIME.
Web Interaction extension for web scraping
The new Web Interaction Extension for web scraping lets you remotely control your browser with KNIME nodes to extract content from the web or to automatically test your website. To simplify working with websites you can record your clicks and inputs in the browser and let KNIME replay them.
Generic OAuth2 connector nodes
The newly added Generic OAuth2 connector nodes along with support for session tokens in the REST nodes help technical users to connect to REST services that are not supported out of the box.
Box File System connector
The latest Box File System connector allows business users to read, write and manage their files on the Box drive.
Updated node functionality with support for Google Analytics 4
String Replacer node with additional functionality
The String Replacer node, which replaces values in string cells if they match a certain wildcard pattern, has been rewritten to provide more functionality and to make it more spreadsheet user friendly.
Geospatial extension now supports geocoding
The geospatial analytics extension now supports geocoding. In addition, it supports drive time analysis via the new spatial network nodes.
New nodes in the latest version of the geospatial analytics extension include:
Spatial network nodes for drive time analysis. For e.g., isochrone map, drive time distance matrices (OSRM and Google)
Geocoding nodes that convert points to addresses and vice versa
Various other nodes such as Voronoi (Thiessen) Polygon, Bounding Circle and Extract Metadata such as CRS and geometry type
Find more information on other enhancements, including harmonized distance handling and improved result column handling, here.
Improvements in performance
Support for parallelized CSV reading in the latest release speeds up reading huge (gigabytes) CSV files significantly.
Based on user feedback, this release also simplifies the configuration of the Columnar Backend to a single setting that is easy to understand: how much memory should be available to the Columnar Backend for caching.
Additionally, performance improvements have been made to nodes that append new columns to a table such as the String Manipulation, Math Formula, Rule Engine or String to Number node.