Spaces:
Running
Running
matt HOFFNER
commited on
Commit
·
45dbf34
1
Parent(s):
f16de12
refactor
Browse files- pages/api/functions/index.ts +14 -8
pages/api/functions/index.ts
CHANGED
@@ -103,23 +103,29 @@ const serpEmbedApi = async ({ input }: any) => {
|
|
103 |
const queryResult = await vectorStore.similaritySearch(input, VECTOR_STORE_SIZE);
|
104 |
return queryResult;
|
105 |
}
|
|
|
|
|
|
|
|
|
106 |
|
107 |
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
108 |
const args = req.body.args as string;
|
109 |
const functionName = req.body.name as string;
|
110 |
const functionInput = JSON.parse(args);
|
111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
try {
|
113 |
-
|
114 |
-
|
115 |
-
return res.status(200).send(result);
|
116 |
-
} else {
|
117 |
-
const result = await surferEmbedApi(functionInput)
|
118 |
-
return res.status(200).send(result);
|
119 |
-
}
|
120 |
} catch (error) {
|
121 |
console.error(error);
|
122 |
// @ts-ignore
|
123 |
return res.status(500).json({ error: error.message });
|
124 |
}
|
125 |
-
}
|
|
|
103 |
const queryResult = await vectorStore.similaritySearch(input, VECTOR_STORE_SIZE);
|
104 |
return queryResult;
|
105 |
}
|
106 |
+
const handlers: any = {
|
107 |
+
searchApi: serpEmbedApi,
|
108 |
+
surferEmbedApi: surferEmbedApi
|
109 |
+
};
|
110 |
|
111 |
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
112 |
const args = req.body.args as string;
|
113 |
const functionName = req.body.name as string;
|
114 |
const functionInput = JSON.parse(args);
|
115 |
|
116 |
+
const functionHandler = handlers[functionName];
|
117 |
+
|
118 |
+
if (!functionHandler) {
|
119 |
+
console.error(`Function "${functionName}" is not supported.`);
|
120 |
+
return res.status(500).json({ error: `Function "${functionName}" is not supported.` });
|
121 |
+
}
|
122 |
+
|
123 |
try {
|
124 |
+
const result = await functionHandler(functionInput);
|
125 |
+
return res.status(200).send(result);
|
|
|
|
|
|
|
|
|
|
|
126 |
} catch (error) {
|
127 |
console.error(error);
|
128 |
// @ts-ignore
|
129 |
return res.status(500).json({ error: error.message });
|
130 |
}
|
131 |
+
}
|