()
| 335 | * Useful for testing or resetting the database |
| 336 | */ |
| 337 | export async function clearVectorStore(): Promise<void> { |
| 338 | try { |
| 339 | // If OpenAI client is not available or no vector store ID, use mock implementation |
| 340 | if (!openai || !vectorStoreId) { |
| 341 | console.debug("Vector store: Clearing all entries (mock)"); |
| 342 | vectorStoreId = null; |
| 343 | return; |
| 344 | } |
| 345 | |
| 346 | // Get all files in the vector store |
| 347 | const files = await openai.vectorStores.files.list(vectorStoreId); |
| 348 | |
| 349 | // Delete each file |
| 350 | for (const file of files.data) { |
| 351 | await openai.vectorStores.files.delete(vectorStoreId, file.id); |
| 352 | } |
| 353 | |
| 354 | // Reset the vector store ID |
| 355 | vectorStoreId = null; |
| 356 | |
| 357 | console.debug("Cleared all entries from vector store"); |
| 358 | } catch (error: unknown) { |
| 359 | console.debug("Failed to clear vector store, using mock", { error: String(error) }); |
| 360 | console.debug("Vector store: Clearing all entries (mock)"); |
| 361 | vectorStoreId = null; |
| 362 | } |
| 363 | } |
| 364 | export async function searchVectorStore( |
| 365 | query: string, |
| 366 | maxResults: number = 10, |
no test coverage detected