Amazon Q 开发者 - 自定义



Amazon Q 自定义是一组允许 Amazon Q 根据您公司代码库提供建议的元素。您将数据源与代码库连接起来,Amazon Q 使用此内容提供针对您组织开发风格的帮助。

先决条件

要使用 Amazon Q 自定义,请按照 Amazon Q Developer Pro 设置流程进行操作,包括将需要访问自定义的用户添加到您的配置文件中。

授权您的管理员

要使用 Amazon Q 自定义,您的 Amazon Q 管理员需要访问您的代码库,这些代码库存储在 Amazon S3 上或通过 AWS CodeConnections。但是,在标准 Amazon Q Developer Pro 设置过程中,您的 AWS Organizations 管理员不会授予对这些服务的访问权限。

因此,在使用 Amazon Q 自定义之前,您必须将以下权限添加到 Amazon Q 管理员的角色中

{
    "Version": "2012-10-17",
    "Statement": [{
            "Effect": "Allow",
            "Action": [
                "sso-directory:DescribeUsers"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codewhisperer:CreateCustomization",
                "codewhisperer:DeleteCustomization",
                "codewhisperer:ListCustomizations",
                "codewhisperer:UpdateCustomization",
                "codewhisperer:GetCustomization",
                "codewhisperer:ListCustomizationPermissions",
                "codewhisperer:AssociateCustomizationPermission",
                "codewhisperer:DisassociateCustomizationPermission"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codeconnections:ListConnections",
                "codeconnections:ListOwners",
                "codeconnections:ListRepositories",
                "codeconnections:GetConnection"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "codeconnections:UseConnection",
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "codeconnections:ProviderAction": [
                        "GitPull",
                        "ListRepositories",
                        "ListOwners"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject*",
                "s3:GetBucket*",
                "s3:ListBucket*"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

准备您的数据

以下是在为 Amazon Q 自定义准备数据源时需要牢记的关键概念

  • 添加团队鼓励的模式代码。
  • 避免包含错误、安全漏洞、性能问题等的代码。
  • 确保数据源包含至少 2 MB 至多 20 GB 的源代码文件。
  • 大于 10 MB 的文件将被忽略。
  • 对于您希望自定义支持的每种语言,至少包含 10 个文件。
  • 将源代码放在目录中,而不是在 Amazon S3 数据源的根级别。
Amazon Q 自定义支持以下语言和文件扩展名
  • Java (.java)
  • JavaScript (.js, .jsx)
  • Python (.py)
  • TypeScript (.ts, .tsx)

在聊天中启用自定义

要在聊天中启用自定义,请使用以下步骤。

  • 转到 Amazon Q Developer 控制台。
  • 在导航面板中,选择“**设置**”。
  • 选择“**查看设置**”。
  • 在“**详细信息**”下,选择“**编辑**”。
  • 在“**高级设置**”下,选中“**启用聊天自定义功能**”旁边的复选框。
  • 选择“**保存更改**”。

创建您的自定义

要创建您的自定义,请按照以下步骤操作

  • 要设置 Amazon Q Developer Pro,请启用 IAM Identity Center,授权管理员访问 Amazon Q Developer 以及激活 Amazon Q Developer 控制台。
  • 打开 Amazon Q Developer 控制台。
  • 从左侧的导航窗格中,选择“**自定义**”。
  • 将显示自定义页面。
  • 选择“**创建自定义**”。
  • 输入自定义名称和(可选)描述。

连接到您的数据源

要通过 CodeConnections 连接到您的数据源,请按照以下步骤操作

  • 在“**连接到源提供程序**”下,选择 CodeConnections。
  • 如果您使用的是现有连接,请选择“**选择现有连接**”。然后,在“**选择连接**”下,从下拉列表中选择您的连接。否则,请选择“**创建新连接**”。
  • 在弹出的窗口中,导航到您的数据源并按照控制台中的说明操作。
  • 创建数据源后,返回“**创建自定义**”页面。
  • 在“**选择连接**”下,从下拉列表中选择您的连接。

要连接到您通过 Amazon S3 的数据源,请按照以下步骤操作

  • 在“**连接到源提供程序**”下,选择 Amazon S3。
  • 选择“**浏览 Amazon S3**”。
  • 导航到包含代码库的存储桶或文件夹,并记下 URI。
  • 将 URL 粘贴到标记为“输入**Amazon S3 URI**”的字段中。

自定义创建问题

您可以通过以下提到的方式解决以下错误

  • 您可能会收到错误:“提供的存储库的总大小超过了自定义允许的最大大小”。在这种情况下,从数据源中删除一个存储库,然后重试。
  • 您可能会收到错误:“数据不足以创建自定义。添加更多来自支持语言的文件并重试”。如果收到此错误,请添加更多包含自定义重点编程语言的文件,然后重试。

删除您的自定义

要删除您的自定义,请按照以下步骤操作

  • 打开 Amazon Q Developer 控制台。
  • 从左侧的导航窗格中,选择“**自定义**”。
  • 将显示自定义页面。
  • 如果要删除的自定义仍在活动状态,请选择“**停用**”。
  • 选择“**删除**”。

评估您的自定义

要评估您的自定义,请按照以下步骤操作

  • 在 Amazon Q Developer 控制台中,从导航面板中,选择“**自定义**”。
  • 选择要检查的自定义的名称。
  • 窗口右侧的评估分数显示了 Amazon Q 评估的自定义可能有效性。

优化您的自定义

要优化您的自定义,请按照以下步骤操作

  • 考虑扩展数据源以包含更多代码存储库。
  • 如果您主要包含来自有限语言的数据,请考虑扩展到更多编程语言。
  • 删除自动生成的文件和存储库,或从模板生成的那些文件,因为它们会增加噪音,并且对于训练自定义没有价值。
  • 如果您的代码库很少使用内部库,则核心 Amazon Q 模型可能已经表现最佳。

日志记录和故障排除

Amazon Q 可以为您提供日志文件,帮助您了解和解决自定义问题。

设置日志交付

要设置日志交付,请在自定义的控制台页面上选择“日志交付”选项卡。按照界面中的说明配置日志交付。然后选择“**创建日志交付**”。

交付到 Amazon S3 存储桶的日志前缀将为
AWSLogs/account_id/codeWhispererCustomizationLogs/region/customization_id/year/month/day/hour/

文件将被压缩,命名格式为
account_id_codeWhispererCustomizationLogs_customization_id_date_file_id.log.gz

解释自定义日志

下表列出了可能有助于您了解自定义问题的日志消息。

日志消息 日志级别
开始从源 source 中提取 number 个存储库 信息
从存储库下载数据:存储库名称 信息
已收到 amount MB 的支持数据。需要 amount MB。添加更多数据并重试。 错误
提供的 CodeStar Connection ARN:Arn 无效。 错误
尝试访问提供的 CodeStar Connection 时拒绝访问:Arn 错误
使用 AWS CodeStar Connection 失败:Arn 可能已被客户删除 错误
克隆存储库时来自 CodeStar Connection 的 ProviderThrottlingException:Arn:repository 错误
处理来自 S3 的数据:S3 URI 信息
指定的 S3 路径无效:S3 目录 错误
无法访问提供的 S3 存储桶:存储桶名称 错误
提供的 S3 存储桶:存储桶名称不存在。 错误
提供的 S3 密钥 S3 URI 不存在。 错误

自定义错误消息

下表将帮助您了解 Amazon Q 控制台中的自定义相关消息。

错误消息 建议的操作
您已激活了最大数量的自定义。 停用一个活动的自定义并重试。
您已超过了组权限限制的最大数量 limit。 删除一个组并重试。
您已超过了用户权限限制的最大数量 limit。 删除一个用户并重试。
已达到最大活动作业数。 等待同一帐户中正在进行的作业完成。重试操作。
处理请求时遇到意外错误。 重试操作。如果继续失败,请联系客户支持。
使用 AWS CodeStar Connection 失败:Arn 可能已被客户删除 尝试访问提供的 AWS CodeConnections 连接时拒绝访问。
尝试访问提供的 AWS CodeConnections 连接时拒绝访问 验证连接和第三方提供商上的权限。然后重试操作。
访问提供的 AWS CodeConnections 连接时未找到一个或多个存储库。 验证第三方提供商的权限和存储库列表。然后重试操作。
提供的 AWS CodeConnections 连接 ARN 无效。 使用更正后的连接 ARN 更新自定义。
与提供的 AWS CodeConnections 连接关联的主机不可用。 5 分钟后重试。
指定的 Amazon S3 路径无效。 使用有效的 Amazon S3 URI 更新自定义。
无法访问提供的 Amazon S3 存储桶。 验证管理员角色的权限。修复任何权限问题后重试。

激活您的自定义

要激活自定义的版本,请按照以下步骤操作

  • 打开 Amazon Q Developer 控制台。
  • 从左侧的导航窗格中,选择“**自定义**”。
  • 选择要为其激活版本的自定义。
  • 从“版本”表中选择要激活的版本。
  • 选择“激活”。

更新您的自定义

要创建自定义的新版本,请按照以下步骤操作

  • 打开 Amazon Q Developer 控制台。
  • 从左侧的导航窗格中,选择“**自定义**”。
  • 选择您想要为其创建新版本的自定义项。
  • 从“操作”下拉菜单中选择“创建新版本”。
  • 如果适用,请更改数据源。
  • 选择“创建”。

添加用户和组

要将用户和组添加到您的 Amazon Q 自定义项,请按照以下步骤操作

  • 在 Amazon Q Developer 控制台中,从导航面板中,选择“**自定义**”。
  • 选择您要向其添加用户或组的自定义项的名称。
  • 在窗口的下半部分,如有必要,选择“用户和组”选项卡,然后选择“用户”或“组”子选项卡。
  • 选择需要访问您的自定义项的用户或组。
  • 选择“添加用户”或“添加组”。

使用 Amazon Q 自定义项

要将自定义项与 VS Code 配合使用,请按照以下步骤操作

  • 使用 IAM Identity Center 认证到 Amazon Q Developer Pro,方法是按照 IDE 中安装 Amazon Q Developer 扩展或插件下的步骤操作。
  • 在“开发人员工具”窗格中,在 Amazon Q 下,选择“选择自定义项”。
  • 在窗口顶部,从下拉菜单中选择相应的自定义项。

要将自定义项与 JetBrains 配合使用,请按照以下步骤操作

  • 使用 IAM Identity Center 认证到 Amazon Q Developer Pro,方法是按照 IDE 中安装 Amazon Q Developer 扩展或插件下的步骤操作。
  • 在“开发人员工具”窗格中,在 Amazon Q 下,选择“选择自定义项”。
  • 在弹出窗口中,选择相应的自定义项。
  • 选择“连接”。
广告