@@ -12,7 +12,7 @@ export interface GlobalOpts {
1212 BaseURL ?: string
1313 DefaultModel ?: string
1414 DefaultModelProvider ?: string
15- DatasetToolRepo ?: string
15+ DatasetTool ?: string
1616 WorkspaceTool ?: string
1717 Env ?: string [ ]
1818}
@@ -386,106 +386,60 @@ export class GPTScript {
386386 } )
387387 }
388388
389- // Dataset methods
390-
391- async listDatasets ( workspaceID : string ) : Promise < Array < DatasetMeta > > {
392- if ( workspaceID == "" ) {
393- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
394- }
395-
389+ // returns an array of dataset IDs
390+ async listDatasets ( ) : Promise < Array < DatasetMeta > > {
396391 const result = await this . runBasicCommand ( "datasets" , {
397- workspaceID : workspaceID ,
398- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
392+ input : "{}" ,
393+ datasetTool : this . opts . DatasetTool ?? "" ,
399394 env : this . opts . Env
400395 } )
401396 return JSON . parse ( result ) as Array < DatasetMeta >
402397 }
403398
404- async createDataset ( workspaceID : string , name : string , description : string ) : Promise < Dataset > {
405- if ( workspaceID == "" ) {
406- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
407- }
408-
409- const result = await this . runBasicCommand ( "datasets/create" , {
410- input : JSON . stringify ( { datasetName : name , datasetDescription : description } ) ,
411- workspaceID : workspaceID ,
412- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
413- env : this . opts . Env
414- } )
415- return JSON . parse ( result ) as Dataset
416- }
417-
418- async addDatasetElement ( workspaceID : string , datasetID : string , elementName : string , elementDescription : string , elementContent : ArrayBuffer ) : Promise < DatasetElementMeta > {
419- if ( workspaceID == "" ) {
420- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
421- }
422-
423- const result = await this . runBasicCommand ( "datasets/add-element" , {
424- input : JSON . stringify ( {
425- datasetID,
426- elementName : elementName ,
427- elementDescription : elementDescription ,
428- elementContent : Buffer . from ( elementContent ) . toString ( "base64" )
429- } ) ,
430- workspaceID : workspaceID ,
431- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
432- env : this . opts . Env
433- } )
434- return JSON . parse ( result ) as DatasetElementMeta
435- }
436-
437- async addDatasetElements ( workspaceID : string , datasetID : string , elements : Array < DatasetElement > ) {
438- if ( workspaceID === "" ) {
439- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
440- }
441-
399+ async addDatasetElements ( elements : Array < DatasetElement > , opts : { name ?: string , description ?: string , datasetID ?: string } ) : Promise < string > {
442400 const serializableElements = elements . map ( e => {
443401 return {
444402 name : e . name ,
445403 description : e . description ,
446- contents : Buffer . from ( e . contents ) . toString ( "base64" )
404+ contents : e . contents ,
405+ binaryContents : Buffer . from ( e . binaryContents ?? Buffer . from ( "" ) ) . toString ( "base64" )
447406 }
448407 } )
449408
450409 return await this . runBasicCommand ( "datasets/add-elements" , {
451- input : JSON . stringify ( { datasetID, elements : serializableElements } ) ,
452- workspaceID : workspaceID ,
453- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
454- env : this . opts . Env ,
410+ input : JSON . stringify ( {
411+ name : opts . name ?? "" ,
412+ description : opts . description ?? "" ,
413+ datasetID : opts . datasetID ?? "" ,
414+ elements : serializableElements
415+ } ) ,
416+ datasetTool : this . opts . DatasetTool ?? "" ,
417+ env : this . opts . Env
455418 } )
456419 }
457420
458- async listDatasetElements ( workspaceID : string , datasetID : string ) : Promise < Array < DatasetElementMeta > > {
459- if ( workspaceID == "" ) {
460- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
461- }
462-
421+ async listDatasetElements ( datasetID : string ) : Promise < Array < DatasetElementMeta > > {
463422 const result = await this . runBasicCommand ( "datasets/list-elements" , {
464423 input : JSON . stringify ( { datasetID} ) ,
465- workspaceID : workspaceID ,
466- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
424+ datasetTool : this . opts . DatasetTool ?? "" ,
467425 env : this . opts . Env
468426 } )
469427 return JSON . parse ( result ) as Array < DatasetElementMeta >
470428 }
471429
472- async getDatasetElement ( workspaceID : string , datasetID : string , elementName : string ) : Promise < DatasetElement > {
473- if ( workspaceID == "" ) {
474- workspaceID = process . env . GPTSCRIPT_WORKSPACE_ID ?? ""
475- }
476-
430+ async getDatasetElement ( datasetID : string , elementName : string ) : Promise < DatasetElement > {
477431 const result = await this . runBasicCommand ( "datasets/get-element" , {
478- input : JSON . stringify ( { datasetID, element : elementName } ) ,
479- workspaceID : workspaceID ,
480- datasetToolRepo : this . opts . DatasetToolRepo ?? "" ,
432+ input : JSON . stringify ( { datasetID, name : elementName } ) ,
433+ datasetTool : this . opts . DatasetTool ?? "" ,
481434 env : this . opts . Env
482435 } )
483436
484437 const element = JSON . parse ( result )
485438 return {
486439 name : element . name ,
487440 description : element . description ,
488- contents : Buffer . from ( element . contents , "base64" )
441+ contents : element . contents ,
442+ binaryContents : Buffer . from ( element . binaryContents ?? "" , "base64" )
489443 }
490444 }
491445
@@ -1312,28 +1266,20 @@ function jsonToCredential(cred: string): Credential {
13121266 }
13131267}
13141268
1315- // Dataset types
1316-
1317- export interface DatasetElementMeta {
1318- name : string
1319- description : string
1320- }
1321-
1322- export interface DatasetElement {
1269+ export interface DatasetMeta {
1270+ id : string
13231271 name : string
13241272 description : string
1325- contents : ArrayBuffer
13261273}
13271274
1328- export interface DatasetMeta {
1329- id : string
1275+ export interface DatasetElementMeta {
13301276 name : string
13311277 description : string
13321278}
13331279
1334- export interface Dataset {
1335- id : string
1280+ export interface DatasetElement {
13361281 name : string
13371282 description : string
1338- elements : Record < string , DatasetElementMeta >
1283+ contents ?: string
1284+ binaryContents ?: ArrayBuffer
13391285}
0 commit comments