UNPKG

@inductiv/node-red-openai-api

Version:

Enhance your Node-RED projects with advanced AI capabilities.

59 lines (45 loc) 1.68 kB
const OpenAI = require("openai").OpenAI; async function createVectorStore(parameters) { const openai = new OpenAI(this.clientParams); const response = await openai.vectorStores.create(parameters.payload); return response; } async function listVectorStores(parameters) { const openai = new OpenAI(this.clientParams); const list = await openai.vectorStores.list(parameters.payload); const vectorStores = [...list.data]; return vectorStores; } async function searchVectorStore(parameters) { const openai = new OpenAI(this.clientParams); const { vector_store_id, ...body } = parameters.payload; const list = await openai.vectorStores.search(vector_store_id, body); const searchResults = [...list.data]; return searchResults; } async function retrieveVectorStore(parameters) { const openai = new OpenAI(this.clientParams); const { vector_store_id, ...params } = parameters.payload; const response = await openai.vectorStores.retrieve(vector_store_id, params); return response; } async function modifyVectorStore(parameters) { const openai = new OpenAI(this.clientParams); const { vector_store_id, ...params } = parameters.payload; const response = await openai.vectorStores.update(vector_store_id, params); return response; } async function deleteVectorStore(parameters) { const openai = new OpenAI(this.clientParams); const { vector_store_id, ...params } = parameters.payload; const response = await openai.vectorStores.del(vector_store_id, params); return response; } module.exports = { createVectorStore, listVectorStores, searchVectorStore, retrieveVectorStore, modifyVectorStore, deleteVectorStore, };