首页 > 编程语言 >通义灵码 AI 程序员

通义灵码 AI 程序员

时间:2025-01-08 14:00:57浏览次数:3  
标签:文件 快照 AI 代码 程序员 灵码 变更

通义灵码 AI 程序员,具备多文件代码修改(Multi-file Edit)和使用工具(Tool-use)的能力,可以帮助开发者端到端地完成一个编码任务,如需求实现、问题解决、单元测试用例生成、批量代码修改等。

AI 程序员可以帮助开发者快速完成一个需求任务的代码编写工作,在与 AI 程序员对话过程中,可以遵循以下几点建议:

  • 清晰的需求描述:首先需要澄清我们需要 AI 程序员帮我们做什么,建议包含一个明确的目标,并通过步骤式的结构化描述,详细地描述你期望完成的开发任务要求;
  • 指定需要的上下文:选择代码文件、图片、codebase、codeChanges 等上下文,可以帮助 AI 程序员获取需求相关的语境。同时,结合详细执行步骤和要求,AI 程序员更精准地了解你的意图,生成最佳的方案和建议代码;
  • 明确生成要求:告诉 AI 程序员在生成代码修改建议时,你期望它遵循的要求,比如语言、规范、格式、变更目标等,如“生成变更时,同时为每个方法生成英文注释”;
  • 善用快照功能:当 AI 生成内容不符合预期,或你的需求有变化时,可以通过快照功能回退到之前的对话轮次和代码变更,继续重新提问;
  • 审查和修改变更:AI 程序员完成多个文件的代码变更后,开发者可以通过变更对比查看视图(Diff View)进行审查,以及对局部代码片段进行接受、拒绝、修改,保证最后得到符合预期的代码变更。

 

唤起 AI 程序员

当开发者期望和 AI 程序员一起完成一个研发任务时,可以通过 IDE 扩展导航打开通义灵码插件的窗口,并切换到 AI 程序员模块,或使用快捷键 ⌘ ⇧ I 唤起 AI 程序员,即可开始使用。

与 AI 程序员一起编程

AI 程序员与开发者一起围绕开发任务进行编码工作时,开发者需要输入清晰的需求描述和要求,AI 程序员可以为开发者在工程内进行多个文件的修改,开发者审查并接受相关代码变更即可。

同时,通义灵码提供了相关的交互界面帮助开发者与 AI 程序员进行对话和交互,整体交互界面区域如下:

  • 新建会话:如果和 AI 程序员正在对话并有文件变更,单击后将出现二次确认,确认后会终止或取消当前文件变更,同时创建一个新的会话;
  • AI 程序员对话区域:展示开发者(问题)和 AI 程序员(回答)对话的过程,如果涉及到文件变更、计划确认等,也将在会话流的回答卡片中进行状态展示或操作;
  • 工作区:承载代码变更文件的展示,以及针对当前会话流中的多次对话产生的多次变更文件进行快照管理,同时提供查看、拒绝、接受代码变更的相关操作入口;
  • 需求描述输入区域:开发者进行需求描述输入的区域,提供了选择上下文、自然语言输入、自然语言和上下文组装的能力;
  • 变更对比查看和操作区域:当前快照下文件与其对应本地文件的变更差异查看视图,并提供针对代码变更片段进行修改、拒绝或接受的操作,以及文件级别的变更接受或拒绝操作。

需求描述输入(User Input)

打开 AI 程序员后,即可看到需求输入区域,在输入框内单击 ➕ 或者输入#即可选择需要的相关上下文。输入完成后发送即可,AI 程序员将根据需求描述自动进行需求理解、相关信息检索、任务拆解、编码实现等。

多文件代码修改(Multi-file Edit)

变更文件生成过程

