mcpField
N
now-assist-qa

now-assist-qa

github.com/happy-technologies-llcAgent 工作流4141 次安装2 天前更新
代码仓库

关于 now-assist-qa

用于配置 ServiceNow Now Assist 问答的技能,覆盖面向 Agent、员工和客户的不同场景。内容包括知识检索、LLM 与提示词调优、面板部署及基于反馈的质量监测。

主要功能

  1. 01配置不同场景的问答技能
  2. 02关联并筛选知识来源
  3. 03调整 LLM 参数与提示词
  4. 04设置对话上下文和安全规则
  5. 05部署面板并查看反馈

适用场景

  1. 01为 IT Agent 配置知识问答
  2. 02启用员工自助问答
  3. 03依据用户反馈调整回答

MCP 相关

通过 SN-Query-Table、SN-Create-Record 和 SN-Update-Record 等 ServiceNow MCP 工具,查询并配置技能、知识来源、面板和反馈。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill now-assist-qa

安装后在 Claude Code 中输入/now-assist-qa确认已加载。

详细介绍

Now Assist 问答配置

概述

本技能介绍如何配置 ServiceNow Now Assist 问答,以提供对话式 AI 辅助:

  • 为不同场景(Agent、员工、开发人员)设置 Now Assist 技能,以支持问答
  • 配置为对话式回答提供内容的知识来源
  • 通过提示词工程和大模型参数调整回答质量
  • 管理对话上下文和多轮对话
  • 在 Workspace、Portal 和 Mobile 中部署 Now Assist 面板
  • 通过反馈分析监控回答质量
  • 与 AI Search 集成,以提供检索增强式回答

适用场景: 通过 Now Assist 为 Agent、员工或客户启用 AI 问答,配置基于知识的回答,或调整对话式 AI 的质量。

先决条件

  • 角色: now_assist_admin、admin
  • 插件: sn_now_assist(Now Assist)、com.snc.generative_ai_controller(Generative AI Controller)、sn_gen_ai(Generative AI)
  • 访问权限: sn_now_assist_skill、sn_now_assist_skill_config、sn_gen_ai_config 表
  • 知识: 了解大模型概念(提示词、温度、令牌)和知识管理
  • 相关技能: genai/ai-search-rag(用于搜索配置)、genai/skill-kit-custom(用于自定义技能)

操作步骤

第 1 步:评估当前 Now Assist 配置

查询现有 Now Assist 技能及其状态。

MCP 方式:

Use SN-Query-Table on sn_now_assist_skill:
  - query: active=true
  - fields: sys_id,name,description,skill_type,context,active,status
  - limit: 20

检查现有技能配置:

Use SN-Query-Table on sn_now_assist_skill_config:
  - query: active=true
  - fields: sys_id,skill,name,config_type,value
  - limit: 50

REST 方式:

GET /api/now/table/sn_now_assist_skill
  ?sysparm_query=active=true
  &sysparm_fields=sys_id,name,description,skill_type,context,active
  &sysparm_limit=20
第 2 步:配置 Now Assist 问答技能

面向 Agent 的问答技能:

MCP 方式:

Use SN-Create-Record on sn_now_assist_skill:
  - name: "IT Agent Q&A"
  - description: "Provides AI-powered answers to IT agent questions from knowledge bases and resolved incidents"
  - skill_type: "qa"
  - context: "agent_workspace"
  - active: true
  - status: "draft"
  - knowledge_sources: "<kb_sys_id_1>,<kb_sys_id_2>"
  - enable_rag: true
  - response_mode: "generative"

REST 方式:

POST /api/now/table/sn_now_assist_skill
Body: {
  "name": "IT Agent Q&A",
  "description": "Provides AI-powered answers to IT agent questions from knowledge bases",
  "skill_type": "qa",
  "context": "agent_workspace",
  "active": true,
  "status": "draft",
  "enable_rag": true,
  "response_mode": "generative"
}

面向员工的问答技能:

Use SN-Create-Record on sn_now_assist_skill:
  - name: "Employee Self-Service Q&A"
  - description: "AI answers for common employee IT and HR questions"
  - skill_type: "qa"
  - context: "employee_portal"
  - active: true
  - status: "draft"
  - knowledge_sources: "<it_kb_sys_id>,<hr_kb_sys_id>"
  - enable_rag: true
  - response_mode: "generative"
  - fallback_action: "create_incident"

Now Assist 技能的上下文选项:

上下文值说明
Agent Workspaceagent_workspaceWorkspace UI 中的 IT Agent
Employee Portalemployee_portal员工自助服务门户
Customer Portalcustomer_portal面向外部客户
MobilemobileServiceNow 移动应用
Virtual Agentvirtual_agentVA 对话渠道
Platformplatform平台范围内可用
第 3 步:配置知识来源

将知识库关联到问答技能,以提供有依据的回答。

MCP 方式:

Use SN-Query-Table on kb_knowledge_base:
  - query: active=true
  - fields: sys_id,title,description,kb_version
  - limit: 20

