ABCoder-Java扩展和应用落地

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. ABCoder Java 扩展 和应用落地 ABCoder Java extensions and application implementation 演讲人: 马跃伟 SPEAKER: YUEWEI MA(Mars)
2. 目录 |Contents Part 01 ABCoder 介绍 index 方式的 codebase context 实现 Part 02 构建AI专用的代码地 图 Java 为例的 parser 实现 Part 03 ABCoder 加持的AI 实践 实际案例-在复杂系统中 PRD 到技术方案和代码
3. 01 ABCoder 介绍 AI-Based Coder : index 方式的 codebase context 实现
4. ABCoder 的介绍和应用 index 方式的 codebase context 实现 • 代码理解和分析的复杂性问题 • Code To 统一的抽象语法树(UniAST) • 结合大语言模型的推理能力,实现深度的代码理解和分析 案例 - mybatis3
5. ABCoder 的介绍和应用 搭建知识库 index 方式的 codebase context 实现 指导技术方案和代码生成 跨语言重构-半空 Go2Rust CR、bug修复、知识问答...
6. ABCoder 的架构和实现 多语言 parser Go Parser 的痛点 •语言强耦合 •环境依赖性 •性能问题 •扩展性差 Tree-sitter + LSP 实现 优点 •架构设计统一 •仅需 LSP 语言服务器 •性能优势 •插件化语言支持
7. 02 构建AI专用的代码地图 Java 为例的 parser 实现
8. ABCoder的 多语言 parser 实现思路
9. 使用Tree-sitter进行快速文件解析,理解代码的基本符号 语法精准解析 Tree-sitter基于词法解析技术, 精准识别Java语法结构,确保代 码骨架提取无误。 语言结构提取 提取类、方法、变量等关键节点 ,构建清晰的代码逻辑视图。 高效性能表现 支持快速遍历大型文件,毫秒级 响应,满足实时分析需求。 AI友好输出 生成结构化AST数据,便于后续 处理与跨文件关联分析。
10. 通过LSP关联所有符号,了解跨文件的关系网 符号全局索引 利用LSP建立跨文件符号引用 关系,实现类、方法、变量的 精准追踪。 调用链路解析语义关系网络 自动识别函数调用路径,还原 分布式场景下的复杂依赖结构 。整合类型继承、接口实现等语 义信息,构建完整的代码知识 图谱。
11. UniAST: 结合前两步构建出的最终AI友好地图 统一语法树 融合Tree-sitter与LSP信息,构 建跨文件、语义完整的统一抽象 语法树。 关系全覆盖 整合符号定义、引用与调用关系 ,形成全局代码知识网络。 AI可读结构 将原始代码转化为AI易于理解的 标准化、结构化中间表示形式。 精准导航图 为AI提供包含上下文与依赖的高 精度代码导航与修改指引。
12. 03 ABCoder加持的AI 实践 实际案例-在复杂系统中 PRD 到技术方案 和 代码
13. AI coding 的美好愿景与现实挑战 理想的 vibe AI 编程 现实挑战 智能协作者AI深度理解业务与代码,像资深 工程师一样思考,主动提出合理 方案。分布式系统涉及多服务、多节点交互 架构复杂性高 ,AI难以全面理解整体架构与依赖关 系。 零误操作所有修改精准可控,绝不引入意 外变更,确保系统稳定性。数据与状态跨服务分布,AI易遗漏关 分布式困境 键上下文,导致生成代码逻辑不一致 。 无缝协作流与开发者自然配合,按需提供信 息、生成代码、解释逻辑,提升 效率。 局部修改可能引发全局副作用,AI缺乏 影响难预估 对系统级影响的准确判断能力。
14. 解决方案: 拆分步骤+人在回路,确保每一步都由人来监督和确认 核心目标:高效产出可控、可理解的代码 分步解耦任务 将开发流程拆解为可控阶段, 降低AI出错概率。 人在回路监督 每步输出均需人工审核确认 确保方向正确。 闭环反馈迭代 结合反馈动态调整AI行为 提升结果可靠性。
15. 分析现有仓库-改动点 分析过程 接收PRD输入 系统接入产品需求文档 自动提取核心功能描述与变更意图。 语义关键词提取 基于LLM识别业务关键词, 如订单、支付、用户权限等关键实体。 映射代码模块 结合项目领域模型,将业务术语匹配到 对应的微服务与包结构。 定位逻辑边界 初步划定受影响的业务层、 控制器及数据访问组件范围。 分析结果
16. 结合 改动点和技术方案模板 LLM 生成技术方案 构建输入模板 设计结构化输入格式,规范问题描述与 引导LLM生成 请求参数。提升LLM理解准确性,降低在限定上下文中引导大模型输出,确保 歧义风险。逻辑连贯性。聚焦技术实现细节,避免 泛化回答。 明确改动点 识别本次迭代的具体变更范围,界定新 统一输出格式 增或修改功能。避免范围蔓延,确保开设定标准化响应结构,保证结果可读与 发与设计对齐。可比性。便于团队评审、归档与后续自 动化处理。 整合PRD摘要 提取产品需求文档核心内容,明确背景提升评审效率 与目标。聚焦关键功能点,减少冗余信通过一致性与精准性优化,缩短反馈周 息干扰。为后续技术方案生成提供清晰 上下文。 期。降低沟通成本,加快迭代进度。
17. Code 生成-基于ABCoder 的执行计划,Trae IDE Agent 执行 底层逻辑同技术方案 一致,都依赖于 ABCoder 提供的 仓库 context
18. Q&A
19. THANKS

trang chủ - Wiki
Copyright © 2011-2026 iteam. Current version is 2.148.3. UTC+08:00, 2026-01-09 23:51
浙ICP备14020137号-1 $bản đồ khách truy cập$