Amazon CodeWhisperer
在 IDE 中实时进行代码补全和生成的 AI 编码助手,还具备安全扫描和许可证引用追踪功能
概述
Amazon CodeWhisperer(现为 Amazon Q Developer 的代码生成功能)是一款 AI 编码助手,可根据 IDE 中的注释和代码上下文实时建议下一步应编写的代码。支持 Python、Java、JavaScript、TypeScript、C#、Go 等 15 种以上语言,从整个函数生成到单行补全均可支持。安全扫描功能可检测漏洞,引用追踪器为与开源代码高度相似的建议附加许可证信息。
上下文感知代码生成机制
CodeWhisperer 的代码生成不仅参考当前编辑的文件,还将项目内的相关文件(导入目标、类型定义、测试文件等)作为上下文,生成符合项目特定模式的建议。在注释中用自然语言描述意图,即可生成完整的函数或类实现。对 AWS SDK 使用模式特别擅长,可高精度生成 S3 文件上传、DynamoDB 查询、Lambda 处理程序实现等 AWS 特有代码。建议显示多个候选项,Tab 键采用、方向键切换候选。支持的 IDE 包括 VS Code、JetBrains 系列(IntelliJ、PyCharm 等)、Visual Studio 和 AWS Cloud9。
安全扫描与漏洞检测
CodeWhisperer 的安全扫描基于 OWASP Top 10 和 CWE 通过静态分析检测漏洞模式。在编写代码时实时警告 SQL 注入、跨站脚本、硬编码凭证、未加密通信、不当访问控制等安全问题。检测到的漏洞会提供修复方案,可一键替换为安全的代码模式。还支持整个项目扫描,推荐在 CI/CD 流水线中集成,在拉取请求时执行自动扫描。也支持对 Infrastructure as Code(CloudFormation、Terraform)模板的扫描,可检测安全组过度开放或加密配置缺失等问题。
定制化与企业运维
Professional 版可将组织内部代码仓库作为学习数据进行定制,生成符合内部框架和编码规范的建议。通过 CodeStar Connections 连接 GitHub、GitLab、Bitbucket 仓库,实现反映私有代码库上下文的补全。管理员可在 Organizations 级别设置策略,阻止与特定开源许可证(如 GPL)相似的代码建议,或控制引用追踪器的通知级别。使用情况仪表板可可视化团队整体的代码生成量、采用率和安全扫描检测数量,用于定量衡量开发生产力。通过与 IAM Identity Center 集成,实现 SSO 无缝登录和按用户组分配许可证。