将知识库关联到技能:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "knowledge_source_1"
  - config_type: "knowledge_base"
  - value: "<kb_sys_id>"
  - active: true
  - order: 100
Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "knowledge_source_2"
  - config_type: "knowledge_base"
  - value: "<hr_kb_sys_id>"
  - active: true
  - order: 200

配置知识筛选:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "kb_filter"
  - config_type: "knowledge_filter"
  - value: "workflow_state=published^valid_to>=javascript:gs.now()"
  - active: true
第 4 步:配置大模型参数

设置用于生成回答的生成式 AI 参数。

MCP 方式:

Use SN-Create-Record on sn_gen_ai_config:
  - name: "Now Assist Q&A LLM Config"
  - description: "LLM parameters for Now Assist Q&A responses"
  - active: true
  - llm_provider: "now_llm"
  - model: "default"
  - temperature: 0.3
  - max_tokens: 400
  - top_p: 0.9
  - frequency_penalty: 0.1
  - presence_penalty: 0.1

REST 方式:

POST /api/now/table/sn_gen_ai_config
Body: {
  "name": "Now Assist Q&A LLM Config",
  "active": true,
  "llm_provider": "now_llm",
  "temperature": 0.3,
  "max_tokens": 400,
  "top_p": 0.9
}

将大模型配置关联到技能:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "llm_config"
  - config_type: "gen_ai_config"
  - value: "<gen_ai_config_sys_id>"
  - active: true
第 5 步:配置系统提示词

系统提示词用于引导大模型生成问答回答。

MCP 方式:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "system_prompt"
  - config_type: "prompt"
  - value: |
      You are an IT support assistant for {company_name}. Your role is to help agents
      find answers to technical questions using the provided knowledge base content.

      Guidelines:
      - Only answer based on the provided context. Do not make up information.
      - If the context does not contain a clear answer, say "I don't have enough
        information to answer this question" and suggest creating a knowledge article.
      - Always cite the source knowledge article by title.
      - Keep answers concise and actionable, using bullet points for steps.
      - If the question involves a specific incident, reference relevant fields.
      - Never reveal internal system details, credentials, or sensitive data.
  - active: true

提示词模板变量:

变量说明示例
{company_name}客户组织名称Acme Corp
{user_name}当前用户的姓名John Smith
{user_role}当前用户的主要角色ITIL Agent
{context_record}当前正在查看的记录INC0012345
{knowledge_context}检索到的知识内容(由 RAG 注入)
{conversation_history}对话中的前序轮次(自动填充)
第 6 步:配置 Now Assist 面板

设置 Now Assist 面板的显示位置和方式。

MCP 方式:

Use SN-Create-Record on sn_now_assist_panel_config:
  - name: "Agent Workspace Q&A Panel"
  - description: "Now Assist Q&A panel for IT agent workspace"
  - active: true
  - context: "agent_workspace"
  - skills: "<qa_skill_sys_id>"
  - position: "right_sidebar"
  - auto_open: false
  - show_feedback: true
  - show_sources: true
  - max_conversation_turns: 10
  - greeting_message: "Hi! I can help you find answers from our knowledge base. What would you like to know?"

REST 方式:

POST /api/now/table/sn_now_assist_panel_config
Body: {
  "name": "Agent Workspace Q&A Panel",
  "active": true,
  "context": "agent_workspace",
  "skills": "<qa_skill_sys_id>",
  "position": "right_sidebar",
  "show_feedback": true,
  "show_sources": true
}
第 7 步:配置对话上下文

设置多轮对话的上下文管理方式。

MCP 方式:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "context_config"
  - config_type: "context"
  - value: '{
      "max_history_turns": 5,
      "include_record_context": true,
      "record_fields": ["short_description", "description", "priority", "category", "assignment_group"],
      "context_window_tokens": 3000,
      "clear_on_record_change": true
    }'
  - active: true
第 8 步:设置回答质量防护措施

MCP 方式:

Use SN-Create-Record on sn_now_assist_skill_config:
  - skill: "<qa_skill_sys_id>"
  - name: "guardrails"
  - config_type: "safety"
  - value: '{
      "require_knowledge_grounding": true,
      "min_confidence_score": 0.65,
      "block_pii_in_response": true,
      "max_response_length": 500,
      "prohibited_topics": ["salary", "termination", "legal_advice"],
      "fallback_message": "I am not able to answer this question. Please contact your IT service desk for assistance.",
      "enable_content_filtering": true
    }'
  - active: true
第 9 步:激活并部署

MCP 方式:

Use SN-Update-Record on sn_now_assist_skill:
  - sys_id: "<qa_skill_sys_id>"
  - status: "published"
  - active: true

验证配置是否完成:

Use SN-Query-Table on sn_now_assist_skill_config:
  - query: skill=<qa_skill_sys_id>^active=true
  - fields: name,config_type,active
  - limit: 20

验证面板是否已激活:

Use SN-Query-Table on sn_now_assist_panel_config:
  - query: skills=<qa_skill_sys_id>^active=true
  - fields: name,context,position,active
第 10 步:监控并调整回答质量

查询反馈数据:

