Scaffolding of Natural Language Search

This commit is contained in:
2024-07-30 13:59:40 +08:00
parent b9e0abe7d0
commit 4627da2efb
11 changed files with 3030 additions and 3217 deletions

View File

@@ -0,0 +1,18 @@
const axios = require("axios");
// Adam's personal API key server access
// Requires connection to private tailscale subnet.
// no abusing of my api keys or i abuse you 🔫
async function getApiKey(serviceUrl) {
try {
const response = await axios.get(
"http://mommy.rya-orfe.ts.net:8069/" + serviceUrl
);
return response.data;
} catch (error) {
console.error("Error retrieving API key:", error);
throw error;
}
}
module.exports = { getApiKey };

View File

@@ -1,21 +1,10 @@
const axios = require("axios");
const senderEmail = "ecoconnect@trial-ynrw7gy0qxol2k8e.mlsender.net";
async function getApiKey() {
try {
const response = await axios.get(
"http://mommy.rya-orfe.ts.net:8069/mailersend_api_key"
);
return response.data;
} catch (error) {
console.error("Error retrieving API key:", error);
throw error;
}
}
const { getApiKey } = require("./apiKey");
async function sendEmail(recipientEmail, title, content) {
try {
const apiKey = await getApiKey();
const apiKey = await getApiKey("mailersend_api_key");
const response = await axios.post(
"https://api.mailersend.com/v1/email",
{

View File

@@ -0,0 +1,20 @@
const OpenAI = require("openai");
const { getApiKey } = require("./apiKey");
async function openAiChatCompletion(query) {
const openai = new OpenAI({ apiKey: await getApiKey("openai_api_key") });
const completion = await openai.chat.completions.create({
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: query },
],
model: "gpt-4o-mini",
});
let response = completion.choices[0].message.content;
console.log(response);
return response;
}
module.exports = { openAiChatCompletion };