anything-llm/server/endpoints/system.js

46 lines
1.4 KiB
JavaScript
Raw Normal View History

if (process.env.NODE_ENV === 'development') require("dotenv").config({ path: `.env.${process.env.NODE_ENV}` });
2023-06-08 06:31:35 +02:00
const { viewLocalFiles } = require("../utils/files");
const { getVectorDbClass } = require("../utils/helpers");
2023-06-04 04:28:07 +02:00
function systemEndpoints(app) {
if (!app) return;
2023-06-08 06:31:35 +02:00
app.get("/ping", (_, response) => {
2023-06-04 04:28:07 +02:00
response.sendStatus(200);
2023-06-08 06:31:35 +02:00
});
2023-06-04 04:28:07 +02:00
2023-06-08 06:31:35 +02:00
app.get("/setup-complete", (_, response) => {
const vectorDB = process.env.VECTOR_DB || "pinecone";
2023-06-04 04:28:07 +02:00
const results = {
2023-06-08 06:31:35 +02:00
VectorDB: vectorDB,
2023-06-04 04:28:07 +02:00
OpenAiKey: !!process.env.OPEN_AI_KEY,
2023-06-08 06:31:35 +02:00
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 });
});
2023-06-04 04:28:07 +02:00
2023-06-08 06:31:35 +02:00
app.get("/system-vectors", async (_, response) => {
const VectorDb = getVectorDbClass();
const vectorCount = await VectorDb.totalIndicies();
response.status(200).json({ vectorCount });
});
2023-06-04 04:28:07 +02:00
2023-06-08 06:31:35 +02:00
app.get("/local-files", async (_, response) => {
const localFiles = await viewLocalFiles();
response.status(200).json({ localFiles });
});
2023-06-04 04:28:07 +02:00
}
2023-06-08 06:31:35 +02:00
module.exports = { systemEndpoints };