为Bedrock设置Redis

展示如何为Amazon Bedrock设置您的Redis数据库。

在将其设置为Amazon Bedrock中的向量数据库之前,您需要设置您的Redis Cloud数据库。为此,您需要:

  1. 注册 Redis Cloud 并创建数据库
  2. 为数据库启用传输层安全性(TLS)并保存证书
  3. 在AWS秘密管理器中存储数据库凭据
  4. 在您的数据库中创建一个向量索引供Bedrock使用

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

注册并创建数据库

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

  1. Sign up for Redis Cloud 如果您还没有账户。
  2. Create a database 用于您的Bedrock知识库。

使用AWS Marketplace注册Redis Cloud

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

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

    Use the Set Up Your Account button after subscribing to Redis Cloud with your AWS Marketplace account.
  3. 登录到Redis Cloud 控制台

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

    Use the AWS Marketplace dialog to map your Redis Cloud account to your AWS Marketplace account.
  5. 使用映射账户按钮来确认您的选择。

  6. 一旦您的Redis账户与您的AWS Marketplace账户关联,账户面板的左上角将显示一条消息。

    The AWS Marketplace badge appears when your Redis Cloud account is mapped to an AWS Marketplace account.

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

创建数据库

  1. Redis Cloud控制台中,选择新建数据库

    The New Database button creates a new database.
  2. 新建数据库页面出现时,从用例面板中选择向量搜索

    The Redis Use case panel
  3. 选择Pro以创建Pro计划。

    The Subscription selection panel with Pro selected.
  4. 选择Amazon Web Services作为云供应商,选择一个区域,并输入您的订阅名称。

    The General settings of the Setup tab.
  5. 版本部分,选择Redis 7.2Redis 7.4

    Version selection between Redis 6.2, 7.2, and 7.4
  6. 高级选项部分,选择多可用区以确保高可用性

    The Multi-AZ toggle set to on.
  7. 完成后,选择继续

    Select the Continue button to continue to the next step.
  8. 大小调整 选项卡帮助您指定订阅的数据库需求。

    The Sizing tab when creating a new Flexible subscription.

    选择添加按钮以创建数据库。

    Use the Add button to define a new database for your subscription.
  9. 新建数据库对话框中,为您的数据库命名。

    The New Database dialog with basic settings.

    我们已经为您选择了搜索和查询以及JSON搜索和查询为您的数据库启用了向量数据库功能。如果您愿意,可以移除JSON

  10. 根据Bedrock将从您的简单存储服务(S3)bucket中提取的数据量来设置数据库的内存限制。请参阅Find out the size of your S3 buckets以了解您的S3存储桶中存储了多少知识库数据,并从下表中选择最接近的大小,向上取整。

    S3中文档的总大小 无复制的数据库大小 有复制的数据库大小
    10,000 kb 135 Mb 270 Mb
    100,000 kb 1.35 Gb 2.7 Gb
    1,000,000 kb 13.5 Gb 27 Gb
    10,000,000 kb 135 Gb 270 Gb

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

  11. 完成后,选择保存数据库以创建您的数据库。

    Select the Save Database button to define your new database.
  12. 选择继续以移动到审查和创建标签。

  13. 查看您的订阅。您不需要输入付款方式,因为它会自动分配到您的AWS Marketplace账户。

  14. 选择确认并支付以创建您的新数据库。

    Select Confirm & pay to create your new database.

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

    使用数据库列表来检查您的订阅状态。当您的数据库准备就绪时,您还将收到一封电子邮件。

启用TLS并获取证书

为了使您的数据库完全安全,您必须为您的数据库启用传输层安全性(TLS)并进行客户端认证。

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

  2. 从数据库的配置屏幕中,选择编辑数据库按钮:

    The Edit database button lets you change selected database properties.
  3. 安全部分,使用传输层安全性(TLS)切换按钮来启用TLS:

    Use the Transport Layer Security toggle to enable TLS.
  4. 选择下载服务器证书以下载Redis Cloud证书包redis_ca.pem

    Use the Download server certificate button to download the Redis Cloud CA certificates.
  5. 选择相互TLS(需要客户端认证)复选框以要求客户端认证。

  6. 选择添加客户端证书以添加证书。

    The Add client certificate button.
  7. 要么提供X.509客户端证书或PEM格式的证书链,要么选择生成来创建一个:

    Provide or generate a certificate for Mutual TLS.
    • 如果您从Redis Cloud控制台生成证书,生成后将出现一个下载证书按钮。选择它以下载证书。

      The Download certificate button.

      下载内容包括:

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

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

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

      The Download certificate button.
  8. 要应用您的更改并启用TLS,请选择保存数据库按钮:

    Use the Save database button to save database changes.

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

AWS管理控制台中,使用服务菜单找到并选择安全、身份和合规性 > Secrets Manager创建一个秘密,类型为其他类型的秘密,并填写以下键/值字段:

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

存储此密钥后,您可以在密钥详细信息页面上查看并复制Amazon Resource Name (ARN)

在您的数据库中创建一个向量索引

在您的Redis Cloud数据库设置完成后,使用FT.CREATE创建一个带有向量字段的搜索索引,作为Amazon Bedrock的知识库。您可以使用Redis Insightredis-cli来完成此操作。

Redis 洞察

Redis Insight 是一个免费的 Redis 图形用户界面,允许您可视化和优化 Redis 中的数据。

在Redis Insight中创建您的向量索引:

  1. Download and install Redis Insight 如果你还没有安装它。

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

    Connect button.
  3. 在连接向导中,在Redis Insight Desktop下,选择公共端点。选择使用Redis Insight打开以使用Redis Insight连接到数据库。

  4. 选择使用TLS。在CA证书部分,选择添加新的CA证书。在名称字段中为证书命名,并将redis_ca.pem的内容输入到证书字段中。

    The Redis Insight Add CA Certificate section.
  5. 选择需要TLS客户端认证。在客户端证书部分,选择添加新证书。在名称字段中为证书命名。将redis_user.crt的内容输入到证书字段中,并将redis_user_private.key的内容输入到私钥字段中。

    The Redis Insight Add Client Certificate section.
  6. 选择添加Redis数据库以连接到数据库。

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

    The Redis Insight workbench icon.
  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"  
    

    替换以下字段:

    • 替换为向量索引名称
    • 带有文本字段名称
    • 带有元数据字段名称
    • 带有向量字段名称
  9. 选择运行以创建索引。

    The Redis Insight run button.

redis-cli

redis-cli 命令行工具允许你直接从命令行连接并运行 Redis 命令。要使用 redis-cli,你可以 安装 Redis

公共端点和端口详细信息可从数据库列表或数据库的配置屏幕中获取。选择连接以查看如何使用redis-cli连接到您的数据库。

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

在您连接到redis-cli后,使用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"  

替换以下字段:

  • <index_name> 替换为向量索引名称
  • <text_field> 带有文本字段名称
  • 带有元数据字段名称
  • 带有向量字段名称

下一步

在您的Redis数据库设置完成后,您可以使用它在Amazon Bedrock中创建一个知识库

RATE THIS PAGE
Back to top ↑