Просмотр исходного кода

refactor: update OpenAI client methods to use the latest API structure

Yuki Takei 11 месяцев назад
Родитель
Сommit
61a2684a93

+ 10 - 10
apps/app/src/features/openai/server/services/client-delegator/azure-openai-client-delegator.ts

@@ -62,32 +62,32 @@ export class AzureOpenaiClientDelegator implements IOpenaiClientDelegator {
     });
   }
 
-  async createVectorStore(name: string): Promise<OpenAI.Beta.VectorStores.VectorStore> {
-    return this.client.beta.vectorStores.create({ name: `growi-vector-store-for-${name}` });
+  async createVectorStore(name: string): Promise<OpenAI.VectorStores.VectorStore> {
+    return this.client.vectorStores.create({ name: `growi-vector-store-for-${name}` });
   }
 
-  async retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStore> {
-    return this.client.beta.vectorStores.retrieve(vectorStoreId);
+  async retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStore> {
+    return this.client.vectorStores.retrieve(vectorStoreId);
   }
 
-  async deleteVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStoreDeleted> {
-    return this.client.beta.vectorStores.del(vectorStoreId);
+  async deleteVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStoreDeleted> {
+    return this.client.vectorStores.del(vectorStoreId);
   }
 
   async uploadFile(file: Uploadable): Promise<OpenAI.Files.FileObject> {
     return this.client.files.create({ file, purpose: 'assistants' });
   }
 
-  async createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch> {
-    return this.client.beta.vectorStores.fileBatches.create(vectorStoreId, { file_ids: fileIds });
+  async createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.VectorStores.FileBatches.VectorStoreFileBatch> {
+    return this.client.vectorStores.fileBatches.create(vectorStoreId, { file_ids: fileIds });
   }
 
   async deleteFile(fileId: string): Promise<OpenAI.Files.FileDeleted> {
     return this.client.files.del(fileId);
   }
 
-  async uploadAndPoll(vectorStoreId: string, files: Uploadable[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch> {
-    return this.client.beta.vectorStores.fileBatches.uploadAndPoll(vectorStoreId, { files });
+  async uploadAndPoll(vectorStoreId: string, files: Uploadable[]): Promise<OpenAI.VectorStores.FileBatches.VectorStoreFileBatch> {
+    return this.client.vectorStores.fileBatches.uploadAndPoll(vectorStoreId, { files });
   }
 
   async chatCompletion(body: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming): Promise<OpenAI.Chat.Completions.ChatCompletion> {

+ 4 - 4
apps/app/src/features/openai/server/services/client-delegator/interfaces.ts

@@ -9,11 +9,11 @@ export interface IOpenaiClientDelegator {
   retrieveThread(threadId: string): Promise<OpenAI.Beta.Threads.Thread>
   deleteThread(threadId: string): Promise<OpenAI.Beta.Threads.ThreadDeleted>
   getMessages(threadId: string, options?: MessageListParams): Promise<OpenAI.Beta.Threads.Messages.MessagesPage>
-  retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStore>
-  createVectorStore(name: string): Promise<OpenAI.Beta.VectorStores.VectorStore>
-  deleteVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStoreDeleted>
+  retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStore>
+  createVectorStore(name: string): Promise<OpenAI.VectorStores.VectorStore>
+  deleteVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStoreDeleted>
   uploadFile(file: Uploadable): Promise<OpenAI.Files.FileObject>
-  createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch>
+  createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.VectorStores.FileBatches.VectorStoreFileBatch>
   deleteFile(fileId: string): Promise<OpenAI.Files.FileDeleted>;
   chatCompletion(body: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming): Promise<OpenAI.Chat.Completions.ChatCompletion>
 }

+ 10 - 10
apps/app/src/features/openai/server/services/client-delegator/openai-client-delegator.ts

@@ -63,32 +63,32 @@ export class OpenaiClientDelegator implements IOpenaiClientDelegator {
     });
   }
 
-  async createVectorStore(name: string): Promise<OpenAI.Beta.VectorStores.VectorStore> {
-    return this.client.beta.vectorStores.create({ name: `growi-vector-store-for-${name}` });
+  async createVectorStore(name: string): Promise<OpenAI.VectorStores.VectorStore> {
+    return this.client.vectorStores.create({ name: `growi-vector-store-for-${name}` });
   }
 
-  async retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStore> {
-    return this.client.beta.vectorStores.retrieve(vectorStoreId);
+  async retrieveVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStore> {
+    return this.client.vectorStores.retrieve(vectorStoreId);
   }
 
-  async deleteVectorStore(vectorStoreId: string): Promise<OpenAI.Beta.VectorStores.VectorStoreDeleted> {
-    return this.client.beta.vectorStores.del(vectorStoreId);
+  async deleteVectorStore(vectorStoreId: string): Promise<OpenAI.VectorStores.VectorStoreDeleted> {
+    return this.client.vectorStores.del(vectorStoreId);
   }
 
   async uploadFile(file: Uploadable): Promise<OpenAI.Files.FileObject> {
     return this.client.files.create({ file, purpose: 'assistants' });
   }
 
-  async createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch> {
-    return this.client.beta.vectorStores.fileBatches.create(vectorStoreId, { file_ids: fileIds });
+  async createVectorStoreFileBatch(vectorStoreId: string, fileIds: string[]): Promise<OpenAI.VectorStores.FileBatches.VectorStoreFileBatch> {
+    return this.client.vectorStores.fileBatches.create(vectorStoreId, { file_ids: fileIds });
   }
 
   async deleteFile(fileId: string): Promise<OpenAI.Files.FileDeleted> {
     return this.client.files.del(fileId);
   }
 
-  async uploadAndPoll(vectorStoreId: string, files: Uploadable[]): Promise<OpenAI.Beta.VectorStores.FileBatches.VectorStoreFileBatch> {
-    return this.client.beta.vectorStores.fileBatches.uploadAndPoll(vectorStoreId, { files });
+  async uploadAndPoll(vectorStoreId: string, files: Uploadable[]): Promise<OpenAI.VectorStores.FileBatches.VectorStoreFileBatch> {
+    return this.client.vectorStores.fileBatches.uploadAndPoll(vectorStoreId, { files });
   }
 
   async chatCompletion(body: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming): Promise<OpenAI.Chat.Completions.ChatCompletion> {