为 Bedrock 设置 Redis

演示如何为 Amazon Bedrock 设置 Redis 数据库。

您需要先设置 Redis Cloud 数据库,然后才能在 Amazon Bedrock 中将其设置为矢量数据库。为此,您需要:

  1. 注册 Redis Cloud 并创建数据库
  2. 为数据库启用传输层安全性 (TLS) 并保存证书
  3. 将数据库凭证存储在 AWS Secrets Manager 中
  4. 在数据库中创建向量索引以供 Bedrock 使用

设置数据库后,您可以在创建知识库时使用数据库信息将其设置为知识库数据库。

注册并创建数据库

要为 Bedrock 设置 Redis Cloud 实例,您需要:

  1. 如果您还没有帐户,请注册 Redis Cloud
  2. 创建用于 Bedrock 知识库的数据库。

使用 AWS Marketplace 注册 Redis Cloud

  1. 从 Bedrock 中选择 Redis Cloud AWS 市场链接,以转到 Redis Cloud 计划列表。

    Redis Cloud 在 AWS Marketplace 上架
  2. 订阅 Redis Cloud 列表,找到 “设置您的账户” 按钮,然后选择它以开始将您的 Redis Cloud 账户与您的 AWS Marketplace 账户进行映射。

    使用您的 AWS Marketplace 账户订阅 Redis Cloud 后,使用 Set Up Your Account(设置您的账户)按钮。
  3. 登录到 Redis Cloud 控制台

  4. 选择要映射到您的 AWS Marketplace 账户的 Redis 账户,并确认您的付款方式将更改并且连接无法撤消。

    使用 AWS Marketplace 对话框将您的 Redis Cloud 账户映射到您的 AWS Marketplace 账户。
  5. 使用 Map account (映射帐户) 按钮确认您的选择。

  6. 将 Redis 账户映射到 AWS Marketplace 账户后,账户面板的左上角会显示一条消息。

    当您的 Redis Cloud 账户映射到 AWS Marketplace 账户时,会显示 AWS Marketplace 徽章。

    此外,AWS Marketplace 被报告为选定的付款方式。

