For each row in the input table, this node sends one prompt to the LLM and receives a corresponding response. Rows and the corresponding prompts are treated in isolation, i.e. the LLM cannot remember the contents of the previous rows or how it responded to them.
Note: If you use the Credentials Configuration node and do not select the "Save password in configuration (weakly encrypted)" option for passing the API key for the LLM Selector node, the Credentials Configuration node will need to be reconfigured upon reopening the workflow, as the credentials flow variable was not saved and will therefore not be available to downstream nodes.
Specify whether a customizable system message is included in each prompt. This option is only available for chat models. Note that some chat models (e.g. OpenAI's o1-mini) do not support system messages.
Available options:
The first message given to the model describing how it should behave.
Example: You are a helpful assistant that has to answer questions truthfully, and if you do not know an answer to a question, you should state that.
The column containing the system message for each prompt.
Column containing prompts for the LLM.
Define whether missing or empty values in the prompt column and system message column (only applicable if the system message is provided via a column) should result in missing values in the output table or whether the node execution should fail on such values.
Available options:
Choose between different output formats.
Available options:
Structured: When Structured is selected, the model is constrained to output data matching the defined structure. Each defined field will be extracted and added as a separate column in the output table. Not all models support structured outputs.
JSON: When JSON is selected, the model is constrained to only generate strings that parse into a valid JSON object. Make sure you include the string "JSON" in your prompt or system message to instruct the model to output valid JSON when this mode is selected. For example: "Tell me a joke. Please only reply in valid JSON." Please refer to the OpenAI guide to see which models currently support JSON outputs.
Name for the column holding the LLM's responses.
Settings for structured output extraction.
The name of the target object. This helps the model understand what it is extracting. Invalid characters will be automatically converted to underscores.
Example: 'Person Info', 'Product Details', 'Sentiment Analysis'
A description of what the target object represents. This provides context to the model about the overall extraction task.
Example: 'Information about a person including their name and age', 'Key details about a product'
Determines how many target objects are extracted for each input row.
Available options:
Name of the column that will store the original input row ID when multiple target objects are extracted per input row.
Define the columns to extract from each prompt. Each column will be added to the output table. The model will be instructed to extract these columns from the input text.
**Output columns:**
- Column name : The name of the output column in the table.
- Data type : The base data type of this column.
Available options:
- Quantity : Determines if this column should contain a single value or multiple values (list) for each extracted item. **Available options:** - Single: Extract exactly one value of the defined type. - Multiple: Extract multiple values (as a list) of the defined type. - Description : A description of this column to help the model understand what to extract.
You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.
To use this node in KNIME, install the extension KNIME Python Extension Development (Labs) from the below update site following our NodePit Product and Node Installation Guide:
A zipped version of the software site can be downloaded here.
Deploy, schedule, execute, and monitor your KNIME workflows locally, in the cloud or on-premises – with our brand new NodePit Runner.
Try NodePit Runner!