近期,**[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 宣布支持 Inline Chat 功能**。该功能结合了在集成开发环境(IDE)中聊天的优势,同时可以直接更新代码。Visual Studio Code(VS Code)和 JetBrains 也同时宣布推出 Inline Chat 功能,**这一新功能非常适合在编辑现有文件时修复问题、优化代码、重构代码以及添加注释**。而且,它包含在 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 丰富的免费套餐中。
![image.png](https://dev-media.amazoncloud.cn/32a53b11305d4d7caaf1976c2ba095b2_image.png "image.png")
### **Inline Chat 新功能介绍**
**Inline Chat 功能允许用户直接在代码编辑器里添加背景信息**(比如需要解决代码错误的详细说明),随后生成式 AI 返回的内容将无缝整合进现有代码,省去了从聊天窗口复制粘贴的繁琐步骤。用户可以轻松查看建议,简单操作即可接受或拒绝修改。
**这项新功能特别适合用于编辑文件以修复缺陷、优化代码、重构代码以及添加注释等任务。**
[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 基于全面托管的服务平台 [Amazon Bedrock](https://aws.amazon.com/cn/bedrock/?trk=cndc-detail)构建,**具备智能任务分配能力,能够将任务精准匹配到最合适的基础模型,确保达到最佳效果**。同时,团队定期更新和优化底层模型,持续升级 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail),确保了其技术的领先地位和性能优势。
**作为领先业界的生成式 AI 助手,[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 不仅节省开发者时间,还能高效解决非常复杂的编码难题**。优化和模型升级过程都在后台自动进行,这样开发者可以**在工作时使无缝用工具**,并且随着时间的推移,享受到不断提升的使用体验。
![image.png](https://dev-media.amazoncloud.cn/0688b3f5ac36468fad43c9507c0e4a5c_image.png "image.png")
### **代码重构**
以 Inline Chat 的实际效果举例。假设是一个在网页上显示消息的类(class),它的起始设计非常简单,但随着时间推移,为满足不同需求而陆续添加了一些变体(改变文字颜色、显示警告信息和错误信息等),导致代码逐渐变得“臃肿”。
为避免继续增加更多变体,开发者希望通过重构代码来简化任务。此时,可以选中四个相关的方法,在 Mac 上按下⌘ + I,然后向 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 发出指令:“请将这些方法重构为一个方法,并为颜色和消息类型提供可选参数。”
![image.png](https://dev-media.amazoncloud.cn/2b1dd7e844814fb98690c16bcd8e96d1_image.png "image.png")
正如演示动图所示,[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 顺利完成任务,将代码重构为更简洁的方式(**[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 会用绿色标出即将添加的代码行,用红色标出计划删除的部分,清晰展示改动的具体内容**)。如果决定接受代码建议,只需点击确认按钮,[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 就会立即将建议应用至代码,完成修改。
当然,开发者也可以通过传统的聊天窗格来实现相同目标,但这需要开发者手动复制,再将其整合进代码,过程相对繁琐。相比之下,Inline Chat 功能更高效,**不仅直接返回清晰的差异视图,清晰标注将被添加或删除的部分,还可以直接在源代码上更新**,无需额外任何手动操作。
例如,如果开发者选择使用 Inline Suggestions 生成一个新方法,后续还需要您亲自清理旧的方法。而新的 Inline Chat 功能,在就地更新代码方面展现出了极大的优势。
### **添加注释文件**
接下来是 Inline Chat 功能另一个实际用途的演示。以最近进行的复杂数据处理算法为例,虽然代码可以运行正常,但缺少适当文档,可能会阻碍未来维护以及团队对代码的理解,因此决定为这段代码添加一个全面的注释文档。
![image.png](https://dev-media.amazoncloud.cn/cdab77434faa45b092ea66566cc15788_image.png "image.png")
选择整个函数并使用 Mac 上的⌘+I或 Windows 上的 Ctrl+I 激活 Inline Chat。在聊天界面输入“添加文档,包括整个代码中的描述性注释”的提示。[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 会迅速分析代码并生成相应文档(建议的新文本将以绿色高亮显示,表示已添加内容)。
**[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 在脚本开头创建了详细的注释,包括参数说明和返回值信息**,此外还在脚本各个关键位置添加了 Inline Comments,用以解释复杂的逻辑和计算过程。在仔细审阅建议文档后,点击回车键或“接受”按钮即可确认更改,随即 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 会将新文档无缝融入到现有代码中。
这一功能在处理遗留代码或新人加入项目时特别有用,**不仅有助于保持代码库文档风格的一致性,还能大幅减少之前手动编写文档的时间**,简化开发流程,显著提高代码库文档化和维护效率。
### **总结**
**Inline Chat 功能是 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 在生成式 AI 开发领域的又一重大突破。**
通过不断整合最新的人工智能语言模型成果,**[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 致力于成为先进的生成式 AI 助手,帮助开发者处理重复任务,从而专注于擅长领域。**
立即通过 VS Code 或 JetBrains 更新或安装 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) Developer 扩展来试用 Inline Chat 新功能,进一步在 IDE 中释放生产力!
![image.png](https://dev-media.amazoncloud.cn/768b2a28013644908dede9c5a348bdde_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/11ecae338ea5407d8f7e5f4c187ce501_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/6f6bdb2f96f14c918efda31ca647b858_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/3d21a2badaea42d4a2069c8086b4b400_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/bf9b695b42e7405bba9fb2663e5f8d85_image.png "image.png")