Skip to main content Skip to complementary content

Select and load data from an AI21 Labs (Amazon Bedrock) connection

Once you have created a connection, you can select data and load it into a Qlik Sense app or script. You load data in Data load editor or Script.

In Data load editor or Script, basic communications with an analytic connection are formulated as a script with the following components, at a minimum:

  • Table (Resident Table) containing the request field (Data Field) you want to send to AI21 Labs.

  • AI21 Labs load statement, which communicates to AI21 Labs through your connection.

In an advanced setup, the request field and association field could technically be defined in a table containing other fields. However, the request field and association field must be contained in the same input table. It is important to be aware that when you link these fields to fields in your data model, responses are generated for each field value.

Prompt engineering

When writing the requests you are sending to a generative AI model (often known as prompts), follow the guidelines specific to the platform you are interacting with. For information about prompt engineering and some guidelines on how to structure your prompts for Amazon Bedrock connectors, see Prompt engineering guidelines.

You can interact with the AI21 Labs (Amazon Bedrock) connector using standard sentence or text formatting. You do not need to prefix or suffix the prompt with any special keywords or strings. See Example.

Creating the table of data to be sent to AI21 Labs

First, a table must be loaded which contains the data you are sending to the model as a request. This table must consist of a single column of data within which each cell represents text to be completed by the model. There can be a second additional field for the Association Field, but this needs to match the field name specified in the configuration. This is a special field that won’t be sent to AI21 Labs, but is attached to the responses for the purpose of integrating the interaction data into the data model.

Considerations for data request volumes

When you load data, every row in the request field will be sent to AI21 Labs. Before you interact with a third-party platform, make sure you're aware of how the number of requests, volume of data included in your requests, and your connector configuration affect your financial agreement and billing arrangements with the third party. Higher usage of the external platform could result in higher costs incurred.

Creating the AI21 Labs load statement

You also need to create a load statement, using the extension syntax, to communicate with AI21 Labs. This part of the script references your AI21 Labs (Amazon Bedrock) connection and specifies the names of the table and fields you are using to send the request data (see above section). It loads a separate table which will contain the model's responses to each row in the request, among other data.

To generate this part of the script, you can use the Select data wizard for the connection you are using. This generates a template script including the names of the properties you provide.

Locate the connection you are using in the Data sources panel of Data load editor or Script, and click Select data. This opens the Select data wizard.

When using the Select data wizard, you need to provide two properties:

  • The name of the Resident Table. This is the table with the request being sent to AI21 Labs.

  • The name of the Data Field. This is the field containing the request data being sent to AI21 Labs.

Alternatively, you can add this manually into the script editor without using the wizard.

When you click Insert script, the new table is added to the load script. You can now load the data, inspect the resulting data model, and use the data to create analytics content in your app.

Example

The following load script requests three completions from AI21 Labs.

Here is how it is set up:

  • The Resident Table is QuestionsTable.

  • The Data Field with the prompts is Question.

  • The Association Field is Question_ID.

  • The AI21 Labs load statement is contained in the table named AI21 Labs.

QuestionsTable: Load * Inline [ Question_ID,Question 1,"show me general ways to help boost a company's sales" 2,"what are the core concepts in accounting?" 3,"how large is the sun?" ]; [AI21 Labs]: LOAD [response], [id], [finishReason], [Question_ID] EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"AI21_Labs_(Amazon_Bedrock)"}}', Questions_Table{Question_ID,Questions});

 

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!