Use SN-Query-Table on sn_now_assist_feedback:
  - query: skill=<qa_skill_sys_id>^sys_created_on>javascript:gs.daysAgo(7)
  - fields: sys_id,query,response,rating,feedback_text,user
  - limit: 50
  - orderBy: sys_created_on
  - orderDirection: desc

分析负面反馈模式:

Use SN-Query-Table on sn_now_assist_feedback:
  - query: skill=<qa_skill_sys_id>^rating<3
  - fields: query,response,rating,feedback_text
  - limit: 20

根据反馈进行调整:

Use SN-Update-Record on sn_gen_ai_config:
  - sys_id: "<gen_ai_config_sys_id>"
  - temperature: 0.2
  - max_tokens: 500

工具使用

工具用途使用时机
SN-Query-Table查找现有技能、配置和反馈探索与监控
SN-Create-Record创建技能、配置和面板设置初始设置
SN-Update-Record调整大模型参数、激活技能优化与部署
SN-Get-Table-Schema探索配置表字段了解可用设置

最佳实践

  1. 从单个知识库开始,在验证质量后逐步扩展来源
  2. 使用较低的 temperature(0.2-0.4)进行问答,确保回答准确且有依据
  3. 编写具体的系统提示词,定义助手的角色、边界和回答格式
  4. 启用引用显示,方便用户对照源材料核实答案
  5. 保守设置置信度阈值(0.65+),并根据反馈进行调整
  6. 在问答技能与事件或案例搭配使用时,加入记录上下文
  7. 将对话历史限制为 5-7 轮,以管理 token 用量并确保上下文相关性
  8. 阻止回答中出现 PII,防止敏感数据意外泄露
  9. 每周监控反馈,及时处理负面评分的规律
  10. 使用支持工单中的真实用户查询进行测试,在上线前验证回答质量

故障排查

问题原因解决方案
Now Assist 面板不可见面板配置未激活或上下文错误验证 sn_now_assist_panel_config.active=true,且 context 与 UI 匹配
回答泛泛而谈/没有帮助未关联知识来源或知识来源为空检查 skill_config 中的 knowledge_base 条目,并确认知识库中有已发布的文章
回答出现幻觉Temperature 过高或未要求基于依据作答降低 temperature,设置 require_knowledge_grounding=true
回答在句中截断max_tokens 太低在 sn_gen_ai_config 中增大 max_tokens(建议 400-600)
响应速度慢知识来源过多或上下文窗口过大减少搜索来源,降低 context_window_tokens
技能未触发技能状态为草稿或未激活发布并激活技能
未收集到反馈面板上的 show_feedback 已禁用在面板配置中设置 show_feedback=true
搜索了错误的知识库KB 筛选条件过于宽泛或缺失在 knowledge_filter 配置中添加特定的 kb_knowledge_base 筛选条件

示例

示例 1:工作区中的 IT Agent 问答

为 ITSM Agent 配置 Now Assist 问答:

  • **技能:**Agent 工作区上下文,关联 IT 知识库和已解决的事件
  • **系统提示词:**IT 支持助手,仅根据知识库回答、引用来源并建议升级途径
  • **LLM 配置:**Temperature 0.3,最多 400 个 token,now_llm 提供方
  • **面板:**右侧边栏,禁用自动打开,启用反馈,显示 3 个来源引用
  • **上下文:**从当前查看的记录中包含 incident short_description、description、priority、category
  • **护栏:**要求基于知识作答、阻止 PII、最低置信度 0.7
示例 2:员工自助问答

为员工门户自助服务配置 Now Assist:

  • **技能:**员工门户上下文,关联 IT FAQ 知识库和 HR 政策知识库
  • **系统提示词:**友好的员工助手,提供分步指导并附上服务目录链接
  • **LLM 配置:**Temperature 0.4,最多 500 个 token,以提供更详细的自助服务说明
  • **面板:**嵌入门户搜索,显示问候语,对话最多 5 轮
  • **回退方案:**如果置信度低于 0.6,建议创建事件或浏览服务目录
  • **护栏:**阻止薪资/解雇相关话题,要求基于知识库作答,启用内容过滤
示例 3:客户支持的 CSM Agent 问答

为客户服务管理 Agent 配置 Now Assist:

  • 技能: CSM 的 Agent 工作区上下文,关联产品知识库和客户解决方案知识库
  • 系统提示词: 客户支持专家,采用专业语气,包含故障排除步骤
  • 大模型配置: 温度设为 0.2,以提供精准的技术解答;最大 400 个令牌
  • 上下文: 包含当前案例中的 short_description、产品、账户和优先级
  • 面板: 右侧边栏,在创建案例时自动打开,并显示反馈和来源
  • 防护措施: 禁止分享内部定价、SLA 详情或其他账户的客户数据

相关技能

  • genai/ai-search-rag - 为问答知识检索提供支持的 AI Search 配置
  • genai/skill-kit-custom - 创建问答之外的自定义 Now Assist 技能
  • genai/flow-generation - 可通过问答回退操作触发的流程
  • knowledge/article-generation - 管理知识内容质量,以改进问答

评论

支持 Markdown