diff --git a/public/index.html b/public/index.html index c4a0e829c..6ac83f389 100644 --- a/public/index.html +++ b/public/index.html @@ -1228,8 +1228,8 @@
# of Beams - - + +
Length Penalty @@ -1513,7 +1513,7 @@ - +
@@ -4848,4 +4848,4 @@ - \ No newline at end of file + diff --git a/server.js b/server.js index a07e6cb56..12375c627 100644 --- a/server.js +++ b/server.js @@ -596,6 +596,10 @@ app.post("/api/textgenerationwebui/status", jsonParser, async function (request, const modelName = modelInfo?.id; result = modelName || result; + } else { + // TabbyAPI returns an error 400 if a model isn't loaded + + result = "None" } } catch (error) { console.error(`Failed to get TabbyAPI model info: ${error}`); diff --git a/src/translate.js b/src/translate.js index 7d22ccc0c..12a184e2b 100644 --- a/src/translate.js +++ b/src/translate.js @@ -58,34 +58,44 @@ function registerEndpoints(app, jsonParser) { }); app.post('/api/translate/google', jsonParser, async (request, response) => { - const { generateRequestUrl, normaliseResponse } = require('google-translate-api-browser'); - const text = request.body.text; - const lang = request.body.lang; + try { + const { generateRequestUrl, normaliseResponse } = require('google-translate-api-browser'); + const text = request.body.text; + const lang = request.body.lang; - if (!text || !lang) { - return response.sendStatus(400); - } + if (!text || !lang) { + return response.sendStatus(400); + } - console.log('Input text: ' + text); + console.log('Input text: ' + text); - const url = generateRequestUrl(text, { to: lang }); + const url = generateRequestUrl(text, { to: lang }); - https.get(url, (resp) => { - let data = ''; + https.get(url, (resp) => { + let data = ''; - resp.on('data', (chunk) => { - data += chunk; + resp.on('data', (chunk) => { + data += chunk; + }); + + resp.on('end', () => { + try { + const result = normaliseResponse(JSON.parse(data)); + console.log('Translated text: ' + result.text); + return response.send(result.text); + } catch (error) { + console.log("Translation error", error); + return response.sendStatus(500); + } + }); + }).on("error", (err) => { + console.log("Translation error: " + err.message); + return response.sendStatus(500); }); - - resp.on('end', () => { - const result = normaliseResponse(JSON.parse(data)); - console.log('Translated text: ' + result.text); - return response.send(result.text); - }); - }).on("error", (err) => { - console.log("Translation error: " + err.message); + } catch (error) { + console.log("Translation error", error); return response.sendStatus(500); - }); + } }); app.post('/api/translate/deepl', jsonParser, async (request, response) => {