diff --git a/server.js b/server.js index 833e311..561df84 100644 --- a/server.js +++ b/server.js @@ -692,9 +692,11 @@ app.post('/api/ai/translate-terms', requireAuth, aiLimiter, async (req, res) => const cfg = loadAiConfig(); if (!cfg.apiKey) return res.status(400).json({ error: 'DeepSeek API key not configured' }); - const systemPrompt = `你是专业的电力设备(UPS/逆变器/储能电池)技术资料翻译。把用户给出的中文技术/业务词汇逐条翻译成${LANG_NAMES[targetLang]}, -要符合这个行业规范书面用词(不要逐字直译),单位符号(如Vdc、A、kg、mm)保持原样不翻译。 -严格按JSON对象格式返回:key是原始中文词,value是翻译结果,不要有多余文字、不要用markdown代码块包裹,每个词都必须有对应的翻译。`; + const systemPrompt = `你是专业的电力设备(UPS/逆变器/储能电池)技术资料翻译。把用户给出的技术/业务词汇逐条翻译成${LANG_NAMES[targetLang]}。 +这些词条不一定是中文——有些是从英文(或其他语言)原始资料里原样提取的参数标签/数值,本身可能已经就是${LANG_NAMES[targetLang]}或者是国际通用的表述(比如型号、单位符号、专有名词)。 +如果某个词条已经是${LANG_NAMES[targetLang]}、或者是不需要翻译的国际通用内容,直接原样返回这个词条本身,绝对不要把已经正确的内容翻译成别的语言(尤其不要把已经是英文/其他语言的词条"翻译"成中文)。 +需要翻译的词条要符合这个行业规范书面用词(不要逐字直译),单位符号(如Vdc、A、kg、mm)保持原样不翻译。 +严格按JSON对象格式返回:key是原始词条,value是翻译结果(或原样返回的词条本身),不要有多余文字、不要用markdown代码块包裹,每个词都必须有对应的返回值。`; const userPrompt = JSON.stringify(terms); try {