@@ -30,9 +30,10 @@ type Dataset struct {
30
30
}
31
31
32
32
type datasetRequest struct {
33
- Input string `json:"input"`
34
- Workspace string `json:"workspace"`
35
- DatasetToolRepo string `json:"datasetToolRepo"`
33
+ Input string `json:"input"`
34
+ WorkspaceID string `json:"workspaceID"`
35
+ DatasetToolRepo string `json:"datasetToolRepo"`
36
+ Env []string `json:"env"`
36
37
}
37
38
38
39
type createDatasetArgs struct {
@@ -47,6 +48,11 @@ type addDatasetElementArgs struct {
47
48
ElementContent string `json:"elementContent"`
48
49
}
49
50
51
+ type addDatasetElementsArgs struct {
52
+ DatasetID string `json:"datasetID"`
53
+ Elements []DatasetElement `json:"elements"`
54
+ }
55
+
50
56
type listDatasetElementArgs struct {
51
57
DatasetID string `json:"datasetID"`
52
58
}
@@ -63,8 +69,9 @@ func (g *GPTScript) ListDatasets(ctx context.Context, workspace string) ([]Datas
63
69
64
70
out , err := g .runBasicCommand (ctx , "datasets" , datasetRequest {
65
71
Input : "{}" ,
66
- Workspace : workspace ,
72
+ WorkspaceID : workspace ,
67
73
DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
74
+ Env : g .globalOpts .Env ,
68
75
})
69
76
if err != nil {
70
77
return nil , err
@@ -77,9 +84,9 @@ func (g *GPTScript) ListDatasets(ctx context.Context, workspace string) ([]Datas
77
84
return datasets , nil
78
85
}
79
86
80
- func (g * GPTScript ) CreateDataset (ctx context.Context , workspace , name , description string ) (Dataset , error ) {
81
- if workspace == "" {
82
- workspace = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
87
+ func (g * GPTScript ) CreateDataset (ctx context.Context , workspaceID , name , description string ) (Dataset , error ) {
88
+ if workspaceID == "" {
89
+ workspaceID = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
83
90
}
84
91
85
92
args := createDatasetArgs {
@@ -93,8 +100,9 @@ func (g *GPTScript) CreateDataset(ctx context.Context, workspace, name, descript
93
100
94
101
out , err := g .runBasicCommand (ctx , "datasets/create" , datasetRequest {
95
102
Input : string (argsJSON ),
96
- Workspace : workspace ,
103
+ WorkspaceID : workspaceID ,
97
104
DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
105
+ Env : g .globalOpts .Env ,
98
106
})
99
107
if err != nil {
100
108
return Dataset {}, err
@@ -107,9 +115,9 @@ func (g *GPTScript) CreateDataset(ctx context.Context, workspace, name, descript
107
115
return dataset , nil
108
116
}
109
117
110
- func (g * GPTScript ) AddDatasetElement (ctx context.Context , workspace , datasetID , elementName , elementDescription , elementContent string ) (DatasetElementMeta , error ) {
111
- if workspace == "" {
112
- workspace = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
118
+ func (g * GPTScript ) AddDatasetElement (ctx context.Context , workspaceID , datasetID , elementName , elementDescription , elementContent string ) (DatasetElementMeta , error ) {
119
+ if workspaceID == "" {
120
+ workspaceID = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
113
121
}
114
122
115
123
args := addDatasetElementArgs {
@@ -125,8 +133,9 @@ func (g *GPTScript) AddDatasetElement(ctx context.Context, workspace, datasetID,
125
133
126
134
out , err := g .runBasicCommand (ctx , "datasets/add-element" , datasetRequest {
127
135
Input : string (argsJSON ),
128
- Workspace : workspace ,
136
+ WorkspaceID : workspaceID ,
129
137
DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
138
+ Env : g .globalOpts .Env ,
130
139
})
131
140
if err != nil {
132
141
return DatasetElementMeta {}, err
@@ -139,11 +148,26 @@ func (g *GPTScript) AddDatasetElement(ctx context.Context, workspace, datasetID,
139
148
return element , nil
140
149
}
141
150
142
- func (g * GPTScript ) ListDatasetElements (ctx context.Context , workspace , datasetID string ) ([]DatasetElementMeta , error ) {
143
- if workspace == "" {
144
- workspace = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
151
+ func (g * GPTScript ) AddDatasetElements (ctx context.Context , workspaceID , datasetID string , elements []DatasetElement ) error {
152
+ args := addDatasetElementsArgs {
153
+ DatasetID : datasetID ,
154
+ Elements : elements ,
145
155
}
156
+ argsJSON , err := json .Marshal (args )
157
+ if err != nil {
158
+ return fmt .Errorf ("failed to marshal element args: %w" , err )
159
+ }
160
+
161
+ _ , err = g .runBasicCommand (ctx , "datasets/add-elements" , datasetRequest {
162
+ Input : string (argsJSON ),
163
+ WorkspaceID : workspaceID ,
164
+ DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
165
+ Env : g .globalOpts .Env ,
166
+ })
167
+ return err
168
+ }
146
169
170
+ func (g * GPTScript ) ListDatasetElements (ctx context.Context , workspaceID , datasetID string ) ([]DatasetElementMeta , error ) {
147
171
args := listDatasetElementArgs {
148
172
DatasetID : datasetID ,
149
173
}
@@ -154,8 +178,9 @@ func (g *GPTScript) ListDatasetElements(ctx context.Context, workspace, datasetI
154
178
155
179
out , err := g .runBasicCommand (ctx , "datasets/list-elements" , datasetRequest {
156
180
Input : string (argsJSON ),
157
- Workspace : workspace ,
181
+ WorkspaceID : workspaceID ,
158
182
DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
183
+ Env : g .globalOpts .Env ,
159
184
})
160
185
if err != nil {
161
186
return nil , err
@@ -168,11 +193,7 @@ func (g *GPTScript) ListDatasetElements(ctx context.Context, workspace, datasetI
168
193
return elements , nil
169
194
}
170
195
171
- func (g * GPTScript ) GetDatasetElement (ctx context.Context , workspace , datasetID , elementName string ) (DatasetElement , error ) {
172
- if workspace == "" {
173
- workspace = os .Getenv ("GPTSCRIPT_WORKSPACE_DIR" )
174
- }
175
-
196
+ func (g * GPTScript ) GetDatasetElement (ctx context.Context , workspaceID , datasetID , elementName string ) (DatasetElement , error ) {
176
197
args := getDatasetElementArgs {
177
198
DatasetID : datasetID ,
178
199
Element : elementName ,
@@ -184,8 +205,9 @@ func (g *GPTScript) GetDatasetElement(ctx context.Context, workspace, datasetID,
184
205
185
206
out , err := g .runBasicCommand (ctx , "datasets/get-element" , datasetRequest {
186
207
Input : string (argsJSON ),
187
- Workspace : workspace ,
208
+ WorkspaceID : workspaceID ,
188
209
DatasetToolRepo : g .globalOpts .DatasetToolRepo ,
210
+ Env : g .globalOpts .Env ,
189
211
})
190
212
if err != nil {
191
213
return DatasetElement {}, err
0 commit comments