当 AI 程序员对工程内多个代码文件进行修改时,每一个文件的修改将至少经历生成、应用的过程,生成代码变更的过程中,可在 AI 程序员的回答卡片中和工作区中看到相关的变更文件,以及相应的状态:

  • 生成中(Generating):根据任务拆解的修改计划生成对各个文件的代码片段修改建议的过程;
  • 应用中(Applying):某文件的代码片段修改建议生成完成后,将自动结合原文件内容和代码片段修改建议,生成相关代码变更文件(非原文件);
  • 应用完成(Applied): 代码变更文件生成完成。

回答卡片中的文件或工作区的文件在生成中、应用中的状态时,单击对应文件,即可看到对应文件的代码修改建议生成过程、代码变更文件与原文件变更对比(Diff)生成过程。

AI 程序员完成的代码变更文件将聚合在工作区,方便开发者进行查看和操作。

审查、接受、拒绝代码变更

单击工作区的查看变更按钮或单击文件列表中的某文件,即可看到对应文件的变更对比查看视图(Diff View),开发者在此视图中可以进行如下操作:

  • 单击上下键进行切换查看当前文件的多个变更点;
  • 单击某变更点上的拒绝、采纳按钮进行决策操作;
  • 单击文件级操作区的前后键进行多个变更文件的查看;
  • 单击文件级操作区的拒绝、采纳按钮进行决策操作;
  • 局部修改当前变更文件。

JetBrains IDEs 的视图和操作位置,示意如下:

VS Code 的视图和操作位置,示意如下:

说明:

  1. 开发者基于当前快照的代码变更文件产生的修改,将统一进入当前快照的最新内容中,进行拒绝或接受操作时,将统一被拒绝或接受;
  2. 当单击接受某片段、某文件的代码变更时,变更内容将被合并到原文件代码内容中。

当所有代码变更文件均被操作过拒绝或接受变更后,当前快照会变为已接受、部分接受、已拒绝状态,各个状态的相关释义如下:

  • 已接受:某文件有代码变更接受,视为该文件为已接受状态;所有文件为已接受状态,当前快照为已接受状态;
  • 部分接受:某文件有代码变更接受,视为该文件为已接受状态;有部分文件为已接受状态,当前快照为部分接受状态;
  • 已拒绝:某文件在无代码变更被接受,视为该文件为已拒绝状态;所有文件为已拒绝状态,当前快照为已拒绝状态。

多轮对话及变更快照(Multi-turns & Snapshot)

进行多轮次需求对话

当进行了一轮对话并生成代码变更文件后,如需继续补充需求或者修改需求,可在当前任务的会话流中继续提问,AI 程序员将结合前序轮次生成的代码变更分析补充的需求,并生成新的代码修改建议,产生一个或多个新的代码变更文件。

快照查看和变更回退

当需要查看或回退到前序轮次的修改时,可单击下拉箭头查看当前会话任务中产生的多次代码变更快照,选择后,可以看到相关信息变化或进行切换操作:

  • 会话流中自动定位到产生该快照代码变更文件的回答卡片;
  • 快照下方文件列表自动切换到所选快照下的代码变更文件,单击后可查看代码变更内容;
  • 单击“切换”按钮,将当前代码变更回退到所选快照的代码变更状态。

查看会话历史

如果需要回顾历史的会话任务,可单击会话历史按钮。你与 AI 程序员的会话均有 @AI Developer 标签,单击后即可查看相关对话过程。

标签:文件,快照,AI,代码,程序员,灵码,变更
From: https://blog.csdn.net/segwy/article/details/145007713

