摘要:TL;DR,在最新的 AutoDev 2.0.7 中,我们引入了 Workspace 的概念,来帮助用户使用 AutoDev Sketch 智能体,它包含:
TL;DR,在最新的 AutoDev 2.0.7 中,我们引入了 Workspace 的概念,来帮助用户使用 AutoDev Sketch 智能体,它包含:
动态项目规则:让智能体针根据场景选择规则,以生成更精准、符合规划的代码
工作区文件管理:即你在 Planner 中可以管理所有的变更文件
领域知识生成:生成项目的 domAIn 知识,以便于更好地理解项目
提示词优化器:根据项目的上下文,优化用户的输入,以便 AI 更好地理解用户的意图
直接在 JetBrains IDE 中安装 AutoDev Sketch,或者从 GitHub 下载最新版本。文档见:https://ide.unitmesh.cc/workspace
为了让用户更好地利用 Sketch 的自定义能力,我们引入了 Rule 指令,它可以让用户编写适用于不同场景的规则。用户可以在项目中创建一个 rules 文件夹, 来存放这些规则,诸如于:
解释
prompts/rules/
├── service.md
├── controller.md
├── repository.md
├── rpc.md
└── README.md
rules 下的 README.md 文件会被自动加载,用户可以使用 markdown 来编写规则,而剩余的规则则会由 Sketch 根据不同的场景,自行决定加入哪个规则。
在新版本中,我们优化了 AutoDev Planner 规划的 UI,同时将变更完的文件进行了统一的管理。你可以只关注在 Planner 面板中,查看当前的任务进度和变更文件。
在 Planner 面板的 Workspace 区域,你可以回退某个文件、所有文件,或者接受某个文件的变更。
输入框工作区同样的,我们也将输入框进行了工作区化,你可以在输入框中更好地管理和选择当前的输入内容、相关文件等。诸如于,添加所有打开的文件,手动选择需要的文件等。
如何正确地识别用户的意图是一件痛苦的事,特别是,当用户说的是中文,而代码中只有拼写缩写时,主流的 RAG 方式都开始抓瞎。那么,有没有一种简单的方式 来提升这一点呢,诸如于:把用户的输入转换为带有业务含义、领域的代码?或者说,如何让 AI 更好地理解用户的意图?
答案就回到我们的 DDD(领域驱动设计)中,提到的领域名词表的概念,以构建业务语言为核心,进行语言到代码的翻译。随后,让 AI 结合输入上下文与 领域名词表,来优化用户的提示词。
随后,Sketch 智能体将会更好地理解用户的意图,来生成更符合用户需求的代码。
知识的管理是 AI 智能体成败的关键之一,当用户的提问过于模糊时,AI 往往会产生幻觉。从自然语言到代码中的转换,往往需要一些领域知识来帮助 AI 理解用户的意图。因此,我们引入了领域知识生成的能力,用户可以在项目的prompts/domain.csv中引入相关的领域知识,来帮助 AI 理解用户的意图。PS:我们建议用户对该文件进行修改,以修正不正确的 AI 翻译。
我们当然也还修复了一些不大不少的 bug,诸如于线程、协程的阻塞问题,Terminal 交互不友好等。
MCP 测试页,用来测试 MCP 工具是否可用
用于重构的 usage 指令
Coze Agent 支持,详细见文档:https://ide.unitmesh.cc/agent/custom-ai-agent.html
直接在 JetBrains IDE 中安装 AutoDev Sketch,或者从 GitHub 下载最新版本。文档见:https://ide.unitmesh.cc/workspace
来源:傲珊教育