@lobehub/lobehub 2.1.24 → 2.1.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -0
- package/changelog/v2.json +14 -0
- package/docs/development/database-schema.dbml +43 -14
- package/locales/bg-BG/models.json +44 -0
- package/locales/fr-FR/models.json +58 -0
- package/locales/it-IT/models.json +47 -0
- package/locales/pl-PL/models.json +47 -0
- package/locales/ru-RU/models.json +73 -0
- package/locales/tr-TR/models.json +42 -1
- package/locales/vi-VN/models.json +2 -0
- package/package.json +1 -1
- package/packages/database/migrations/0078_added_id_nanoid_for_replacing_id.sql +7 -0
- package/packages/database/migrations/0079_update_id_nanoid_from_casted_id.sql +7 -0
- package/packages/database/migrations/0080_add_constraint_unique_not_null_to_id_nanoid.sql +27 -0
- package/packages/database/migrations/0081_switch_forgien_key_to_id_nanoid.sql +37 -0
- package/packages/database/migrations/0082_set_id_nanoid_as_primary.sql +20 -0
- package/packages/database/migrations/0083_remove_id_seq_identity_column.sql +7 -0
- package/packages/database/migrations/0084_rename_id_nanoid_to_id.sql +53 -0
- package/packages/database/migrations/0085_remove_id_unique_constraint.sql +7 -0
- package/packages/database/migrations/meta/0078_snapshot.json +11515 -0
- package/packages/database/migrations/meta/0079_snapshot.json +11515 -0
- package/packages/database/migrations/meta/0080_snapshot.json +11554 -0
- package/packages/database/migrations/meta/0081_snapshot.json +11554 -0
- package/packages/database/migrations/meta/0082_snapshot.json +11554 -0
- package/packages/database/migrations/meta/0083_snapshot.json +11435 -0
- package/packages/database/migrations/meta/0084_snapshot.json +11435 -0
- package/packages/database/migrations/meta/0085_snapshot.json +11396 -0
- package/packages/database/migrations/meta/_journal.json +56 -0
- package/packages/database/src/models/__tests__/apiKey.test.ts +18 -6
- package/packages/database/src/models/apiKey.ts +5 -5
- package/packages/database/src/schemas/apiKey.ts +6 -2
- package/packages/database/src/schemas/ragEvals.ts +27 -20
- package/packages/database/src/schemas/rbac.ts +15 -15
- package/packages/database/src/server/models/ragEval/dataset.ts +3 -3
- package/packages/database/src/server/models/ragEval/datasetRecord.ts +5 -5
- package/packages/database/src/server/models/ragEval/evaluation.ts +3 -3
- package/packages/database/src/server/models/ragEval/evaluationRecord.ts +6 -6
- package/packages/types/src/apiKey.ts +1 -1
- package/packages/types/src/eval/dataset.ts +2 -2
- package/packages/types/src/eval/evaluation.ts +3 -3
- package/src/app/[variants]/(main)/settings/apikey/features/ApiKey.tsx +2 -2
- package/src/server/routers/async/ragEval.ts +1 -1
- package/src/server/routers/lambda/apiKey.ts +3 -3
- package/src/server/routers/lambda/ragEval.ts +10 -10
- package/src/services/ragEval.ts +10 -10
- package/src/store/library/slices/ragEval/actions/dataset.ts +3 -3
- package/src/store/library/slices/ragEval/actions/evaluation.ts +3 -3
|
@@ -72,7 +72,7 @@ export const ragEvalRouter = router({
|
|
|
72
72
|
}),
|
|
73
73
|
|
|
74
74
|
removeDataset: ragEvalProcedure
|
|
75
|
-
.input(z.object({ id: z.
|
|
75
|
+
.input(z.object({ id: z.string() }))
|
|
76
76
|
.mutation(async ({ input, ctx }) => {
|
|
77
77
|
return ctx.datasetModel.delete(input.id);
|
|
78
78
|
}),
|
|
@@ -80,7 +80,7 @@ export const ragEvalRouter = router({
|
|
|
80
80
|
updateDataset: ragEvalProcedure
|
|
81
81
|
.input(
|
|
82
82
|
z.object({
|
|
83
|
-
id: z.
|
|
83
|
+
id: z.string(),
|
|
84
84
|
value: insertEvalDatasetsSchema.partial(),
|
|
85
85
|
}),
|
|
86
86
|
)
|
|
@@ -92,7 +92,7 @@ export const ragEvalRouter = router({
|
|
|
92
92
|
createDatasetRecords: ragEvalProcedure
|
|
93
93
|
.input(
|
|
94
94
|
z.object({
|
|
95
|
-
datasetId: z.
|
|
95
|
+
datasetId: z.string(),
|
|
96
96
|
question: z.string(),
|
|
97
97
|
ideal: z.string().optional(),
|
|
98
98
|
referenceFiles: z.array(z.string()).optional(),
|
|
@@ -105,13 +105,13 @@ export const ragEvalRouter = router({
|
|
|
105
105
|
}),
|
|
106
106
|
|
|
107
107
|
getDatasetRecords: ragEvalProcedure
|
|
108
|
-
.input(z.object({ datasetId: z.
|
|
108
|
+
.input(z.object({ datasetId: z.string() }))
|
|
109
109
|
.query(async ({ ctx, input }): Promise<EvalDatasetRecord[]> => {
|
|
110
110
|
return ctx.datasetRecordModel.query(input.datasetId);
|
|
111
111
|
}),
|
|
112
112
|
|
|
113
113
|
removeDatasetRecords: ragEvalProcedure
|
|
114
|
-
.input(z.object({ id: z.
|
|
114
|
+
.input(z.object({ id: z.string() }))
|
|
115
115
|
.mutation(async ({ input, ctx }) => {
|
|
116
116
|
return ctx.datasetRecordModel.delete(input.id);
|
|
117
117
|
}),
|
|
@@ -119,7 +119,7 @@ export const ragEvalRouter = router({
|
|
|
119
119
|
updateDatasetRecords: ragEvalProcedure
|
|
120
120
|
.input(
|
|
121
121
|
z.object({
|
|
122
|
-
id: z.
|
|
122
|
+
id: z.string(),
|
|
123
123
|
value: z
|
|
124
124
|
.object({
|
|
125
125
|
question: z.string(),
|
|
@@ -137,7 +137,7 @@ export const ragEvalRouter = router({
|
|
|
137
137
|
importDatasetRecords: ragEvalProcedure
|
|
138
138
|
.input(
|
|
139
139
|
z.object({
|
|
140
|
-
datasetId: z.
|
|
140
|
+
datasetId: z.string(),
|
|
141
141
|
pathname: z.string(),
|
|
142
142
|
}),
|
|
143
143
|
)
|
|
@@ -173,7 +173,7 @@ export const ragEvalRouter = router({
|
|
|
173
173
|
|
|
174
174
|
// Evaluation operations
|
|
175
175
|
startEvaluationTask: ragEvalProcedure
|
|
176
|
-
.input(z.object({ id: z.
|
|
176
|
+
.input(z.object({ id: z.string() }))
|
|
177
177
|
.mutation(async ({ input, ctx }) => {
|
|
178
178
|
// Start evaluation task
|
|
179
179
|
const evaluation = await ctx.evaluationModel.findById(input.id);
|
|
@@ -238,7 +238,7 @@ export const ragEvalRouter = router({
|
|
|
238
238
|
}),
|
|
239
239
|
|
|
240
240
|
checkEvaluationStatus: ragEvalProcedure
|
|
241
|
-
.input(z.object({ id: z.
|
|
241
|
+
.input(z.object({ id: z.string() }))
|
|
242
242
|
.query(async ({ input, ctx }) => {
|
|
243
243
|
const evaluation = await ctx.evaluationModel.findById(input.id);
|
|
244
244
|
|
|
@@ -288,7 +288,7 @@ export const ragEvalRouter = router({
|
|
|
288
288
|
}),
|
|
289
289
|
|
|
290
290
|
removeEvaluation: ragEvalProcedure
|
|
291
|
-
.input(z.object({ id: z.
|
|
291
|
+
.input(z.object({ id: z.string() }))
|
|
292
292
|
.mutation(async ({ input, ctx }) => {
|
|
293
293
|
return ctx.evaluationModel.delete(input.id);
|
|
294
294
|
}),
|
package/src/services/ragEval.ts
CHANGED
|
@@ -12,7 +12,7 @@ import { uploadService } from '@/services/upload';
|
|
|
12
12
|
|
|
13
13
|
class RAGEvalService {
|
|
14
14
|
// Dataset
|
|
15
|
-
createDataset = async (params: CreateNewEvalDatasets): Promise<
|
|
15
|
+
createDataset = async (params: CreateNewEvalDatasets): Promise<string | undefined> => {
|
|
16
16
|
return lambdaClient.ragEval.createDataset.mutate(params);
|
|
17
17
|
};
|
|
18
18
|
|
|
@@ -20,34 +20,34 @@ class RAGEvalService {
|
|
|
20
20
|
return lambdaClient.ragEval.getDatasets.query({ knowledgeBaseId });
|
|
21
21
|
};
|
|
22
22
|
|
|
23
|
-
removeDataset = async (id:
|
|
23
|
+
removeDataset = async (id: string): Promise<void> => {
|
|
24
24
|
await lambdaClient.ragEval.removeDataset.mutate({ id });
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
updateDataset = async (
|
|
28
|
-
id:
|
|
28
|
+
id: string,
|
|
29
29
|
value: Partial<typeof insertEvalDatasetsSchema>,
|
|
30
30
|
): Promise<void> => {
|
|
31
31
|
await lambdaClient.ragEval.updateDataset.mutate({ id, value });
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
// Dataset Records
|
|
35
|
-
getDatasetRecords = async (datasetId:
|
|
35
|
+
getDatasetRecords = async (datasetId: string): Promise<EvalDatasetRecord[]> => {
|
|
36
36
|
return lambdaClient.ragEval.getDatasetRecords.query({ datasetId });
|
|
37
37
|
};
|
|
38
38
|
|
|
39
|
-
removeDatasetRecord = async (id:
|
|
39
|
+
removeDatasetRecord = async (id: string): Promise<void> => {
|
|
40
40
|
await lambdaClient.ragEval.removeDatasetRecords.mutate({ id });
|
|
41
41
|
};
|
|
42
42
|
|
|
43
|
-
importDatasetRecords = async (datasetId:
|
|
43
|
+
importDatasetRecords = async (datasetId: string, file: File): Promise<void> => {
|
|
44
44
|
const { path } = await uploadService.uploadToServerS3(file, { directory: 'ragEval' });
|
|
45
45
|
|
|
46
46
|
await lambdaClient.ragEval.importDatasetRecords.mutate({ datasetId, pathname: path });
|
|
47
47
|
};
|
|
48
48
|
|
|
49
49
|
// Evaluation
|
|
50
|
-
createEvaluation = async (params: CreateNewEvalEvaluation): Promise<
|
|
50
|
+
createEvaluation = async (params: CreateNewEvalEvaluation): Promise<string | undefined> => {
|
|
51
51
|
return lambdaClient.ragEval.createEvaluation.mutate(params);
|
|
52
52
|
};
|
|
53
53
|
|
|
@@ -55,15 +55,15 @@ class RAGEvalService {
|
|
|
55
55
|
return lambdaClient.ragEval.getEvaluationList.query({ knowledgeBaseId });
|
|
56
56
|
};
|
|
57
57
|
|
|
58
|
-
startEvaluationTask = async (id:
|
|
58
|
+
startEvaluationTask = async (id: string) => {
|
|
59
59
|
return lambdaClient.ragEval.startEvaluationTask.mutate({ id });
|
|
60
60
|
};
|
|
61
61
|
|
|
62
|
-
removeEvaluation = async (id:
|
|
62
|
+
removeEvaluation = async (id: string): Promise<void> => {
|
|
63
63
|
await lambdaClient.ragEval.removeEvaluation.mutate({ id });
|
|
64
64
|
};
|
|
65
65
|
|
|
66
|
-
checkEvaluationStatus = async (id:
|
|
66
|
+
checkEvaluationStatus = async (id: string): Promise<{ success: boolean }> => {
|
|
67
67
|
return lambdaClient.ragEval.checkEvaluationStatus.query({ id });
|
|
68
68
|
};
|
|
69
69
|
}
|
|
@@ -19,10 +19,10 @@ const FETCH_DATASET_RECORD_KEY = 'FETCH_DATASET_RECORD_KEY';
|
|
|
19
19
|
export interface RAGEvalDatasetAction {
|
|
20
20
|
createNewDataset: (params: CreateNewEvalDatasets) => Promise<void>;
|
|
21
21
|
|
|
22
|
-
importDataset: (file: File, datasetId:
|
|
22
|
+
importDataset: (file: File, datasetId: string) => Promise<void>;
|
|
23
23
|
refreshDatasetList: () => Promise<void>;
|
|
24
|
-
removeDataset: (id:
|
|
25
|
-
useFetchDatasetRecords: (datasetId:
|
|
24
|
+
removeDataset: (id: string) => Promise<void>;
|
|
25
|
+
useFetchDatasetRecords: (datasetId: string | null) => SWRResponse<EvalDatasetRecord[]>;
|
|
26
26
|
useFetchDatasets: (knowledgeBaseId: string) => SWRResponse<RAGEvalDataSetItem[]>;
|
|
27
27
|
}
|
|
28
28
|
|
|
@@ -9,13 +9,13 @@ import { type KnowledgeBaseStore } from '@/store/library/store';
|
|
|
9
9
|
const FETCH_EVALUATION_LIST_KEY = 'FETCH_EVALUATION_LIST_KEY';
|
|
10
10
|
|
|
11
11
|
export interface RAGEvalEvaluationAction {
|
|
12
|
-
checkEvaluationStatus: (id:
|
|
12
|
+
checkEvaluationStatus: (id: string) => Promise<void>;
|
|
13
13
|
|
|
14
14
|
createNewEvaluation: (params: CreateNewEvalEvaluation) => Promise<void>;
|
|
15
15
|
refreshEvaluationList: () => Promise<void>;
|
|
16
16
|
|
|
17
|
-
removeEvaluation: (id:
|
|
18
|
-
runEvaluation: (id:
|
|
17
|
+
removeEvaluation: (id: string) => Promise<void>;
|
|
18
|
+
runEvaluation: (id: string) => Promise<void>;
|
|
19
19
|
|
|
20
20
|
useFetchEvaluationList: (knowledgeBaseId: string) => SWRResponse<RAGEvalDataSetItem[]>;
|
|
21
21
|
}
|