require("dotenv").config({ path: `.env.${process.env.NODE_ENV}` }); const { viewLocalFiles } = require("../utils/files"); const { getVectorDbClass } = require("../utils/helpers"); function systemEndpoints(app) { if (!app) return; app.get("/ping", (_, response) => { response.sendStatus(200); }); app.get("/setup-complete", (_, response) => { const vectorDB = process.env.VECTOR_DB || "pinecone"; const results = { VectorDB: vectorDB, OpenAiKey: !!process.env.OPEN_AI_KEY, OpenAiModelPref: process.env.OPEN_MODEL_PREF || "gpt-3.5-turbo", ...(vectorDB === "pinecone" ? { PineConeEnvironment: process.env.PINECONE_ENVIRONMENT, PineConeKey: !!process.env.PINECONE_API_KEY, PineConeIndex: process.env.PINECONE_INDEX, } : {}), ...(vectorDB === "chroma" ? { ChromaEndpoint: process.env.CHROMA_ENDPOINT, } : {}), }; response.status(200).json({ results }); }); app.get("/system-vectors", async (_, response) => { const VectorDb = getVectorDbClass(); const vectorCount = await VectorDb.totalIndicies(); response.status(200).json({ vectorCount }); }); app.get("/local-files", async (_, response) => { const localFiles = await viewLocalFiles(); response.status(200).json({ localFiles }); }); } module.exports = { systemEndpoints };