乐于分享
好东西不私藏

用 AI 打造 SuccessFactors 数据分析助手(2):让AI听懂人话

用 AI 打造 SuccessFactors 数据分析助手(2):让AI听懂人话

💡 导语:

在上一期,我们盘点了 HR 最常问的五大取数场景。但问题来了:当 HR 在对话框里敲下“帮我拉一份上海研发中心、入职满3年且绩效拿过A的工程师名单,按底薪从高到低排”时,AI 到底在后台经历了怎样的疯狂计算,才能在一秒内吐出准确的数据?

今天,我们将揭开这款 AI 产品的核心大脑——从“自然语言”到“机器逻辑”的四步翻译法则。

▲ 自然语言与底层数据的智慧桥梁

⚙️ 核心解密:AI 取数的“四步解析法”

要让 AI 像资深实施顾问一样写出精准的查询语句,我们需要在产品底层构建一个 “解析与映射(Mapping)引擎”。具体分为以下四个步骤:

🛠️ Step 1:意图与实体拆解 (Entity Extraction)

AI 接到指令的第一步,是化身为“语文老师”,给句子做主谓宾的拆解。它需要从中揪出五个核心元素:

  • 动作类型 (Action):
     是要“明细列表”还是要“聚合统计”?
  • 数据域 (Domain):
     问的是员工信息、薪资记录、还是绩效结果?
  • 过滤条件 (Filters):
     包含哪些限定词(如:上海、满3年、A绩效)。
  • 排序规则 (Sorting):
     从高到低,还是从低到高?
  • 输出字段 (Select):
     用户需要看到哪些列(姓名、部门、薪资)?

🗺️ Step 2:数据域的路由与寻址 (Data Routing)

人类的一句话,往往跨越了底层系统的多张表。AI 需要知道去哪个“抽屉”里找数据。

  • 提到“姓名、部门”,AI 知道要去基础的 职位表 (EmpJob) 找。
  • 提到“底薪”,AI 必须通过外键关联到 薪酬表 (EmpPayComp)

▲ AI 穿梭于复杂的数据底表之间

⚖️ Step 3:模糊语义到精准符号的转换

这是最考验 AI 智商的一环!人类的语言是模糊的,但数据库只认逻辑符号(=、>、<、AND)。AI 需要进行“常识翻译”:

  • “入职满3年”
     ➡️ 翻译为:雇佣日期 <= (当前日期 – 3年)
  • “高级工程师”
     ➡️ 翻译为:Job Title 包含 ‘Senior’ OR 职级 >= 7
  • “高绩效”
     ➡️ 翻译为:Performance Rating >= 4

⏳ Step 4:时间轴定位 (Effective Dating)

HR 的数据有极强的“时间穿梭”特性。AI 必须从句子中提取时间状语,并在查询中加上时间戳限定。

  • 如果是 “目前” ➡️ asOfDate = Today
  • 如果是 “去年年底” ➡️ asOfDate = 2025-12-31

🎬 实战演练:一句话是如何变成代码的?

让我们用一个真实的 HR 提问,慢动作回放 AI 的脑回路:

🗣️ HR 提问:

“帮我拉一份上海分公司、入职超过2年的销售经理名单,按照绩效分数从高到低排,取前10名。”

🤖 AI 翻译后生成的 API 请求(伪代码):

/EmpJob?$select=userId, department, location&$filter=location eq ‘Shanghai’ and jobCode eq ‘Sales_Mgr’ and hireDate le ‘2024-04-13’&$orderby=rating desc&$top=10

系统收到这串神秘代码,0.5秒后,数据乖乖返回!

▲ 自然语言一秒转换为底层 API 查询代码

🛡️ 产品的终极护城河:建立“企业级数据字典”

看完上面的逻辑,您可能会问:AI 怎么知道“上海分公司”在系统里的代码是 ‘SH01’ 还是 ‘Shanghai’?

这正是这个 AI 产品最大的壁垒!单纯接入一个 ChatGPT 是做不出这款产品的。在落地时,我们需要喂给 AI 一份专属于贵公司的“语义映射字典 (Semantic Layer)”

  • 同义词库:
     让 AI 知道,HR 说的“底薪”、“Base”、“月薪”,指的都是系统里的 PayComponent = ‘BASESAL’
  • 枚举值映射:
     让 AI 知道,“上海分公司”对应的系统实体 ID 是 CompanyCode = 1010

只有当强大的大模型(大脑),配上这本企业专属的字典(Skill),AI 才能真正做到百发百中,绝不胡编乱造。