链载Ai

标题: 用魔法击败魔法,AI写提示词增强大模型 [打印本页]

作者: 链载Ai    时间: 4 小时前
标题: 用魔法击败魔法,AI写提示词增强大模型
51假期,在家研究能否用Coze手搓一个HR智能人才筛选的场景应用。
经过几天研究发现如下大坑:
1. 现在的智能体用的是向量数据库查询,但是在大模型语义理解和精准查询的灵活转化上存在不足。譬如用户输入要搜寻所有女财务人员的信息, 提示词输入后检索为空。加了个输出看到底写的是什么SQL语句,发现写的是“女性”,而数据库中写的是“女”,所以返回为空。提示词虽然写了让其先了解数据库中的存储内容,但是实际执行的时候完全不听使唤。用ChatGPT优化提示词,AI自己的回答是,只能写映射矩阵了。但是这里又有个问题,映射矩阵有可能无法穷尽所有用户的输入,这怎么整?再次问GPT,给了如下提示词:

性别条件处理

- 直接表述:

- "男"、"男性"、"男生"、"男士"→gender = '男'

- "女"、"女性"、"女生"、"女士"→gender = '女'

- 隐含表述:

- "美女"、"姑娘"、"妹子"→gender = '女'

- "帅哥"、"小伙"、"汉子"→gender = '男'

- 组合表述:

- "男员工"、"男同事"→gender = '男'

- "女员工"、"女同事"→gender = '女'

- 否定表述:

- "非男性"→gender != '男'

- "非女性"→gender != '女'

实测结果:

输入:找个财务小姑娘

输出:

✅ 找到 3 位符合 “财务小姑娘” 条件的候选人:

1️⃣ 赵萍 (EMP006):财务分析师,31 岁,所在部门为财务部。
2️⃣ 朱丽 (EMP016):会计,35 岁,所在部门为财务部。
3️⃣ 高燕 (EMP022):财务分析师,33 岁,所在部门为财务部。

查看详细分析请输入候选人序号 (1 - 3)。

输入:找个财务老太

输出:查询未返回结果。这可能意味着:



您可以考虑放宽条件,比如扩大年龄范围至中年(35 - 50 岁),或者提供其他补充条件,我会继续为您查找合适的人员。

也就是说,你还是需要给AI做个示例,这样的话,AI就大概率能够理解中间的匹配关系了。
2. Coze 外层智能体只能挂3张数据库的表,且Coze不支持SELECT *,JOIN这种语法写SQL语句。一开始的想法是做工作流,在工作流中挂SQL语句查询,但这里的问题是工作流的输入是什么?如果就是用户的上下文,在外层的提示词很难抽取出挨个的查询条件,而在里层工作流上,又不能在LLM上挂数据库表进行向量检索。一个思路是设置全局参数,然后传到工作流里,但这样的话效率极差,系统卡顿明显。最后只能放弃,全部写在了外层大模型的提示词里。
3. 对于没有匹配关系的输入,需要手把手教AI怎么做职务的分析和详细的步骤。
提示词如下:

## 十一、匹配与分析执行流程


### 11.1 岗位存在性及需求理解


1. **用户需求前置分析**


**示例:需求前置分析**

```

// 第一步:明确用户真实需求

1. 解析用户查询的目标岗位:"海外IT系统实施项目经理"

2. 拆解为核心要素:地域(海外)、部门(IT)、职能(系统实施)、职位(项目经理)

3. 评估每个要素的重要性权重

```


2. **岗位存在性验证**


**示例:岗位存在性验证**

```

// 第二步:验证岗位是否存在

SELECT COUNT(*) FROM position_competency

WHERE position_code LIKE '%IT%' AND position_code LIKE '%PM%'

IF 结果 = 0,执行岗位建模流程

```


3. **岗位建模(针对不存在岗位)**


**示例:岗位建模**

```

// 第三步:建立岗位模型

1. 基于行业标准和最佳实践构建岗位特征模型

2. 确定核心能力要求和权重

3. 映射到系统内的相似岗位和能力要求

```


### 11.2 逐步验证的分析流程


1. **基础存在性验证**


**示例:基础存在性验证**

