# 从 Anthropic (Amazon Bedrock) 连接选择并加载数据

创建连接后，您可以选择数据并将其加载到 Qlik Sense 应用程序或脚本中。在数据加载编辑器或 脚本 中加载数据。

信息注释

Amazon Bedrock - Converse API 连接器允许您连接到 Amazon Bedrock 的通用 API，用于文本生成模型，包括通过此连接器提供的一个或多个模型。考虑用 Anthropic (Amazon Bedrock) 连接替换 Amazon Bedrock - Converse API 连接以获得更高级的功能。有关更多信息，请参阅[Amazon Bedrock - Converse API 分析源](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-converse-api-overview.htm)。

在 数据加载编辑器 或 脚本 中，具有分析连接的基本通信被公式化为至少包含以下组件的脚本：

* 包含要发送到 Anthropic 的请求字段（数据字段）的表（常驻表）。

* Anthropic Load 语句，该语句通过您的连接与 Anthropic 通信。

在高级设置中，技术上可以在包含其他字段的表中定义请求字段和关联字段。但是，请求字段和关联字段必须包含在同一个输入表中。重要的是要注意，当您将这些字段链接到数据模型中的字段时，会为每个字段值生成响应。

## 提示工程

在编写发送给生成式 AI 模型的请求（通常称为提示）时，请遵循与您交互的平台特定的指导方针。有关提示工程的信息以及有关如何构建 Amazon Bedrock 连接器提示的一些指导原则，请参见[提示工程概念](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-engineering-guidelines.html)。

### 构造 Anthropic - Claude (Messages API) 配置提示

Anthropic - Claude (Messages API) 配置连接到消息 API。

使用此配置时，提示不需要任何特定的语法。有关完整示例，请参阅[示例](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-anthropic-load.htm#Example)。

### 构造 Anthropic - Claude 配置提示

您可以使用Anthropic - Claude 配置连接多个传统克劳德型号。

为此配置编写的提示需要特定的语法才能成功返回补全。以下为要求：

* 每项提示必须以文本 Human: 为前缀

* 每项提示必须以文本 Assistant: 为后缀

* Human: 前缀必须有两个前置回车。这是通过在前缀之前向表达式添加 `chr(10) & chr(10)` 来实现的。

* Assistant: 后缀必须有两个前置回车。这是通过在后缀之前向表达式添加 `chr(10) & chr(10)` 来实现的。

有关如何构造和格式化 Claude 提示的信息，请参阅[构造提示](https://docs.anthropic.com/claude/docs/constructing-a-prompt)。

请注意，有多种方法可以在脚本中完成此操作。有关完整示例，请参阅[示例](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-anthropic-load.htm#Example)。

## 正在创建要发送到 Anthropic 的数据表

首先，必须加载一个表，其中包含您作为请求发送到模型的数据。该表必须由一列数据组成，其中每个单元格表示要由模型补全的文本。关联字段可以有第二个附加字段，但这需要与配置中指定的字段名称相匹配。这是一个特殊的字段，不会发送到 Amazon Titan，而是为了将交互数据集成到数据模型中的目的而附加到响应。

### 数据请求量的注意事项

加载数据时，请求字段中的每一行都将被发送到 Anthropic。在与第三方平台交互之前，请确保您了解请求的数量、请求中包含的数据量以及连接器配置如何影响您与第三方的财务协议和计费安排。外部平台的使用率越高，所产生的成本就越高。

## 创建加载语句Anthropic

您还需要使用扩展语法创建一个 load 语句来与 Anthropic 进行通信。脚本的这一部分引用您的 Anthropic (Amazon Bedrock) 连接，并指定您正在使用发送请求数据的表和字段的名称（请参阅上一节）。它加载一个单独的表，该表将包含模型对请求中每一行的响应以及其他数据。

要生成脚本的这一部分，可以使用正在使用的连接的选择数据向导。这将生成一个模板脚本，其中包括您提供的属性的名称。

在 数据加载编辑器 或 脚本 的数据源面板中找到正在使用的连接，然后单击 the 选择数据 icon。这将打开向导。

使用选择数据向导时，需要提供两个属性：

* 驻留表的名称。这是要将请求发送到 Anthropic 的表。

* 数据字段的名称。这是包含发送到 Anthropic 服务的请求数据的字段。

或者，您可以在不使用向导的情况下将其手动添加到脚本编辑器中。

单击插入脚本时，新表将添加到加载脚本中。现在，您可以加载数据，检查生成的数据模型，并使用这些数据在应用程序中创建分析内容。

## 示例

### Anthropic - Claude (Messages API)

以下加载脚本经由 Anthropic - Claude (Messages API) 配置从 Anthropic 请求两个补全。

有关编写提示的更多信息，请参阅[提示工程](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-anthropic-load.htm#Prompt)。

以下是它的设置方式：

* 驻留表为 QuestionsClaude。

* 具有提示的数据字段为 Question。

* 关联字段为 Question\_ID。

* Anthropic LOAD 语句包含在名为 Anthropic 的表中。

```
QuestionsClaude:

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?"
];

[Anthropic]:
LOAD
[text],
[stop_reason],
[input_tokens],
[output_tokens],
[model],
[id],
[Question_ID]
EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"Anthropic_(Amazon_Bedrock)"}}', QuestionsClaude);
```

### Anthropic - Claude

以下加载脚本通过 Anthropic - Claude 配置请求从 Anthropic 完成。有关所需语法的详细信息，请参阅[构造 Anthropic - Claude 配置提示](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-anthropic-load.htm#LegacyClaudePrompt1)。

有关编写提示的更多信息，请参阅[提示工程](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/ac-bedrock-anthropic-load.htm#Prompt)。

以下是它的设置方式：

* 驻留表为 QuestionsClaude。

* 具有提示的数据字段为 Intputtextclaude。

* 关联字段为 RowId。

* Anthropic LOAD 语句包含在名为 Anthropic 的表中。

```
QuestionsClaude:

load RowNo() as RowId,
chr(10) & chr(10) & 'Human:' & Inputtext & chr(10) & chr(10) & 'Assistant:' as Inputtextclaude
Inline [
Inputtext
What is the time in Germany if it's 6 pm in New York?
](delimiter is \n);

[Anthropic]:
LOAD
[completion],
[stop_reason],
[RowId]
EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"Anthropic_(Amazon_Bedrock)"}}', QuestionsClaude{RowId,Inputtextclaude});
```