CodeWhisperer - 快速指南

什么是 CodeWhisperer?

Amazon CodeWhisperer 是一款由 AI 驱动的代码建议工具,可为开发人员提供实时代码建议。代码建议基于经过数十亿行代码训练的大型语言模型 (LLM)。 CodeWhisperer 提供上下文感知代码建议,包括样板代码、函数模板、错误处理代码片段和 API 调用示例。

CodeWhisperer 帮助开发人员使用各种编程语言(如 Java、Python、JavaScript、TypeScript、C#GO、PHP、RustKotlinSQLScalaCC++ 等。此功能使其成为初学者和经验丰富的程序员的宝贵工具。

开发人员可以在各种 IDE 中使用 CodeWhisperer,例如 Visual Studio Code、IntelliJ IDEA、CLion、GoLand、WebStorm、Rider、PhpStorm、PyCharm、RubyMine、DataGrip 和 AWS Cloud9。

CodeWhisperer 的主要功能和优势

在本节中,我们重点介绍了 Amazon CodeWhisperer 的一些主要功能和优势,这些功能和优势使其成为必不可少的现代开发人员的工具 −

1. 实时代码建议

Amazon CodeWhisperer 实时分析您的编程代码上下文,并在您输入代码时提供建议。建议可以是一行代码、整个函数或完整的块。此功能可显著加快开发过程。

2.多语言支持

Amazon CodeWhisperer 支持多种编程语言,包括 PythonJavaJavaScriptTypeScript、C#、GO、PHP 等。此功能允许开发人员在不同的项目中使用它而无需切换工具。

3. 上下文感知建议

CodeWhisperer 的主要功能之一是它能够理解您正在编写的代码的上下文。它会分析之前的代码行并提供与您的任务高度相关的建议。它有助于提高编码准确性。

4. 无缝 IDE 集成

CodeWhisperer 可以轻松直接地与流行的 IDE 集成,例如 Visual Studio Code、IntelliJ IDEAJupyter。此功能可轻松融入您现有的工作流程,甚至无需学习新工具。

5. 可自定义的设置

您可以调整 Amazon CodeWhisperer 的建议以符合您的偏好。它包括建议的频率和风格,以符合您的编码实践。

CodeWhisperer 如何提高开发人员的工作效率?

Amazon CodeWhisperer 旨在提高开发人员的工作效率。下面列出了 CodeWhishperer 帮助提高工作效率的一些方法 −

自动执行重复任务

开发人员经常花费大量时间编写重复代码,例如设置 API 连接、处理异常或操作数据。Amazon CodeWhisperer 通过提供智能建议来自动执行所有这些任务。它允许开发人员专注于更具创造性的编码工作。

减少错误和漏洞

CodeWhisperer 提供相关且上下文感知的建议,因此开发人员获得最少的编码错误。它还可以提高代码的整体质量并减少漏洞。

更快的开发周期

CodeWhisperer 提供实时代码建议,从而节省开发人员的时间。这加快了开发过程并帮助开发人员更快地发布最终产品。

提高代码一致性

Amazon CodeWhisperer 确保所有团队成员都以相似的风格编写代码。这使得每个人更容易协作和审查代码。

帮助初学者学习

CodeWhisperer 提供遵循良好实践的有用代码建议。这有助于初学者更快地学习并编写更高效的代码。

CodeWhisperer - 入门

开始使用 Amazon CodeWhisperer 非常容易。无论您是初学者还是经验丰富的程序员,它都可以显著提高您的编码效率。

借助几个简单的步骤,您可以在您喜欢的 IDE 中安装、配置和开始使用 CodeWhisperer。

使用 CodeWhisperer 的先决条件

在开始使用 Amazon CodeWhisperer 之前,您需要满足以下先决条件 −

AWS 账户

要使用 Amazon CodeWhisperer,您必须拥有一个 Amazon Web Services (AWS) 账户。如果您没有 AWS 账户,您可以在 AWS 网站上免费创建它。创建帐户后,您现在需要登录 AWS 管理控制台。

集成开发环境 (IDE)

CodeWhisperer 可与多种流行的 IDE 配合使用,例如 Visual Studio Code、IntelliJ IDEA、CLion、GoLand、WebStorm、Rider、PhpStorm、PyCharm、RubyMine、DataGrip 和 AWS Cloud9。

您必须在计算机上安装其中一个 IDE。如果您没有,可以先下载并安装您选择的 IDE,然后再继续。

支持的编程语言

CodeWhisperer 目前支持的编程语言包括 Java、Python、JavaScript、TypeScriptC#GOPHPRustKotlinSQLScalaCC++

在开始使用 CodeWhisperer 之前,建议确保您的项目正在使用这些受支持的语言之一,以便它可以为您提供相关建议。

AWS Toolkit

您还需要在 IDE 中安装 AWS Toolkit。AWS Toolkit 是一个插件,可将您的 IDE 与 AWS 服务(包括 CodeWhisperer)集成在一起。

如何安装和配置 CodeWhisperer?

按照以下步骤安装和配置 Amazon CodeWhisperer −

步骤 1:在您的 IDE 中安装 AWS 工具包

首先,您需要在您首选的 IDE 中安装 AWS 工具包。例如,如果您使用的是 Visual Studio Code,则可以在扩展市场中搜索 AWS 工具包 并安装它。对于 IntelliJ IDEA,您可以在插件部分找到 AWS 工具包。

安装 AWS 工具包后,您需要重新启动 IDE 以激活该插件。

步骤 2:启用 Amazon CodeWhisperer

安装 AWS 工具包后,首先在您的 IDE 中打开 AWS 工具包面板。现在,在可用服务列表下找到 Amazon CodeWhisperer 并启用它。您可能需要登录到您的 AWS 账户来验证该服务。

步骤 3:连接到您的 AWS 账户

如果您尚未登录,则需要使用您用于设置 AWS 账户的用户名和密码登录到您的 AWS 账户。此步骤非常重要,因为它允许 CodeWhisperer 访问您的编码环境并根据您的代码提供建议。

步骤 4:配置设置

您可以根据需要轻松配置 CodeWhisperer 设置。例如,如果您想自定义 CodeWhisperer 的建议,请转到 IDE 的 AWS Toolkit 部分中的设置。在这里,您可以控制建议出现的频率以及您喜欢的建议类型(例如,单行、代码块等)。

在您的 IDE 中设置 Amazon CodeWhisperer

安装和配置 CodeWhisperer 后,您现在需要在 IDE 中进行设置,以便开始使用它来增强您的编码体验。请按照下面给出的步骤 −

步骤 1:打开新项目或现有项目

在您的 IDE 中,您需要打开使用受支持的编程语言之一的项目,例如 PythonJavaJavaScript。 Amazon CodeWhisperer 将自动检测您正在使用的语言,并根据代码上下文开始提供建议。

第 2 步:开始编写代码

当您开始在代码编辑器中输入时,CodeWhisperer 将分析您的代码并提供实时建议。这些建议将作为下拉列表或内联显示在编辑器中。您可以选择接受、拒绝或修改建议。

CodeWhisperer - 代码建议

Amazon CodeWhisperer 使用机器学习模型来理解您当前正在编写的代码。它会分析您迄今为止编写的代码,并根据该信息实时生成代码建议。

  • 只要您开始在编辑器中输入代码,CodeWhisperer 就会处理当前代码的上下文。
  • 处理后,CodeWhisperer 会提供建议,帮助您完成函数、方法甚至整个代码块。
  • CodeWhisperer 旨在预测您接下来可能需要什么,无论是变量、函数名称还是常见的代码结构。这些建议对于重复性任务特别有用。

CodeWhisperer 使用的 ML 模型是在大型语言模型 (LLM)上进行训练的,主要包括各种编程语言的常见编码模式、函数和库。

代码建议示例

Amazon CodeWhisperer 支持多种编程语言,包括 PythonJavaJavaScript

让我们看看 CodeWhisperer 如何在 Jupyter Notebook −

中提供 Python 语言建议 代码建议示例

例如,在 JavaScript 中,如果您尝试为按钮单击创建事件侦听器,CodeWhisperer 可能会建议以下 −

document.getElementById('myButton').addEventListener('click', function() {
    alert('Button clicked!');
});

它可以帮助您高效地完成添加事件侦听器或其他 DOM 操作的代码。

自定义 CodeWhisperer 建议

Amazon CodeWhisperer 的主要功能之一是它允许您自定义建议以匹配您的编码风格和偏好。

调整建议频率

您可以调整编码建议的频率。如果您认为收到的建议太多,您可以在设置菜单中降低频率。另一方面,如果您想要更详细的建议,则可以增加建议代码块的复杂性。

自定义代码块

Amazon CodeWhisperer 不仅提供单行建议,您还可以选择接收整个代码块的建议。

如果您正在处理一个经常重复类似代码模式的大型项目,则可以自定义 CodeWhisperer 以建议整个代码片段。这节省了开发人员编写代码的时间。

暂停自动代码建议

您还可以在 Amazon CodeWhisperer 中暂停自动代码建议。下面给出了一个示例,展示了如何在 Jupyterlab 中暂停和恢复 CodeWhisperer 的自动代码建议 −

暂停自动代码建议

特定于语言的自定义

您还可以根据所使用的编程语言自定义 CodeWhisperer。例如,您可以自定义它以在 Python 中提供更详细的建议,但在 JavaScript 中将其限制为单行代码建议。

忽略特定建议

如果您认为某些特定类型的建议没有用,您可以自定义 CodeWhisperer 以忽略它们。

例如,如果您习惯于编写变量名称,则可以自定义 CodeWhisperer 以仅为代码中更复杂的部分提供建议。

CodeWhisperer 与 GitHub Copilot

Amazon CodeWhisperer 和 Github Copilot 都是基于 AI 的代码建议工具,但它们的设计目的不同。下表比较和对比了 Amazon CodeWhisperer 和 GitHub Copilot 的最重要功能 −

功能 CodeWhisperer GitHub Copilot
重点 它针对 AWS 开发和与 Lambda、S3、EC2 等 AWS 服务的集成进行了优化。 它是适用于各种编程语言的通用 AI 代码助手。
AWS 集成 它与 AWS SDK、API 和服务集成。 它没有特定的 AWS 集成。它与 GitHub 存储库和编辑器配合使用。
安全性和隐私 它优先考虑安全编码实践和数据隐私。 有人担心代码建议可能基于公开的开源代码。这可能会导致许可问题。
编程语言支持 它主要关注 AWS 友好型语言,如 Python、Java、JavaScript,但也支持其他语言,如 C、C++ 等。 它支持多种编程语言,如 Python、JavaScript、Java、Ruby 等。
支持的 IDE 它可以与 Visual Studio Code、IntelliJ IDEA、PyCharm、Jupyter Lab 和其他 AWS 特定的 IDE 配合使用。 您可以将它与流行的 IDE 集成,如 Visual Studio Code、Neovim、JetBrains IDE。
代码建议 它提供上下文感知建议,尤其是针对云开发。 它为各种编码任务提供通用代码建议。
自定义 它专注于 AWS 用例,并根据云应用的最佳实践提供建议。用户可以根据需要自定义代码建议。 它更通用,较少关注特定的云平台。
定价 它目前作为 AWS 工具包的一部分提供。未来可能会有定价。 它是一种基于订阅的定价模式。还提供免费试用。

CodeWhisperer 相对于传统代码编辑器的优势

传统的代码编辑器,如 Visual Studio CodePyCharm,仅提供一些基本功能,如语法突出显示、代码完成和调试工具。但是,这些编辑器依赖人工输入和文档来建议代码完成或自动更正小语法错误。

让我们看看 Amazon CodeWhisperer 相对于传统代码编辑器的一些优势 −

1. AI 支持的建议

传统的代码编辑器提供了一些基本的自动完成功能。另一方面,Amazon CodeWhisperer 使用机器学习模型根据您的代码上下文生成实时代码建议。

2. 更快的代码编写

传统的代码编辑器要求开发人员手动编写大部分代码。但是,使用 Amazon CodeWhisperer,代码建议可以减少开发中输入代码的时间,尤其是对于重复的代码块。

3. 轻松的 AWS 集成

Amazon CodeWhisperer 可以轻松与 AWS 服务集成,而传统代码编辑器却不提供此功能。对于使用云服务的开发人员,此内置集成可节省 AWS 文档或手动编写 API 调用的时间。

何时为您的项目选择 Amazon CodeWhisperer?

选择正确的工具取决于您的特定项目需求。以下是 Amazon CodeWhisperer 可能有用的一些场景 −

1. 基于 AWS 的项目

如果您正在处理依赖于 Lambda、S3 或 Dynamo DB 等 AWS 服务的项目,CodeWhisperer 是最好的工具。它旨在理解 AWS SDK,并提供建议,帮助您更快、更高效地编写特定于 AWS 的代码。

2. 项目需要严格的安全性

如果您正在从事需要严格安全性和数据隐私的项目,Amazon CodeWhisperer 是一个不错的选择。它提供遵循安全编码实践的代码建议。此功能可帮助您避免常见的安全错误。

3. 严格截止日期的项目

如果您正在从事具有严格截止日期的项目,Amazon CodeWhisperer 的实时建议可以帮助您加快开发周期。使用 CodeWhisperer,您可以专注于更快地开发产品,而不是花时间在重复的任务上。

4. 团队协作

在与团队合作的情况下,编码风格的一致性变得非常重要。Amazon CodeWhisperer 可确保团队成员遵循类似的编码模式。此功能使团队中的每个人都能更轻松地理解和审查彼此的代码。

CodeWhisperer - 安全性和隐私性

Amazon CodeWhisperer 优先考虑安全性和隐私性。它可确保您的数据保持私密和受保护。使用 CodeWhisperer 时,了解如何管理和处理数据非常重要 −

不共享代码

CodeWhisperer 不会与第三方共享您的代码。您的代码在您的开发环境中保持安全和私密。

实时数据处理

CodeWhisperer 不会将您的代码存储在长期存储系统中,因为它通过实时处理数据来提供代码建议。这种实时处理允许开发人员获得即时代码建议,同时确保其数据安全。

符合行业标准

Amazon Web Services (AWS) 有严格的安全性和合规性规则。 CodeWhisperer 是 AWS 的一部分,它也遵循这些规则以确保您的数据得到正确处理。

无论您是在开发金融、医疗保健还是任何其他敏感领域的软件,Amazon CodeWhisperer 都可以帮助您确保数据安全并满足 GDPR 和 HIPAA 等重要法规。

使用 CodeWhisperer 确保安全的代码开发

让我们看看 CodeWhisperer 如何增强代码的安全性 −

安全编码实践

CodeWhisperer 为遵循安全编码实践编写代码提供了建议。

无论是处理敏感信息还是使用安全 API,CodeWhisperer 都可以帮助开发人员避免一些常见的安全错误,例如注入攻击、缓冲区溢出和错误处理用户输入。

帮助预防漏洞

现代软件可能非常复杂,如果开发人员不了解,代码中很容易出现漏洞。

CodeWhisperer 通过在建议代码的同时识别可能的安全问题来帮助开发人员。此功能有助于确保您的应用程序从一开始就具有较少的漏洞,从而进一步降低将来出现安全问题的可能性。

防范恶意代码

CodeWhisperer 还可以保护您的项目免受恶意代码被添加到项目中的风险。

通过推荐安全代码模式,它可以帮助开发人员编写不太可能出现漏洞的代码,例如跨站点脚本 (XSS) 或 SQL 注入。这一额外的保护层可确保您的项目免受潜在攻击。

CodeWhisperer - 故障排除

Amazon CodeWhisperer 是一款功能强大的工具,旨在通过提供代码建议、提高生产力和增强整体编码体验来帮助开发人员。但与任何其他工具一样,用户可能会不时遇到问题。

CodeWhisperer 中的常见问题

在本节中,让我们了解您在使用 CodeWhisperer 时可能遇到的一些常见问题,然后介绍它们的合理解决方案 −

问题 1:未显示代码建议

用户通常面临的最常见问题之一是"未收到来自 CodeWhisperer 的任何代码建议"。

解决方案

如果您遇到此问题,则需要确保 CodeWhisperer 已在您的 IDE 中正确安装和启用。您应该检查您的 IDE 设置以确认 CodeWhisperer 已激活并正确配置。您也可以根据需要重新启动 IDE。

问题 2:性能缓慢

用户在使用 Amazon CodeWhisperer 时有时可能会遇到性能缓慢的问题。

解决方案

您应该首先检查您的互联网连接,因为 CodeWhisperer 需要稳定的连接才能提供实时建议。此外,关闭在后台运行的其他繁重应用程序也可以提高性能。

问题 3:不准确的建议

用户有时可能会收到 CodeWhisperer 提供的不相关或不准确的建议。

解决方案

如果您发现不相关或不准确的建议,并且您认为这些建议不符合您的编码风格,请尝试在代码注释中提供上下文。此上下文可帮助 CodeWhisperer 生成更加个性化的建议。

问题 4:安装问题

用户在安装或配置时有时可能会遇到问题。

解决方案

您必须确保遵循特定 IDE 的正确安装说明。

提高 CodeWhisperer 中的代码建议准确性

下面列出了一些可以实施的建议,以提高 Amazon CodeWhisperer − 的准确性

提供上下文

您可以向代码添加注释和上下文,这可以显著提高 CodeWhisperer 的代码建议质量。

使用代码模式

如果您经常使用某些特定的编码模式,请确保在代码中始终如一地应用它们。这有助于 Amazon CodeWhisperer 随着时间的推移了解您的偏好并提供更相关的建议。

定期更新

您应该将 IDE 和 CodeWhisperer 更新到最新版本。它有助于提高性能、修复错误和改进生成代码建议的算法。

探索设置

您应该在 IDE 中检查 CodeWhisperer 的设置。这是因为调整某些偏好可以增强其响应能力和与您的编码风格的相关性。

如何向 AWS 提供反馈?

您应该向 AWS 提供有关您使用 CodeWhisperer 的体验的反馈,以提高其性能。让我们看看如何分享您的反馈 −

使用工具内反馈选项

CodeWhisperer 通常在 IDE 中具有内置反馈机制。您可以勾选允许您在使用该工具时对建议进行评分或直接报告问题的选项。

AWS 支持论坛

您可以在支持论坛中分享您的经验和问题。它可以帮助改进该工具并帮助面临类似挑战的其他用户。

联系 AWS 支持

对于更严重的问题或疑虑,您可以直接联系 AWS 支持。尝试详细描述问题并包含任何相关的代码片段或错误消息。这些信息将帮助 AWS 团队更好地了解您的疑虑。

反馈调查

有时 AWS 会进行调查以收集用户对其服务的反馈。您可以参与这些调查以分享您对 CodeWhisperer 的想法。