相关文章

  • 程序员的自我修养笔记——深入了解目标文件格式
    预处理、编译、汇编、链接预处理:展开宏定义、处理条件预编译指令、处理”#include“、删除注释、保留”#pragma“编译器指令编译:将预处理完的文件生成目标文件(.o或.obj文件),这个文件包含了编译阶段生成的汇编代码汇编:将生成的汇编文件转为机器指令、链接:多个目标文件和可能的......
  • 使用LangChain模板在Amazon Bedrock上配置Anthropic‘s Claude作为聊天机器人
    文章目录概要整体架构流程技术名词解释技术细节小结概要提示:这里可以添加技术概要例如:openAI的GPT大模型的发展历程。整体架构流程提示:这里可以添加技术整体架构例如:在语言模型中,编码器和解码器都是由一个个的Transformer组件拼接在一起形成的。技术......
  • 【解密三大AI:感知、增强与生成智能的未来】探讨Perceptive AI、Enhancive AI与Generat
    【解密三大AI:感知、增强与生成智能的未来】探讨PerceptiveAI、EnhanciveAI与GenerativeAI的核心概念、应用及未来影响(二)【解密三大AI:感知、增强与生成智能的未来】探讨PerceptiveAI、EnhanciveAI与GenerativeAI的核心概念、应用及未来影响(二)文章目录【解密三大A......
  • 1、AI Agent基础概念
    1.AIAgent的定义及其在人工智能领域的定位1.1什么是AIAgentAIAgent,又称智能代理,是一种具备自主性、反应性、主动性和社交能力的计算系统,能够感知环境并在其中采取行动以实现特定目标。作为人工智能领域的重要组成部分,AIAgent在现代AI系统中扮演着关键角色。1.2AI......
  • 十天速成:打造你的AI低代码系统(前言)
    前言第一部分:AI辅助开发和AI辅助测试(基于IDEA插件开发)第二部分:无代码-动态列表第三部分:无代码-拖拽表单第四部分:无代码-任务流(编写中...)第五部分:无代码-审批流(编写中...)第六部分:无代码-分布式任务调度(编写中...)第七部分:附录:百度千帆大模型接入使用方法第八部......
  • AI自动化编程:程序员的变革新篇还是失业序曲?
    在当今科技飞速发展的浪潮之下,AI自动化编程是否会将程序员推向失业的深渊,已然成为一个饱受争议却又与现实紧密交织的关键议题。接下来,不妨从多个维度深入探究这一错综复杂的问题。一、AI自动化编程的斐然优势AI编程工具宛如熠熠生辉的新星,其中GitHubCopilot、ChatGPT等......
  • JuiceFS 2024:开源与商业并进,迈向 AI 原生时代
    即将过去的2024年,是JuiceFS开源版本推出的第4年,企业版的第8个年头。回顾过去这一年,JuiceFS社区版依旧保持着快速成长的势头,GitHub星标突破11.1K,各项使用指标增长均超过100%,其中文件系统总数量较前一年更是增长了8.5倍;企业版同样持续保持高速增长,继去年实现盈亏平衡......
  • CDS标准视图:安排维护计划的调用 I_MAINTENANCEPLANSCHEDULE
    视图名称:安排维护计划的调用I_MAINTENANCEPLANSCHEDULE视图类型:视图代码:点击查看代码@AbapCatalog.compiler.compareFilter:true@AbapCatalog.sqlViewName:'IMPLASCHED'@AccessControl.authorizationCheck:#CHECK@ClientHandling.algorithm:#SESSION_VARIABLE@End......
  • AI与药学:用药咨询场景的检索增强AI大模型
    今天我们一起来解读下文献《ToolCalling:EnhancingMedicationConsultationviaRetrieval-AugmentedLargeLanguageModels》(欢迎关注公众号“赛文AI药学”获取更多药学与AI的内容)核心思想: 这篇论文针对大语言模型(LLMs)在医疗领域,特别是用药咨询场景中,由于缺乏领域知识和......
  • AI 与 Mermaid 使用教程之流程图 - 从入门到精通
    本文由 Mermaid中文文档 整理而来,并且它同时提供了一个Mermaid在线编辑器,支持在线编辑与生成流程图。在文章的末尾我们将介绍如何使用AI来自动生成Mermaid流程图。Mermaid流程图-基本语法流程图由节点(几何形状)和边(箭头或线)组成。Mermaid代码定义了如何创建节点和边,并......