Skip to content

Commit e1ab743

Browse files
committed
refactor: reorg datastructures
1 parent 4f62d1e commit e1ab743

File tree

5 files changed

+40
-1
lines changed

5 files changed

+40
-1
lines changed

config/custom-connection.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
name: open_ai_connection
2+
type: AzureOpenAI
3+
configs:
4+
api-host: https://phodal-18lyqn5spad8.gear-c1.openbayes.net/api/chat # if you are using aios.chat
5+
secrets:
6+
api-key: sk-xxx # your api key

config/fixtures/code-completion.jsonl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{"language":"java","beforeCursor":"package com.afs.unittest;\n\nimport com.afs.unittest.exception.UnexpectedProjectTypeException;\nimport com.afs.unittest.expense.ExpenseType;\nimport com.afs.unittest.Project.Project;\nimport com.afs.unittest.Project.ProjectType;\n\nimport static com.afs.unittest.expense.ExpenseType.*;\n\nclass ExpenseService {\n ExpenseType getExpenseCodeByProjectTypeAndName(Project project) {","relatedCode":"// class UnexpectedProjectTypeException {\n// \n// }\n// \n// class ExpenseType {\n// \n// }\n// \n// class Project {\n// : ProjectType\n// : String\n// \n// 'getter/setter: getProjectName\n// \n// }\n// \n// class ProjectType {\n// \n// }\n// ","output":" ProjectType projectType = project.getProjectType();\n if(projectType == ProjectType.INTERNAL){\n return INTERNAL_PROJECT_EXPENSE;\n }else{\n if(projectType == ProjectType.EXTERNAL){\n String projectName = project.getProjectName();\n if(projectName.equals(\"Project A\")){\n return EXPENSE_TYPE_A;\n }\n\n if(projectName.equals(\"Project B\")){\n return EXPENSE_TYPE_B;\n }\n\n return OTHER_EXPENSE;\n }\n\n throw new UnexpectedProjectTypeException(\"You enter invalid project type\");\n }\n }"}
2+
{"language":"java","beforeCursor":"package com.afs.unittest;\n\nimport com.afs.unittest.Project.Project;\nimport com.afs.unittest.Project.ProjectType;\nimport com.afs.unittest.exception.UnexpectedProjectTypeException;\nimport com.afs.unittest.expense.ExpenseType;\nimport org.junit.jupiter.api.Test;\n\nimport static org.junit.jupiter.api.Assertions.*;\n\nclass ExpenseServiceTest {\n @Test\n void should_return_internal_expense_type_if_project_is_internal() {","relatedCode":"// class Project {\n// : ProjectType\n// : String\n// \n// 'getter/setter: getProjectName\n// \n// }\n// \n// class ProjectType {\n// \n// }\n// \n// class UnexpectedProjectTypeException {\n// \n// }\n// \n// class ExpenseType {\n// \n// }\n// ","output":" // given\n Project project = new Project(ProjectType.INTERNAL, \"Project\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.INTERNAL_PROJECT_EXPENSE, expenseCode);\n }"}
3+
{"language":"java","beforeCursor":"package com.afs.unittest;\n\nimport com.afs.unittest.Project.Project;\nimport com.afs.unittest.Project.ProjectType;\nimport com.afs.unittest.exception.UnexpectedProjectTypeException;\nimport com.afs.unittest.expense.ExpenseType;\nimport org.junit.jupiter.api.Test;\n\nimport static org.junit.jupiter.api.Assertions.*;\n\nclass ExpenseServiceTest {\n @Test\n void should_return_internal_expense_type_if_project_is_internal() {\n // given\n Project project = new Project(ProjectType.INTERNAL, \"Project\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.INTERNAL_PROJECT_EXPENSE, expenseCode);\n }\n\n @Test\n void should_return_expense_type_A_if_project_is_external_and_name_is_project_A() {","relatedCode":"// class Project {\n// : ProjectType\n// : String\n// \n// 'getter/setter: getProjectName\n// \n// }\n// \n// class ProjectType {\n// \n// }\n// \n// class UnexpectedProjectTypeException {\n// \n// }\n// \n// class ExpenseType {\n// \n// }\n// ","output":" // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project A\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.EXPENSE_TYPE_A, expenseCode);\n }"}
4+
{"language":"java","beforeCursor":"package com.afs.unittest;\n\nimport com.afs.unittest.Project.Project;\nimport com.afs.unittest.Project.ProjectType;\nimport com.afs.unittest.exception.UnexpectedProjectTypeException;\nimport com.afs.unittest.expense.ExpenseType;\nimport org.junit.jupiter.api.Test;\n\nimport static org.junit.jupiter.api.Assertions.*;\n\nclass ExpenseServiceTest {\n @Test\n void should_return_internal_expense_type_if_project_is_internal() {\n // given\n Project project = new Project(ProjectType.INTERNAL, \"Project\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.INTERNAL_PROJECT_EXPENSE, expenseCode);\n }\n\n @Test\n void should_return_expense_type_A_if_project_is_external_and_name_is_project_A() {\n // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project A\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.EXPENSE_TYPE_A, expenseCode);\n }\n\n @Test\n void should_return_expense_type_B_if_project_is_external_and_name_is_project_B() {","relatedCode":"// class Project {\n// : ProjectType\n// : String\n// \n// 'getter/setter: getProjectName\n// \n// }\n// \n// class ProjectType {\n// \n// }\n// \n// class UnexpectedProjectTypeException {\n// \n// }\n// \n// class ExpenseType {\n// \n// }\n// ","output":" // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project B\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n\n assertEquals(ExpenseType.EXPENSE_TYPE_B, expenseCode);\n\n }"}
5+
{"language":"java","beforeCursor":"package com.afs.unittest;\n\nimport com.afs.unittest.Project.Project;\nimport com.afs.unittest.Project.ProjectType;\nimport com.afs.unittest.exception.UnexpectedProjectTypeException;\nimport com.afs.unittest.expense.ExpenseType;\nimport org.junit.jupiter.api.Test;\n\nimport static org.junit.jupiter.api.Assertions.*;\n\nclass ExpenseServiceTest {\n @Test\n void should_return_internal_expense_type_if_project_is_internal() {\n // given\n Project project = new Project(ProjectType.INTERNAL, \"Project\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.INTERNAL_PROJECT_EXPENSE, expenseCode);\n }\n\n @Test\n void should_return_expense_type_A_if_project_is_external_and_name_is_project_A() {\n // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project A\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.EXPENSE_TYPE_A, expenseCode);\n }\n\n @Test\n void should_return_expense_type_B_if_project_is_external_and_name_is_project_B() {\n // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project B\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n\n assertEquals(ExpenseType.EXPENSE_TYPE_B, expenseCode);\n\n }\n\n @Test\n void should_return_other_expense_type_if_project_is_external_and_has_other_name() {","relatedCode":"// class Project {\n// : ProjectType\n// : String\n// \n// 'getter/setter: getProjectName\n// \n// }\n// \n// class ProjectType {\n// \n// }\n// \n// class UnexpectedProjectTypeException {\n// \n// }\n// \n// class ExpenseType {\n// \n// }\n// ","output":" // given\n Project project = new Project(ProjectType.EXTERNAL, \"Project C\");\n ExpenseService expenseService = new ExpenseService();\n\n // when\n ExpenseType expenseCode = expenseService.getExpenseCodeByProjectTypeAndName(project);\n\n // then\n assertEquals(ExpenseType.OTHER_EXPENSE, expenseCode);\n }"}

config/fixtures/code-completion.vm

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Complete ${language} code, return rest code, no explaining
2+
3+
```${language}
4+
${relatedCode}
5+
```
6+
7+
Code:
8+
```${language}
9+
${beforeCursor}
10+
```

config/unit-eval.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: "Eval Units"
2+
description: "A sample of UnitGen"
3+
4+
jobs:
5+
prompt-evaluate:
6+
description: "Evaluate prompt with different parameters"
7+
connection: custom-connection.yml # 根据你的实际情况修改
8+
template: fixtures/code-completion.vm
9+
log-path: logs/
10+
template-datasource:
11+
- type: file
12+
value: fixtures/code-completion.jsonl
13+
14+
strategy:
15+
- type: datasource-collection
16+
value:
17+
- temperature: 0.3
18+
max_tokens: 1000

src/main/kotlin/cc/unitmesh/eval/Eval.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import org.slf4j.Logger
88
import java.io.File
99

1010
class EvalCommand : CliktCommand() {
11-
private val input by option(help = "prompt script config file").default("unit-eval.yml")
11+
private val input by option(help = "prompt script config file").default("config" + File.separator + "unit-eval.yml")
1212

1313
override fun run() {
1414
// check is yaml file

0 commit comments

Comments
 (0)