diff --git a/.env.example b/.env.example
index ac17bada..35319693 100644
--- a/.env.example
+++ b/.env.example
@@ -3,4 +3,5 @@ COOKIES_STR=your_cookies_here
MODEL_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
MODEL_NAME=qwen-max
TOGGLE_KEYWORDS=。
-SIMULATE_HUMAN_TYPING=False
\ No newline at end of file
+SIMULATE_HUMAN_TYPING=False
+FILTER_THINKING=True
\ No newline at end of file
diff --git a/README.md b/README.md
index 033b0332..93b5d27b 100644
--- a/README.md
+++ b/README.md
@@ -72,6 +72,7 @@ MODEL_NAME=模型名称
#可选配置
TOGGLE_KEYWORDS=接管模式切换关键词,默认为句号(输入句号切换为人工接管,再次输入则切换AI接管)
SIMULATE_HUMAN_TYPING=True/False #模拟人工回复延迟
+FILTER_THINKING=True/False #是否过滤AI模型思考过程(开启后自动清理...等推理内容,仅输出最终回复,默认开启)
注意:默认使用的模型是通义千问,如需使用其他API,请自行修改.env文件中的模型地址和模型名称;
COOKIES_STR自行在闲鱼网页端获取cookies(网页端F12打开控制台,选择Network,点击Fetch/XHR,点击一个请求,查看cookies)
diff --git a/XianyuAgent.py b/XianyuAgent.py
index bdd40f4b..084b062f 100644
--- a/XianyuAgent.py
+++ b/XianyuAgent.py
@@ -16,6 +16,7 @@ def __init__(self):
self._init_agents()
self.router = IntentRouter(self.agents['classify'])
self.last_intent = None # 记录最后一次意图
+ self.filter_thinking = os.getenv("FILTER_THINKING", "True").lower() in ("true", "1", "yes")
def _init_agents(self):
@@ -61,8 +62,15 @@ def load_prompt_content(name: str) -> str:
logger.error(f"加载提示词时出错: {e}")
raise
+ def _filter_thinking(self, text: str) -> str:
+ """过滤AI模型的思考过程(...标签)"""
+ text = re.sub(r'.*?', '', text, flags=re.DOTALL)
+ return re.sub(r'\n{3,}', '\n\n', text).strip()
+
def _safe_filter(self, text: str) -> str:
"""安全过滤模块"""
+ if self.filter_thinking:
+ text = self._filter_thinking(text)
blocked_phrases = ["微信", "QQ", "支付宝", "银行卡", "线下"]
return "[安全提醒]请通过平台沟通" if any(p in text for p in blocked_phrases) else text