创建数据库

  1. Redis Cloud 控制台中,选择 New database(新建数据库)。

    New Database (新建数据库) 按钮将创建一个新数据库。
  2. New database (新建数据库) 页面出现时,选择 Pro (专业版) 以创建 Pro 计划。

    已选中 Pro 的 Subscription selection 面板。
  3. 选择 Pro 后,将出现 Database settings (数据库设置) 部分。对于本指南,请继续使用 Easy create 以更快地开始。

    数据库设置部分。

    如果要自行选择所有配置选项,请选择 Custom settings (自定义设置)。有关更多详细信息,请参阅创建 Redis Cloud Pro 数据库

  4. Redis 将为您生成一个数据库名称。如果要更改它,可以在 Database name 字段中进行更改。

    数据库名称、云供应商和区域设置。
  5. 选择 Amazon Web Services 作为云供应商,然后选择一个区域。

  6. Optimal database settings (最佳数据库设置) 部分中:

    Dataset size, throughput, 和 High availability (数据集大小、吞吐量) 和 High availability (高可用性) 设置。
    • 开启 高可用性

    • 根据 Bedrock 将从 Simple Storage Service (S3) 存储桶中提取的数据量设置数据库的 Dataset size(数据集大小)。请参阅找出 S3 存储桶的大小,了解 S3 存储桶中存储了多少知识库数据,并从下表中选择最接近的大小(四舍五入)。

      S3 中的文档总大小 不带复制的数据库大小 使用复制的数据库大小
      10,000 KB 135 兆字节 270 兆字节
      100,000 KB 1.35 吉字节 2.7 吉字节
      1,000,000 KB 13.5 吉字节 27 吉字节
      10,000,000 千字节 135 吉字节 270 吉字节

      有关调整大小的更多信息,请参阅 Bedrock 集成博客文章

  7. 选择 View all settings (查看所有设置) 以查看我们为您选择的数据库设置。

    最佳数据库设置。

    如果要更改这些设置,请选择 Switch to custom settings(切换到自定义设置)。

  8. 您无需输入付款方式,因为它会自动分配给您的 AWS Marketplace 账户。选择确认并付款以创建新数据库。

    选择确认并付款以创建新数据库。

    请注意,数据库是在后台创建的。在他们进行预置时,不允许进行更改。(该过程通常需要 10-15 分钟。

    使用 Databases (数据库) 列表检查订阅的状态。当您的数据库可供使用时,您还将收到一封电子邮件。

启用 TLS 并获取证书

要使数据库完全安全,您必须使用客户端身份验证为数据库启用传输层安全性 (TLS)。

  1. Redis Cloud 控制台菜单中选择 Databases,然后从列表中选择您的数据库。

  2. 从数据库的 Configuration 屏幕中,选择 Edit 按钮:

    的 Edit database 按钮允许您更改选定的数据库属性。
  3. Security (安全) 部分中,使用 Transport layer security (TLS) (传输层安全性 (TLS) ) 切换开关启用 TLS:

    使用 Transport Layer Security (传输层安全性) 开关启用 TLS。
  4. 选择 Download server certificate(下载服务器证书)以下载 Redis Cloud 证书捆绑包redis_ca.pem:

    使用 Download server certificate(下载服务器证书)按钮下载 Redis Cloud CA 证书。
  5. 选中 Mutual TLS (require client authentication) 复选框以要求客户端身份验证。

  6. 选择 Add client certificate (添加客户端证书) 以添加证书。

    Add client certificate (添加客户端证书) 按钮。
  7. 为您的客户端提供 PEM 格式的 X.509 客户端证书或链,或者选择 Generate (生成) 创建一个:

    为 Mutual TLS 提供或生成证书。
    • 如果您从 Redis Cloud 控制台生成证书,则证书生成后将显示 Download certificate (下载证书) 按钮。选择它以下载证书。

      Download certificate (下载证书) 按钮。

      下载内容包含:

      • redis-db-<database_id>.crt– 证书的公钥。

      • redis-db-<database_id>.key– 证书的私钥。

      注意:
      此时,您必须使用按钮下载证书。应用更改后,完整的公钥和私钥捆绑包将不再可供下载。
    • 如果您提供客户端证书,则在保存更改之前,您将看到证书详细信息。

      Download certificate (下载证书) 按钮。
  8. 要应用更改并启用 TLS,请选择 Save database 按钮:

    使用 Save database (保存数据库) 按钮保存数据库更改。

将数据库凭证存储在 AWS Secrets Manager 中

AWS Management Console中,使用 Services (服务) 菜单找到并选择 Secrets Manager > Security, Identity, and Compliance (安全性、身份和合规性)。使用以下键/值字段创建 Other type of secret 类型的密钥:

  • username:数据库用户名
  • password:数据库密码
  • serverCertificate服务器证书的内容 (redis_ca.pem)
  • clientCertificate:客户端证书的内容 (redis_user.crt)
  • clientPrivateKey:客户端私钥 (redis_user_private.key)

存储此密钥后,您可以在密钥详细信息页面上查看和复制密钥的 Amazon 资源名称 (ARN)。

在数据库中创建向量索引

设置 Redis Cloud 数据库后,使用 FT 创建具有 vector 字段的搜索索引。CREATE 作为 Amazon Bedrock 的知识库。您可以使用 Redis Insightredis-cli.

Redis 洞察

Redis Insight 是一个免费的 Redis GUI,允许您在 Redis 中可视化和优化数据。

要在 Redis Insight 中创建向量索引,请执行以下作:

  1. 如果您还没有 Redis Insight,请下载并安装它。

  2. Redis Cloud 控制台的数据库的 Configuration (配置) 选项卡中,选择数据库旁边的 Connect (连接) 按钮以打开连接向导。

    Connect (连接) 按钮。
  3. 在连接向导中,在 Redis Insight Desktop 下,选择 Public Endpoint (公有终端节点)。选择使用 Redis Insight 打开以使用 Redis Insight 连接到数据库。

  4. 选择 Use TLS(使用 TLS)。CA 证书 部分中,选择 添加新的 CA 证书。在 Name 字段中为证书命名,然后输入redis_ca.pemCertificate (证书) 字段中。

    Redis Insight 添加 CA 证书部分。
  5. 选择 Requires TLS client authentication(需要 TLS 客户端身份验证)。Client Certificate (客户端证书) 部分中,选择 Add new certificate (添加新证书)。在 Name (名称) 字段中为证书命名。输入 的内容redis_user.crtCertificate 字段中,以及redis_user_private.keyPrivate Key (私钥) 字段中。

    Redis Insight Add Client Certificate 部分。
  6. 选择 Add Redis Database (添加 Redis 数据库) 以连接到数据库。

  7. 选择您的数据库别名以连接到您的数据库。选择 Workbench 图标以转到工作台。

    Redis Insight 工作台图标。
  8. 进入 FT。CREATE 命令创建索引。

    FT.CREATE <index_name>                    
        ON HASH                
        SCHEMA
            "<text_field>" TEXT
            "<metadata_field>" TEXT                   
            "<vector_field>"  VECTOR FLAT     
                6                          
                "TYPE" "FLOAT32"            
                "DIM" 1536                   
                "DISTANCE_METRIC" "COSINE"  
    

    Replace the following fields:

    • <index_name> with the vector index name
    • <text_field> with the text field name
    • <metadata_field> with the metadata field name
    • <vector_field> with the vector field name
  9. Select Run to create the index.

    The Redis Insight run button.

redis-cli

The redis-cli command-line utility lets you connect and run Redis commands directly from the command line. To use redis-cli, you can install Redis.

Public endpoint and port details are available from the Databases list or the database's Configuration screen. Select Connect to view how to connect to your database with redis-cli.

redis-cli -h <endpoint> -p <port> --tls --cacert redis_ca.pem \
    --cert redis_user.crt --key redis_user_private.key

After you are connected with redis-cli, create an index using FT.CREATE.

FT.CREATE <index_name>                    
    ON HASH                
    SCHEMA
        "<text_field>" TEXT
        "<metadata_field>" TEXT                   
        "<vector_field>"  VECTOR FLAT     
            6                          
            "TYPE" "FLOAT32"            
            "DIM" 1536                   
            "DISTANCE_METRIC" "COSINE"  

Replace the following fields:

  • <index_name> with the vector index name
  • <text_field> with the text field name
  • <metadata_field> with the metadata field name
  • <vector_field> with the vector field name

Next steps

After your Redis database is set up, you can use it to create a knowledge base in Amazon Bedrock.

RATE THIS PAGE
Back to top ↑