v0.7.0 - Standard non cortex mode enabled

This commit is contained in:
serversdwn
2025-12-20 04:15:22 -05:00
parent 6bb800f5f8
commit d09425c37b
5 changed files with 134 additions and 17 deletions

View File

@@ -13,8 +13,9 @@ app.use(express.json());
const PORT = Number(process.env.PORT || 7078);
// Cortex endpoints (only these are used now)
// Cortex endpoints
const CORTEX_REASON = process.env.CORTEX_REASON_URL || "http://cortex:7081/reason";
const CORTEX_SIMPLE = process.env.CORTEX_SIMPLE_URL || "http://cortex:7081/simple";
// -----------------------------------------------------
// Helper request wrapper
@@ -45,18 +46,24 @@ async function postJSON(url, data) {
// -----------------------------------------------------
// The unified chat handler
// -----------------------------------------------------
async function handleChatRequest(session_id, user_msg) {
async function handleChatRequest(session_id, user_msg, mode = "cortex") {
let reason;
// 1. → Cortex.reason (main pipeline)
// Determine which endpoint to use based on mode
const endpoint = mode === "standard" ? CORTEX_SIMPLE : CORTEX_REASON;
const modeName = mode === "standard" ? "simple" : "reason";
console.log(`Relay → routing to Cortex.${modeName} (mode: ${mode})`);
// Call appropriate Cortex endpoint
try {
reason = await postJSON(CORTEX_REASON, {
reason = await postJSON(endpoint, {
session_id,
user_prompt: user_msg
});
} catch (e) {
console.error("Relay → Cortex.reason error:", e.message);
throw new Error(`cortex_reason_failed: ${e.message}`);
console.error(`Relay → Cortex.${modeName} error:`, e.message);
throw new Error(`cortex_${modeName}_failed: ${e.message}`);
}
// Correct persona field
@@ -88,14 +95,15 @@ app.post("/v1/chat/completions", async (req, res) => {
const messages = req.body.messages || [];
const lastMessage = messages[messages.length - 1];
const user_msg = lastMessage?.content || "";
const mode = req.body.mode || "cortex"; // Get mode from request, default to cortex
if (!user_msg) {
return res.status(400).json({ error: "No message content provided" });
}
console.log(`Relay (v1) → received: "${user_msg}"`);
console.log(`Relay (v1) → received: "${user_msg}" [mode: ${mode}]`);
const result = await handleChatRequest(session_id, user_msg);
const result = await handleChatRequest(session_id, user_msg, mode);
res.json({
id: `chatcmpl-${Date.now()}`,
@@ -136,10 +144,11 @@ app.post("/chat", async (req, res) => {
try {
const session_id = req.body.session_id || "default";
const user_msg = req.body.message || "";
const mode = req.body.mode || "cortex"; // Get mode from request, default to cortex
console.log(`Relay → received: "${user_msg}"`);
console.log(`Relay → received: "${user_msg}" [mode: ${mode}]`);
const result = await handleChatRequest(session_id, user_msg);
const result = await handleChatRequest(session_id, user_msg, mode);
res.json(result);
} catch (err) {

View File

@@ -21,6 +21,11 @@
<option value="gpt-4o-mini">GPT-4o-mini (OpenAI)</option>
<option value="ollama:nollama/mythomax-l2-13b:Q5_K_S">Ollama MythoMax (3090)</option>
</select>
<label for="mode" style="margin-left: 20px;">Mode:</label>
<select id="mode">
<option value="standard">Standard</option>
<option value="cortex">Cortex</option>
</select>
<div id="theme-toggle">
<button id="toggleThemeBtn">🌙 Dark Mode</button>
</div>
@@ -124,7 +129,8 @@
const model = document.getElementById("model").value;
const mode = document.getElementById("mode").value;
// make sure we always include a stable user_id
let userId = localStorage.getItem("userId");
if (!userId) {
@@ -133,6 +139,7 @@
}
const body = {
model: model,
mode: mode,
messages: history,
sessionId: currentSession
};