From 389eb66c02766cec4a4e80b216b8da2e6d591de2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= Date: Thu, 28 May 2026 15:27:00 +0800 Subject: [PATCH] =?UTF-8?q?ai=E6=A8=A1=E5=9D=97=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yuthon_ai_agent/__manifest__.py | 1 + yuthon_ai_agent/models/__init__.py | 1 + yuthon_ai_agent/models/ai_agent.py | 7 +++++++ yuthon_ai_agent/security/ir.model.access.csv | 2 ++ yuthon_wechat/views/wecom_ai_views.xml | 4 ++-- 5 files changed, 13 insertions(+), 2 deletions(-) diff --git a/yuthon_ai_agent/__manifest__.py b/yuthon_ai_agent/__manifest__.py index d9d0f890e..ca91668c4 100644 --- a/yuthon_ai_agent/__manifest__.py +++ b/yuthon_ai_agent/__manifest__.py @@ -21,6 +21,7 @@ 'security/ir.model.access.csv', 'views/ai_provider_views.xml', 'views/ai_rule_views.xml', + 'views/ai_manual_views.xml', 'views/ai_user_profile_views.xml', 'views/ai_token_usage_views.xml', 'views/ai_conversation_views.xml', diff --git a/yuthon_ai_agent/models/__init__.py b/yuthon_ai_agent/models/__init__.py index 1dc78f63d..fa12f9835 100644 --- a/yuthon_ai_agent/models/__init__.py +++ b/yuthon_ai_agent/models/__init__.py @@ -3,3 +3,4 @@ from . import ai_agent from . import ai_user_profile from . import ai_token_usage from . import ai_rule +from . import ai_manual diff --git a/yuthon_ai_agent/models/ai_agent.py b/yuthon_ai_agent/models/ai_agent.py index 657ed464d..48b55861a 100644 --- a/yuthon_ai_agent/models/ai_agent.py +++ b/yuthon_ai_agent/models/ai_agent.py @@ -554,6 +554,13 @@ class AiConversation(models.Model): system_msg += f'• {rule.name}:{rule.content}\n' system_msg += '如果用户询问以上禁止话题,礼貌拒绝并说明无法回答。\n' + # —— 注入操作手册 —— + manual_content = self.env['ai.manual'].get_all_manual_content() + if manual_content: + system_msg += '\n--- 操作手册(用户询问操作方法时参考)---\n' + system_msg += manual_content + '\n' + system_msg += '当用户询问如何操作某个功能时,优先参考以上手册内容进行指导。\n' + if user_context: system_msg += f'\n--- 当前用户信息 ---\n{user_context}\n' messages = [{'role': 'system', 'content': system_msg}] diff --git a/yuthon_ai_agent/security/ir.model.access.csv b/yuthon_ai_agent/security/ir.model.access.csv index b76628c18..1094d1eaa 100644 --- a/yuthon_ai_agent/security/ir.model.access.csv +++ b/yuthon_ai_agent/security/ir.model.access.csv @@ -15,3 +15,5 @@ access_ai_token_usage_summary_user,Token汇总-用户,model_ai_token_usage_summa access_ai_token_usage_summary_admin,Token汇总-管理员,model_ai_token_usage_summary,yuthon_ai_agent.group_ai_agent_admin,1,0,0,0 access_ai_rule_user,AI规则-用户只读,model_ai_rule,yuthon_ai_agent.group_ai_agent_user,1,0,0,0 access_ai_rule_admin,AI规则-管理员,model_ai_rule,yuthon_ai_agent.group_ai_agent_admin,1,1,1,1 +access_ai_manual_user,操作手册-用户只读,model_ai_manual,yuthon_ai_agent.group_ai_agent_user,1,0,0,0 +access_ai_manual_admin,操作手册-管理员,model_ai_manual,yuthon_ai_agent.group_ai_agent_admin,1,1,1,1 diff --git a/yuthon_wechat/views/wecom_ai_views.xml b/yuthon_wechat/views/wecom_ai_views.xml index d704220cd..208c28132 100644 --- a/yuthon_wechat/views/wecom_ai_views.xml +++ b/yuthon_wechat/views/wecom_ai_views.xml @@ -92,7 +92,7 @@ parent="yuthon_ai_agent.menu_ai_root" action="action_wecom_ai_message_log" sequence="40" - groups="yuthon_ai_agent.group_ai_agent_admin"/> + groups="base.group_no_one"/> @@ -122,5 +122,5 @@ parent="yuthon_ai_agent.menu_ai_root" action="action_wecom_ai_chat" sequence="41" - groups="yuthon_ai_agent.group_ai_agent_admin"/> + groups="base.group_no_one"/>