Shun Miyazawa 1 год назад
Родитель
Сommit
20b6f0ee9f

+ 4 - 0
apps/app/src/server/service/openai/client-delegator/azure-openai-client-delegator.ts

@@ -22,6 +22,10 @@ export class AzureOpenaiClientDelegator implements IOpenaiClientDelegator {
     // TODO: initialize openaiVectorStoreId property
   }
 
+  async getFileList(): Promise<OpenAI.Files.FileObjectsPage> {
+    return this.client.files.list();
+  }
+
   async getVectorStoreFiles(): Promise<OpenAI.Beta.VectorStores.Files.VectorStoreFilesPage> {
     return this.client.beta.vectorStores.files.list(this.openaiVectorStoreId);
   }

+ 1 - 0
apps/app/src/server/service/openai/client-delegator/interfaces.ts

@@ -4,6 +4,7 @@ import type { Uploadable } from 'openai/uploads';
 export interface IOpenaiClientDelegator {
   getVectorStoreFiles(): Promise<OpenAI.Beta.VectorStores.Files.VectorStoreFilesPage>;
   deleteVectorStoreFiles(fileId: string): Promise<OpenAI.Beta.VectorStores.Files.VectorStoreFileDeleted>;
+  getFileList(): Promise<OpenAI.Files.FileObjectsPage>;
   deleteFile(fileId: string): Promise<OpenAI.Files.FileDeleted>;
   uploadAndPoll(files: Uploadable[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch>;
 }

+ 4 - 0
apps/app/src/server/service/openai/client-delegator/openai-client-delegator.ts

@@ -36,6 +36,10 @@ export class OpenaiClientDelegator implements IOpenaiClientDelegator {
     return this.client.beta.vectorStores.files.del(this.openaiVectorStoreId, fileId);
   }
 
+  async getFileList(): Promise<OpenAI.Files.FileObjectsPage> {
+    return this.client.files.list();
+  }
+
   async deleteFile(fileId: string): Promise<OpenAI.Files.FileDeleted> {
     return this.client.files.del(fileId);
   }