Skip to content

Commit 7071c02

Browse files
committed
docs: add for template results
1 parent 6b14a79 commit 7071c02

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

README.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,16 @@ AutoDev 早期采用的是 OpenAI API,其模型能力较强,因此在指令
659659
- 测试技术栈上下文
660660
- 代码块(类、函数)的输入和输出信息
661661
662+
而这个模板指令,也是我们在 Unit Eval 中所采用的指令。
663+
664+
#### 统一指令模板
665+
666+
为了实现统一的指令模板,我们引入了 Apache Velocity 模板引擎来实现,并通过 Chocolate Factory 实现底层的通用逻辑:
667+
668+
- 工具侧。在 IDE 插件中,直接通过 Velocity 模板引擎、基于 Chocolate Factory 来实现指令的生成。
669+
- 数据集成。在 Unit Eval 中,生成适用于模板的数据集。
670+
- 结果评估。基于 Chocolate Factory 的实现,对模板的结果进行评估。
671+
662672
### 高质量数据集生成
663673
664674
年初(2023 年 4 月),我们做了一系列的代码微调探索, 在那篇
@@ -684,6 +694,10 @@ AutoDev 早期采用的是 OpenAI API,其模型能力较强,因此在指令
684694
685695
而基于 ArchGuard 中所提供的丰富代码质量和架构质量分析能力,诸如 OpenAPI、 SCA(软件依赖分析)能力,我们也在思考未来是否也加入相关的设计。
686696
697+
#### 实现高质量数据集生成
698+
699+
如下是 Unit Eval 0.3.0 的主要代码逻辑:
700+
687701
```kotlin
688702
val codeDir = GitUtil
689703
.checkoutCode(config.url, config.branch, tempGitDir, config.gitDepth)
@@ -780,7 +794,9 @@ val lists = jobs.map { job ->
780794
781795
根据用户选择的上下文策略,我们就可以构建出不同的上下文,如:相关上下文、相似上下文等
782796
783-
SimilarChunksStrategyBuilder 的主要逻辑:
797+
#### 在上下文策略中检查代码质量
798+
799+
SimilarChunksStrategyBuilder 主要逻辑如下
784800
785801
1. 使用配置中指定的规则检查以识别存在问题的数据结构。
786802
2. 收集所有具有相似数据结构的数据结构。

0 commit comments

Comments
 (0)