```

// 第四步:验证员工ID存在性

SELECT COUNT(*) FROM employee_profile WHERE employee_id = 'EMP123'

如结果为0,立即停止并报告"员工ID不存在"

```


2. **基础数据获取**


**示例:基础数据获取**

```

// 第五步:获取基础信息

SELECT * FROM employee_profile WHERE employee_id = 'EMP123'

验证返回行数,确保数据存在

```


3. **相关数据获取**


**示例:相关数据获取**

```

// 第六步:获取相关数据

SELECT * FROM employee_competency WHERE employee_id = 'EMP123'

明确说明是否找到数据:"找到5条能力评估记录"或"未找到能力评估记录"

```


4. **数据整合与分析**


**示例:数据整合与分析**

```

// 第七步:基于实际获取的数据执行分析

只分析实际存在的数据

明确标示数据缺失情况

不对缺失数据进行猜测

```

效果验证:

输入:我要找个海外做过工程项目的包工头

输出:

基于执行结果,未找到完全符合 “海外做过工程项目的包工头” 条件的候选人。


? 数据诊断结果:



? 推荐扩展方向:


  1. 优先考虑放宽地域要求,从 “海外” 放宽到 “有外语能力且有工程项目经验”(预计匹配度:中)。
  2. 考虑放宽职位范围,从 “包工头” 放宽到 “工程相关项目经理或负责人”(预计匹配度:中低)。


请问您是否接受放宽条件继续搜索?若接受,您希望优先放宽哪个条件?

输入:全部放开

输出:

即便放宽了地域和职位范围条件,仍未找到符合要求的候选人。


? 这可能是一个机会,表明:


  1. 该岗位在组织中是一个新兴需求。
  2. 可能需要外部招聘或内部培养来填补这一人才缺口。
  3. 考虑将职责分解给现有团队成员。

? 我可以帮您:


  1. 找出最接近要求的现有人才。
  2. 设计内部培养方案。
  3. 分析外部招聘的关键要点。

您希望我接下来提供哪方面的帮助呢?

输入:1

输出:

在尝试找出最接近要求的现有人才时,仍然没有找到符合一定相关条件的人员。目前数据库中可能缺乏与海外工程项目有一定关联的工程类人员数据。


鉴于这种情况,建议可以考虑从外部招聘合适的人才,我可以为您分析外部招聘的关键要点;或者设计内部培养方案,挖掘内部员工潜力使其向该岗位发展。您希望我接下来为您提供外部招聘要点分析,还是设计内部培养方案呢?


输入:内部方案
输出:

由于目前没有合适的内部人员数据作为参考,我将先为您构建 “海外工程项目包工头” 的岗位能力模型,以此为基础设计内部培养方案。


“海外工程项目包工头” 岗位能力模型

{
"core_responsibilities": [
"负责海外工程项目的整体规划与统筹",
"管理海外工程项目团队,协调各方资源",
"确保工程项目符合当地法规、标准和文化要求",
"控制工程项目的进度、质量和成本",
"与海外客户、供应商等利益相关者进行有效沟通"
],
"key_abilities": {
"项目管理": ["项目规划", "进度控制", "质量管理", "成本管理", "风险管理"],
"技术能力": ["工程技术知识", "施工工艺掌握", "图纸解读能力"],
"跨文化能力": ["文化敏感性", "跨文化沟通技巧", "国际商务礼仪"],
"团队管理": ["人员招聘", "团队激励", "冲突解决"]
},
"skill_requirements": [
{"skill": "项目管理", "level": "高级", "weight": 30},
{"skill": "工程技术", "level": "中高级", "weight": 25},
{"skill": "跨文化沟通", "level": "熟练", "weight": 20},
{"skill": "团队管理", "level": "高级", "weight": 15},
{"skill": "外语能力", "level": "良好", "weight": 10}
]
}

内部培养方案


人才筛选


在公司内部发布 “海外工程项目包工头” 岗位的培养计划招募通知,吸引对该岗位有兴趣且具备一定潜力的员工报名。从报名员工中筛选出符合以下基本条件的人员:



培训计划


  1. 项目管理培训





欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5