@@ -681,74 +681,67 @@ export async function uploadDocumentsToMemory({
681
681
documents : MemoryDocumentI [ ] ;
682
682
name : string ;
683
683
account : Account ;
684
+ } ) {
685
+ for ( const doc of documents ) {
686
+ try {
687
+ p . log . message ( `Uploading document: ${ doc . name } ....` ) ;
688
+ await new Promise ( resolve => setTimeout ( resolve , 800 ) ) ; // To avoid rate limiting
689
+ const signedUrl = await getSignedUploadUrl ( {
690
+ documentName : doc . name ,
691
+ memoryName : name ,
692
+ account
693
+ } ) ;
694
+
695
+ const uploadResponse = await uploadDocument ( signedUrl , doc . blob ) ;
696
+ dlog ( `Upload response status: ${ uploadResponse . status } ` ) ;
697
+
698
+ p . log . message ( `Uploaded document: ${ doc . name } ` ) ;
699
+ } catch ( error ) {
700
+ throw error ;
701
+ }
702
+ }
703
+ }
704
+
705
+ export async function deleteDocumentsFromMemory ( {
706
+ documents,
707
+ name,
708
+ account
709
+ } : {
710
+ documents : string [ ] ;
711
+ name : string ;
712
+ account : Account ;
684
713
} ) {
685
714
const BATCH_SIZE = 5 ; // Number of concurrent uploads
686
715
const RATE_LIMIT_DELAY = 1000 ; // 1 second delay between requests
687
716
688
- // Process documents in batches to avoid rate limiting
717
+ p . log . info ( `Deleting ${ documents . length } documents from memory: ${ name } ` ) ;
718
+
689
719
for ( let i = 0 ; i < documents . length ; i += BATCH_SIZE ) {
690
720
const batch = documents . slice ( i , i + BATCH_SIZE ) ;
691
-
692
- const batchUploadPromises = batch . map ( async ( doc , index ) => {
721
+ const batchPromises = batch . map ( async ( doc , index ) => {
693
722
try {
694
- // Stagger requests within batch
695
723
await new Promise ( resolve =>
696
724
setTimeout ( resolve , index * RATE_LIMIT_DELAY )
697
725
) ;
698
726
699
- // p.log.message(`Uploading document: ${doc.name} .... `);
700
- const signedUrl = await getSignedUploadUrl ( {
701
- documentName : doc . name ,
727
+ // p.log.message(`Deleting document: ${doc} `);
728
+ const deleteResponse = await deleteDocument ( {
729
+ documentName : doc ,
702
730
memoryName : name ,
703
731
account
704
732
} ) ;
705
733
706
- const uploadResponse = await uploadDocument (
707
- signedUrl ,
708
- doc . blob
709
- ) ;
710
- dlog ( `Upload response status: ${ uploadResponse . status } ` ) ;
711
-
712
- p . log . message ( `Uploaded document: ${ doc . name } ` ) ;
734
+ dlog ( `Delete response status: ${ deleteResponse . status } ` ) ;
735
+ p . log . message ( `Deleted document: ${ doc } ` ) ;
736
+ return deleteResponse ;
713
737
} catch ( error : any ) {
714
738
throw new Error (
715
- `Failed to upload ${ doc . name } : ${ error . message ?? error } `
739
+ `Failed to delete ${ doc } : ${ error . message ?? error } `
716
740
) ;
717
741
}
718
742
} ) ;
719
743
720
- await Promise . all ( batchUploadPromises ) ;
721
- }
722
- }
723
-
724
- export async function deleteDocumentsFromMemory ( {
725
- documents,
726
- name,
727
- account
728
- } : {
729
- documents : string [ ] ;
730
- name : string ;
731
- account : Account ;
732
- } ) {
733
- p . log . info ( `Deleting documents from memory: ${ name } ` ) ;
734
-
735
- for ( const doc of documents ) {
736
- try {
737
- p . log . message ( `Deleting document: ${ doc } ....` ) ;
738
- await new Promise ( resolve => setTimeout ( resolve , 800 ) ) ; // To avoid rate limiting
739
-
740
- const deleteResponse = await deleteDocument ( {
741
- documentName : doc ,
742
- memoryName : name ,
743
- account
744
- } ) ;
745
-
746
- dlog ( `Delete response status: ${ deleteResponse . status } ` ) ;
747
-
748
- p . log . message ( `Deleted document: ${ doc } ` ) ;
749
- } catch ( error ) {
750
- throw error ;
751
- }
744
+ await Promise . all ( batchPromises ) ;
752
745
}
753
746
p . log . info ( `Deleted documents from memory: ${ name } ` ) ;
754
747
}
0 commit comments