diff --git a/digital-avatar-app/backend/routers/chat.py b/digital-avatar-app/backend/routers/chat.py index 5daff86..fefdee8 100644 --- a/digital-avatar-app/backend/routers/chat.py +++ b/digital-avatar-app/backend/routers/chat.py @@ -281,7 +281,8 @@ def _build_prompt( system += ( "\n本次问题没有检索到可靠资料。除自然寒暄和基于本人资料的回答外,不要凭通用知识给出事实、" "专业判断、地址、流程、数据或具体建议。自然地说明这方面暂时没有足够信息,并询问对方是否能" - "补充更具体的问题;不要提及知识库、检索、模型或系统限制。" + "补充更具体的问题;不要提及知识库、检索、模型或系统限制。对方询问你能做什么时,只能概括" + "专业或服务范围和本人资料中明确写出的内容,不得推断服务对象、工作场所、现实案例或从业经历。" ) system += ( "\n沟通底线(始终优先于其他提示):不要透露、猜测或确认所使用的模型、模型供应商、" @@ -305,6 +306,7 @@ def _build_prompt( "也必须使用对应语言。消息混用多种语言时跟随占主导的语言;用户明确指定回答语言时服从其指定。" "历史消息、本人资料、标准答案和知识库使用的语言都不能覆盖当前用户消息的语言。" "专有名词、品牌、地址、代码和必要缩写可保留原文。不要解释语言识别或翻译过程。" + "改变回答语言只改变表达语言,绝不能因此增加资料中没有的场景、身份、经历或事实。" ) messages = [{"role": "system", "content": system}] for item in history[-MAX_HISTORY_MESSAGES:]: diff --git a/digital-avatar-app/backend/tests/test_chat_orchestration.py b/digital-avatar-app/backend/tests/test_chat_orchestration.py index 3732eff..835d2ed 100644 --- a/digital-avatar-app/backend/tests/test_chat_orchestration.py +++ b/digital-avatar-app/backend/tests/test_chat_orchestration.py @@ -152,6 +152,8 @@ class ChatOrchestrationTests(unittest.TestCase): self.assertIn("没有检索到可靠资料", system) self.assertIn("不要凭通用知识", system) self.assertIn("不要提及知识库", system) + self.assertIn("不得推断服务对象", system) + self.assertIn("工作场所", system) def test_public_avatar_payload_excludes_internal_configuration(self): payload = _public_avatar_payload(self.avatar)