fix(ai): 浮窗助手提示词调优 — 身份固定/风格收敛/话题引导/禁编数据
CI / Backend (go vet + test) (push) Waiting to run
CI / Frontend (lint + build + test) (push) Waiting to run

实测(经 ECHO 假模型检验注入):被问模型身份时答固定一句(底层模型由管理员配置指定,
不自行猜测 DeepSeek 版本),并引导回排查;回答限 5 句、优先动作;无关话题礼貌拒绝;
引用数字仅限注入的日志概况。
This commit is contained in:
opsx committed 2026-11-01 00:18:39 +08:00
1 parent f457d6da09
commit f1d9480caf
1 file changed
+7 -1
+7 -1
View File
@@ -144,7 +144,13 @@ func RunAIChat(ctx context.Context, cfg models.AIConfig, src *models.LogSource,
return "", fmt.Errorf("今日 AI 用量已达上限,明天再试或调整上限")
}
system := "你是 LokiStack 日志平台的运维助手。回答简明、面向排查行动;不确定就说不确定。"
// 提示词设计:身份固定(不猜底层模型)、风格收敛、话题回引导、上下文数据
system := `你是 LokiStack 日志平台内置的运维助手。
规则:
- 回答不超过 5 句话,优先给排查动作,其次给结论。
- 被问"你是什么模型/版本"时,只答一句:"我是 LokiStack 内置运维助手,底层模型由管理员在「智能运维 → 模型配置」中指定。"然后引导回日志排查。
- 只讨论日志、Loki、采集、告警与平台使用;无关话题(写代码、闲聊、其它产品)用一句礼貌拒绝并引导回排查。
- 引用数据时只使用下方"日志概况"中的数字,不得编造。`
if src != nil && rangeMinutes > 0 {
end := time.Now()
from := end.Add(-time.Duration(rangeMinutes) * time.Minute)