This repository was archived by the owner on Apr 18, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy pathTask.ts
101 lines (75 loc) · 1.81 KB
/
Task.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
type DateTime = string;
export interface APIAnnotation {
id: number;
created_username?: string;
created_ago: string;
completed_by?: string;
ground_truth?: string;
result?: APIResult[];
was_cancelled?: boolean; // skipped
created_at: DateTime;
updated_at?: DateTime;
/** How much time it took to annotate the task */
lead_time?: number | null;
task?: number | null;
}
export interface APIPrediction {
id: number;
model_version: string;
created_ago: string;
result?: APIResult;
score?: number | null;
cluster?: number | null;
neighbors?: Array<number>;
mislabeling?: number;
created_at: DateTime;
updated_at?: DateTime;
task: number;
}
export interface APIResult {
id: string,
from_name: string,
to_name: string,
type: string, // @todo enum
value: Record<string, any>,
}
export interface APITask {
id: number;
data: Record<string, any>;
meta?: any | null;
created_at?: DateTime;
updated_at?: DateTime;
is_labeled?: boolean;
overlap?: number;
project?: number | null;
file_upload?: number | null;
annotations?: APIAnnotation[];
predictions?: APIPrediction[];
}
export interface LSFTaskData {
id: number;
data: any;
createdAt?: DateTime;
annotations: LSFAnnotationData[];
predictions: LSFAnnotationData[];
}
export interface LSFTask extends LSFTaskData {
annotations: LSFAnnotation[];
predictions: LSFAnnotation[];
}
export interface LSFAnnotationData {
id?: string;
pk: string; // @todo oh, it's complicated
createdDate: DateTime;
createdAgo: string;
createdBy?: string;
leadTime?: number;
skipped?: boolean;
}
export interface LSFAnnotation extends LSFAnnotationData {
// @todo also complicated
userGenerate?: boolean;
sentUserGenerate?: boolean;
// editable: boolean;
serializeAnnotation(): Promise<APIResult[]>;
}