基于明日DMP API,支持6种人群圈选方式(组合人群、广告行为规则人群、APP规则人群、LBS规则人群、拓展人群、打通人群),实现精准营销、用户画像、竞品分析和区域推广的人群筛选。
---
name: 明日dmp人群圈选
description: 基于明日DMP开放平台API,提供6种人群圈选方式(组合人群、广告行为规则人群、APP规则人群、LBS规则人群、拓展人群、打通人群),采用渐进式披露设计,支持参数完整性检查、格式校验、业务规则校验和参数确认机制。适用于精准营销、用户画像圈选、再营销人群、竞品分析、区域推广、相似人群挖掘等场景。
# 明日DMP人群圈选
## 概述
本技能基于明日DMP开放平台API,提供6种人群圈选方式,帮助您精准定位目标用户。
⚠️ **重要声明**:
1. **凭证安全责任**:您的 Access Key(AK)和 Secret Key(SK)是访问明日 DMP API 的唯一凭证,属于您的敏感私密信息。您对凭证的妥善保管(包括但不限于防止泄露、撤销权限)负全部责任。因凭证泄露、遗失或不当使用导致的一切损失及法律责任,均由您自行承担。
2. **数据合法性责任**:使用本技能进行人群圈选、洞察、同步、投放等操作时,您须保证所使用的数据来源合法合规,并已取得必要的用户授权。因数据来源违法、侵权或违反相关法律法规所引发的一切法律责任与纠纷,均由您自行承担,本技能开发者不承担任何连带责任。
3. **操作结果责任**:本技能的所有 API 调用结果(包括人群创建、任务状态、数据结果等)均由明日DMP平台提供,本技能开发者对 API 返回内容的准确性、完整性不作任何保证,对因此产生的业务损失不承担责任。
4. **使用即视为同意**:继续使用本技能,即表示您已阅读并同意上述免责声明。
💡 **提示**:欢迎使用后分享您的体验,帮助我们持续改进 → [填写使用评价](https://doc.weixin.qq.com/forms/ANEAJwfLAAoAakARgYnAKICNgMOj015Of?page=1)
## 🔑 前置准备
使用本技能前,您需要先获取明日DMP API凭证:
**📧 申请方式(二选一):**
**方式一:邮件申请**
- 发送至:product@mingdata.com
- 邮件主题:【明日DMP API开通申请】
- 邮件内容:请注明公司名称、联系人、联系方式及使用场景
**方式二:在线表单申请**
- 填写申请表单:https://doc.weixin.qq.com/forms/ANEAJwfLAAoADMAHwbhAPICNUE0vDRd8f#/fill
- 提交后等待审核通过(通常1-3个工作日)
**🔒 凭证格式:**
- Access Key:`xxxxxxxxxxxxxxxx`
- Secret Key:`xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`
**💡 温馨提示**:首次使用时,我会自动引导您完成凭证配置,无需担心!
## ⚠️ 重要:API返回数据结构说明
### 广告行为维度查询API
**正确端点:** `/audience/rule/dictionary/search`
**请求参数:**
- `trackType`: 平台类型 (MOBILE/OTT/PC)
- `type`: 维度类型 (行业维度/媒体维度/活动维度)
**返回数据结构:**
```json
{
"code": "0",
"msg": "请求成功",
"data": [
{
"id": "000000130000000000001960",
"condition": "美妆个护类", // ✅ 维度名称在此字段
"type": "行业维度",
"subType": "INDUSTRY_L1"
}
]
}
```
**⚠️ 关键提示:**
- 维度名称在 `condition` 字段,**不是** `name` 字段
- 查询和匹配时请使用 `item.get('condition')` 而非 `item.get('name')`
- 维度ID为24位格式,必须通过API查询获取
## 工作流程
### 请求类型自动识别
当您发起请求时,系统会自动识别请求类型并进入相应流程:
**1. 技能咨询请求**("有哪些功能"、"能做什么")
- 展示6种人群圈选类型的详细说明
- 直接结束,等待您的下一步需求
**2. 查询任务请求**("查询任务123456")
- 直接调用查询脚本
- 展示任务状态(计算中/成功/失败)
- **任务成功时,提供后续操作建议**:
1. 下载人群洞察技能 - 分析人群画像特征
2. 下载人群投放技能 - 创建广告投放任务
3. 💬 **填写使用评价** - 帮助我们改进产品: https://doc.weixin.qq.com/forms/ANEAJwfLAAoAakARgYnAKICNgMOj015Of?page=1
- 直接结束
**3. 创建人群请求**(包含标签、条件、行为等)
- 进入完整的创建流程(见下方)
### 创建人群完整流程
**流程执行规则:**
- ✅ 必须执行:第一步~第八步(所有步骤都必须执行)
- ⚠️ **严格禁止跳过任何步骤**,特别是第七步(任务记录检查)
- 📌 **第七步虽然用户可以选择不安装,但必须执行检查和询问流程**
**第一步:圈选方式识别与确认** [必须执行]
系统会根据您的需求关键词,识别出最匹配的圈选方式,然后**向您确认**。
### 意图识别规则表
根据用户需求中的关键词,按以下优先级匹配圈选方式:
| 圈选方式 | 核心关键词(正则匹配) | 典型口语变体 | 否定/排除词(避免误触发) |
|---------|-------------------|------------|-------------------|
| **组合人群** | 标签、年龄、性别、兴趣、地域、人口属性、DMP标签、组合 | "要……的人"、"圈一下……的用户"、"符合……条件的"、"……岁到……岁"、"男/女"、"学历"、"收入"、"职业"、"偏好"、"喜欢"、"经常逛" | 排除"不要组合"、"不是标签圈选" |
| **LBS规则人群** | 位置、地理、坐标、经纬度、附近、周边、到访、常驻、工作地、居住地、商圈、POI、辐射范围、**定位、打卡、停留、路过、经过、出差地、旅游地、区域、街区、广场** | "去过……"、"住在……附近"、"工作在……"、"最近去过……"、"方圆……米"、"在……范围"、"打卡过……"、"路过了……" | 排除"不要地理位置"、"不是LBS" |
| **广告行为规则人群** | 广告、曝光、点击、活动ID、点位ID、行业维度、媒体维度、媒体、行业、行业大类、行业中类、行业小类、媒体大类、媒体小类、频次、看过广告、点过广告 | **行业示例**:"美妆行业曝光≥3次"、"汽车行业点击过广告"、"快消品行业最近30天看过广告"<br>**媒体示例**:"抖音媒体曝光"、"腾讯视频点击广告"、"在今日头条投放过"、"媒体大类为视频媒体"<br>**地域示例**:"北京地区看过广告的用户"、"华东区域点击过"、"广东省曝光频次≥2"<br>**其他**:"活动12345的曝光"、"点位ID 67890"、"频次1-5次"、"最近30天看过我们广告的" | 排除"不是广告行为" |
| **APP规则人群** | APP、应用、安装、活跃、使用过、打开过、下载、应用列表 | "装了……的"、"常用……的"、"每天用……的"、"打开过……的"、"手机上装了……" | 排除"不要APP" |
| **拓展人群** | 拓展、扩展、相似、lookalike、种子人群、相似人群、找更多、扩大规模、**类似人群、像这样的用户、放大、扩量、相似度、机器学习扩量** | "基于……找相似"、"和……类似的人"、"扩大人群到……万"、"找更多像这样的" | 排除"不要拓展" |
| **打通人群** | 打通、跨屏、TV、OTT、电视、手机、转换、映射、设备ID转换、跨设备、Mobile to TV、PC to Mobile、ID打通 | "手机人群转电视"、"把……的人同步到电视端"、"跨屏投放"、"打通手机和电视" | 排除"不要打通" |
### 意图识别流程
**步骤1.1:关键词匹配**
从用户需求中提取关键词,按上表从上到下匹配。**匹配到第一个符合的圈选方式后停止**。
**步骤1.2:向用户确认**
识别出圈选方式后,**必须向用户确认**,不可直接执行:
```
示例1:
您:"帮我圈选25-35岁的女性用户"
↓
系统:"识别到您提到了【年龄、性别】标签,可以创建【组合人群】来圈选这类用户。
组合人群说明:
- 功能:通过DMP标签组合(年龄、性别、兴趣等)精准圈选
- 适用场景:基于人口属性、兴趣偏好等标签的精准人群圈选
- 必填参数:人群名称、平台类型、ID类型、标签组合规则
是否需要创建组合人群?"
↓
您:"是的" / "不是,我只是想了解一下"
```
```
示例2:
您:"圈选北京国贸附近500米的用户"
↓
系统:"识别到您提到了【位置、附近、500米】,可以创建【LBS规则人群】来圈选这类用户。
LBS规则人群说明:
- 功能:基于地理位置数据,圈选到访过特定区域的用户
- 适用场景:区域推广、商圈营销、门店引流
- 必填参数:人群名称、坐标、辐射范围、人群类型(经过/常驻/工作/居住)
- 注意:坐标系统必须使用百度坐标系(BD09)
是否需要创建LBS规则人群?"
↓
您:"是的" / "不是,我想用其他方式"
```
**步骤1.3:处理用户响应**
- 用户确认"是" → 进入第二步(参数补充)
- 用户拒绝 → 询问用户想使用哪种圈选方式,或展示所有6种圈选方式供选择
- 用户不确定 → 展示所有6种圈选方式的详细说明,让用户选择
### 特殊情况处理
**情况A:无法识别圈选方式**
如果用户需求中没有明确的关键词,**不要猜测**,而是:
1. 展示所有6种圈选方式的简要说明
2. 询问用户想使用哪种方式
3. 等待用户明确选择后再继续
**情况B:匹配到多种圈选方式**
如果用户需求同时包含多种圈选方式的关键词(如"圈选北京的、看过我们广告的用户"),按以下规则处理:
1. 优先选择**更具体**的圈选方式(LBS > 广告行为 > 组合人群)
2. 向用户说明识别到多种可能性,列出所有匹配的方式
3. 让用户选择使用哪种方式,或建议分步骤创建(先创建A人群,再用组合人群将A和B组合)
**情况C:用户直接给出人群ID**
如果用户需求中包含"人群ID"、"audienceId"、"基于人群123456"等,识别为以下场景之一:
- 包含"拓展"、"相似" → 拓展人群
- 包含"打通"、"跨屏" → 打通人群
- 包含"组合"、"交集"、"并集" → 组合人群
- 无明确关键词 → 询问用户想对这个人群做什么操作
**第二步:鉴权技能检查与凭证配置** [必须执行]
确认圈选方式后,系统会立即检查鉴权技能是否已安装,并配置API凭证:
**完整检查流程:**
**步骤2.1:检查鉴权技能是否已安装**
系统会自动检查鉴权技能(mingdata-dmp-auth)的安装状态:
- **检查路径**:`~/.skills/mingdata-dmp-auth/`
- **如果已安装** → 跳转到步骤2.2(凭证检查)
- **如果未安装** → 向用户展示以下提示并等待回复
**鉴权技能未安装时的提示内容:**
```
⚠️ 检测到您尚未安装【明日DMP鉴权技能】
该技能负责管理 API 凭证(AK/SK)、生成签名,是使用本功能的必要前提。
是否自动下载并安装?
是 - 立即安装
否 - 取消本次操作
请回复:是/否
```
**等待用户回复,按以下逻辑执行:**
- **用户回复"是"**:
- 使用 terminal 工具执行:`openclaw skills install mingdata-dmp-auth`
- 等待命令执行完成
- **安装成功**:提示 `✅ 鉴权技能安装成功` → 继续步骤2.2
- **安装失败**:展示以下内容后**终止流程**:
```
❌ 鉴权技能自动安装失败
请前往 ClawHub 手动安装:
👉 https://clawhub.ai/mingri26/mingdata-dmp-auth
手动安装步骤:
1. 打开上方链接
2. 点击「Download」按钮
3. 安装完成后重新发起本次请求
```
- **用户回复"否"**:
- 提示:`已取消操作。如需继续,请先安装鉴权技能。`
- 终止流程
**步骤2.2:检查凭证是否存在**
鉴权技能安装完成后,检查API凭证配置状态:
- **凭证文件路径**:`~/.mingdata_dmp_credentials`
- **如果凭证不存在** → 展示凭证获取指引(见下方)
- **如果凭证存在但无效** → 引导重新配置
- **如果凭证有效** → 继续执行第三步(参数补充)
**凭证不存在时的引导内容:**
```
🔑 明日DMP API凭证获取指南
您需要先获取明日DMP的API访问凭证(Access Key 和 Secret Key),才能使用人群圈选功能。
📧 申请方式(二选一):
方式一:邮件申请
- 发送开通申请至:product@mingdata.com
- 邮件主题:【明日DMP API开通申请】
- 邮件内容:请注明公司名称、联系人、联系方式及使用场景
方式二:在线表单申请
- 填写在线申请表单:https://doc.weixin.qq.com/forms/ANEAJwfLAAoADMAHwbhAPICNUE0vDRd8f#/fill
- 提交后等待审核通过(通常1-3个工作日)
🔒 安全提示:
- Access Key 格式:xxxxxxxxxxxxxxxxxxxx(20位字符)
- Secret Key 格式:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(36位字符)
- 请妥善保管凭证,不要泄露给他人
获取凭证后,请按以下格式提供给我:
Access Key: xxxxxxxxxxxxxxxxxxxx
Secret Key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
```
**凭证配置后:**
- 系统会自动保存凭证到本地配置文件
- 后续操作将自动使用已保存的凭证
- 凭证过期时会自动提示重新配置
**第三步:参数补充** [必须执行]
凭证检查通过后,系统会检查必填参数是否齐全,缺失时**主动询问并提供选项枚举**。
### ⚠️ 参数获取失败处理规则 (强制执行)
**当通过API查询参数(如媒体维度、地域维度、APP列表等)失败时,必须执行以下流程:**
**1. 立即向用户同步失败情况**
- 说明哪个参数查询失败
- 说明失败原因(如API权限不足、网络错误等)
- 说明对任务的影响
**2. 提供备选方案并等待用户决策**
- 方案A: 降级处理(去掉该参数,用其他参数创建)
- 方案B: 用户手动提供参数值(如媒体ID、地域ID等)
- 方案C: 取消本次操作
- **⚠️ 禁止自行决定方案,必须等待用户选择**
**3. 用户选择后重新确认参数**
- 如用户选择降级处理,必须重新展示修改后的参数表格
- 必须再次等待用户确认
- 确认后才能执行创建
**错误示例(禁止):**
```
查询媒体维度失败 → 直接去掉媒体维度 → 只用地域维度创建 ❌
```
**正确示例:**
```
查询媒体维度失败 → 向用户说明情况 → 提供备选方案 → 用户选择方案A(降级) → 重新展示参数表格 → 用户确认 → 执行创建 ✅
```
**示例对话:**
```
系统: "⚠️ 媒体维度查询失败
失败原因: API权限不足,无法查询媒体维度数据
影响: 无法获取'新浪网'的媒体ID
您可以选择以下方案:
A. 降级处理 - 去掉媒体维度,只用地域维度创建人群
B. 手动提供 - 如果您知道新浪网的媒体ID(24位格式),可以直接提供
C. 取消操作 - 取消本次人群创建
请选择方案(回复A/B/C):"
用户: "A"
系统: "好的,已去掉媒体维度。
修改后的参数如下:
| 参数项 | 参数值 |
|--------|--------|
| 人群名称 | 测试广告规则 |
| 平台类型 | MOBILE |
| ID类型 | MD5_IMEI、MD5_OAID、MD5_IDFA |
| 圈选条件 | 地域维度:北京市,曝光≥1次,2026-05-20至2026-05-23 |
请确认以上参数是否正确?(回复'确认'开始创建)"
```
### 各圈选方式的参数选项枚举
#### 2.1 组合人群参数引导
**参数1:平台类型(trackType)**
```
您想圈选哪个平台的用户?
1. MOBILE(移动端)- 支持手机设备ID
2. PC(PC端)- 支持秒针MZID
3. OTT(电视端)- 支持电视MAC地址
```
**参数2:ID类型(idTypes)**
根据平台类型自动匹配:
- MOBILE平台:`MD5_IMEI、MD5_OAID、MD5_IDFA、IDFA、OAID、CAID、MD5_CAID`
- PC平台:`MZID`
- OTT平台:`MD5_MAC`
**参数3:标签组合规则(data)**
系统会引导用户选择标签并设置组合逻辑。
### 组合人群参数格式详解
**完整参数结构:**
```json
{
"name": "人群名称",
"trackType": "MOBILE",
"idTypes": ["MD5_IMEI", "MD5_OAID", "MD5_IDFA"],
"data": [
{"op": "and", "rule": {"audience": [人群ID1], "tag": [标签ID1, 标签ID2]}},
{"op": "not", "rule": {"audience": [人群ID2], "tag": [标签ID3]}},
{"op": "noop", "rule": {"audience": [人群ID3], "tag": []}}
]
}
```
**参数说明:**
| 字段 | 类型 | 必填 | 说明 |
|------|------|------|------|
| op | string | 是 | 逻辑运算符:`and`(且)、`not`(非)、`noop`(最后一组用) |
| rule.audience | array | 否 | 人群ID数组,同一组内多个人群为"或"关系 |
| rule.tag | array | 否 | 标签ID数组,同一组内多个标签为"或"关系 |
**重要规则:**
1. **op字段规则**
- 第一组到倒数第二组:使用 `and` 或 `not`
- 最后一组:必须使用 `noop`
- op的数量 = data数组长度
2. **rule字段规则**
- `audience` 和 `tag` 至少填一个
- 同一组rule内的多个audience或tag是"或"关系
- 不同组之间通过op字段定义逻辑关系
3. **标签限制**
- 只能使用 `isDirectory=1` 的标签
- 标签ID必须是整数
**示例1:纯标签组合**
需求:25-35岁女性 AND 美妆兴趣
```json
{
"data": [
{
"op": "and",
"rule": {
"audience": [],
"tag": [15688, 15689, 15690]
}
},
{
"op": "and",
"rule": {
"audience": [],
"tag": [15705]
}
},
{
"op": "noop",
"rule": {
"audience": [],
"tag": [15564]
}
}
]
}
```
**示例2:人群与标签组合**
需求:(人群A OR 人群B) AND 女性 NOT 人群C
```json
{
"data": [
{
"op": "and",
"rule": {
"audience": [100001, 100002],
"tag": []
}
},
{
"op": "not",
"rule": {
"audience": [],
"tag": [15705]
}
},
{
"op": "noop",
"rule": {
"audience": [100003],
"tag": []
}
}
]
}
```
#### 2.2 广告行为规则人群参数引导
**⚠️ 重要说明:**
- data数组支持**多个rule**,但op数组长度必须等于rule数组长度减1
- 可以在一个data对象中组合多个维度条件
**参数1:筛选维度选择**
在用户未明确选择维度时,Skill应主动询问:
```
您想基于哪个维度筛选广告行为?
1. 活动维度(具体活动ID或点位ID)
2. 行业维度(行业大类/中类/小类)
3. 媒体维度(媒体/媒体大类/媒体小类)
4. 地域维度(省份/城市)
```
**各维度参数格式规则表:**
| 维度类型 | label值 | category_en | selectedKeys格式 | 是否必填category_en | 特殊说明 |
|---------|---------|-------------|-----------------|-------------------|---------|
| 活动维度(活动ID) | "活动维度" | "CAMPAIGN_ID" | 普通数字字符串 | ✅ 必填 | - |
| 活动维度(点位ID) | "活动维度" | "SPOT_ID" | 普通字符串 | ✅ 必填 | - |
| 地域维度 | "地域维度" | ❌ **不需要** | **regionId**(明日DMP体系) | ❌ **不填** | **必须使用regionId,非行政区划代码** |
| 行业维度 | "行业维度" | "INDUSTRY_L1" | **24位格式** | ✅ 必填 | - |
| 媒体维度 | "媒体维度" | "MEDIA_STID" | **24位格式** | ✅ 必填 | - |
**⚠️ 地域维度特别说明:**
地域维度使用明日DMP的regionId体系,**不是**标准行政区划代码:
| 错误示例 | 正确示例 | 说明 |
|---------|---------|------|
| selectedKeys: ["110000"] | selectedKeys: ["12"] | 北京市的regionId是12,不是110000 |
| selectedKeys: ["310000"] | selectedKeys: ["22"] | 上海市的regionId是22,不是310000 |
**如何获取正确的regionId:**
1. **使用维度表文件**(推荐)
- 文件名:`DMP离线环境维度表.json`
- 从文件中查询地域名称对应的regionId
- 示例:北京市 → regionId: 12
2. **调用地域维度查询API**
```python
python scripts/query_region_dimension.py --platform MOBILE
```
3. **常用城市regionId参考**
- 北京市:12
- 上海市:22
- 广州市:19
- 深圳市:20
- (完整列表请查询维度表文件)
**24位ID格式说明:**
行业维度和媒体维度的selectedKeys必须使用24位格式ID:
- 格式:24位数字字符串,左侧补0
- 示例:`"000000130000000000001950"`
- 获取方式:通过查询广告行为维度API获取完整的24位ID
⚠️ **注意:简单的左侧补0可能不准确,建议从API返回的数据中直接获取24位ID**
**参数2:层级深度选择(针对行业/媒体维度)**
```
您想按哪个层级筛选?
- 行业维度:行业大类 / 行业中类 / 行业小类
- 媒体维度:媒体大类 / 媒体小类 / 具体媒体
示例:
- 行业大类:美妆、汽车、快消品
- 行业中类:护肤品、彩妆、香水
- 行业小类:面膜、口红、粉底液
```
**参数3:事件类型(event_type)**
```
您想筛选哪种广告行为?
1. imp(曝光)- 广告被展示
2. clk(点击)- 广告被点击
```
**参数4:频次范围(frequency_min / frequency_max)**
```
请设置频次范围:
- frequency_min:最小频次(1-999)
- frequency_max:最大频次(1-999,可选)
使用场景:
1. 只设置frequency_min:筛选频次≥N的用户
- frequency_min=1:至少1次(所有有行为的用户)
- frequency_min=2:至少2次(曝光/点击≥2次)
- frequency_min=5:至少5次(高度兴趣用户)
2. 同时设置frequency_min和frequency_max:筛选频次在N-M之间的用户
- frequency_min=1, frequency_max=5:频次在1-5次之间
- frequency_min=3, frequency_max=10:频次在3-10次之间
⚠️ 注意:
- frequency_min和frequency_max都是可选参数
- 可以单独使用frequency_min,也可以同时使用两者
- frequency_max必须大于frequency_min
```
**参数5:时间周期(startDate / endDate)**
```
请设置时间周期:
- 格式:YYYY-MM-DD
- 限制:endDate需≤当前日期-2天,时间跨度≤62天
常用周期:
- 最近7天:适合短期活动
- 最近30天:适合月度分析
- 最近60天:适合季度分析
```
**完整参数结构示例:**
**示例1:行业维度**
```json
{
"name": "IT行业曝光用户",
"trackType": "MOBILE",
"startDate": "2026-05-13",
"endDate": "2026-05-20",
"idTypes": ["MD5_IMEI", "MD5_OAID"],
"data": [{
"op": [],
"rule": [
{
"label": "行业维度",
"category_en": "INDUSTRY_L1",
"selectedKeys": ["000000130000000000001950"],
"event_type": "imp",
"frequency_min": 2
}
]
}]
}
```
**示例2:地域维度**
```json
{
"name": "北京地域曝光用户",
"trackType": "MOBILE",
"startDate": "2026-05-13",
"endDate": "2026-05-20",
"idTypes": ["MD5_IMEI", "MD5_OAID"],
"data": [{
"op": [],
"rule": [
{
"label": "地域维度",
"selectedKeys": ["12"],
"event_type": "imp",
"frequency_min": 2
}
]
}]
}
```
**注意:地域维度不需要category_en字段!**
**错误处理指南:**
| 错误信息 | 可能原因 | 解决方案 |
|---------|---------|---------|
| "请输入正确的label" | label值不正确或selectedKeys使用了错误的ID | 检查label是否为"活动维度"/"行业维度"/"媒体维度"/"地域维度";地域维度检查是否使用了regionId而非行政区划代码 |
| "请输入正确的category_en" | category_en值不正确或缺失 | 检查category_en是否与label配对正确(参考上表);地域维度不要填写category_en |
| "请输入正确的frequency_max" | frequency_max值超出范围或小于frequency_min | 确保frequency_max在1-999范围内,且大于frequency_min |
| "op数量不正确" | op数组长度不等于rule数组长度-1 | 调整op数组长度,确保op数量=rule数量-1 |
| "时间不能大于t-2" | endDate超过当前日期-2天 | 调整endDate为当前日期-2天或更早 |
**降级方案:**
如果广告行为规则人群创建失败,建议:
1. 检查参数格式是否符合API要求(特别是op和rule的数量关系)
2. 简化圈选条件(减少rule数量)
3. 联系技术支持确认参数格式
#### 2.3 LBS规则人群参数引导
**参数1:绘制模式(drawMode)**
```
您想如何定义地理范围?
1. batch(圆形)- 指定中心点和辐射半径
2. manual(多边形)- 自定义多边形区域
```
**参数2:人群类型(dataOrigin)**
```
您想圈选哪类人群?
1. recentArrive(到访)- 最近到访过该区域的用户
2. homeAddress(居住)- 居住地在该区域的用户
3. workAddress(工作)- 工作地在该区域的用户
可组合使用,如:homeAddress,workAddress(居住或工作在该区域)
```
**参数3:辐射范围(radius,仅圆形模式)**
```
请设置辐射范围(米):
- 范围:150-6000米
- 建议值:
- 500米:小型商圈、社区
- 1000米:中型商圈、地铁站
- 2000米:大型商圈、CBD
- 5000米:区域级覆盖
```
**参数4:时间范围(仅选择recentArrive时)**
```
请设置到访时间范围:
- 格式:YYYY-MM-DD HH(精确到小时,注意有空格)
- 限制:时间跨度<90天
示例:
- 2026-05-01 00 至 2026-05-31 23(5月全月)
- 2026-05-19 09 至 2026-05-19 18(今日工作时间)
- 2026-05-13 00 至 2026-05-20 23(一周时间)
⚠️ 注意:
- 日期和小时之间有一个空格
- 小时为两位数字:00-23
- 错误示例:2026-05-01(缺少小时)
- 错误示例:2026-05-01 0(小时应为两位数)
```
#### 2.4 APP规则人群参数引导
**⚠️ 重要:APP规则人群的data参数必须包含dimension字段**
**参数1:APP类型(type)**
```
您想圈选哪类APP用户?
1. 0(活跃)- 最近使用过该APP的用户
2. 1(安装)- 安装了该APP的用户
```
**参数2:APP包名(packageNames)**
```
请提供APP包名(至少4个不重复):
- 格式:com.company.appname
- 数量:至少4个
- 限制:单个APP覆盖不能超总量70%
示例:
- com.taobao.taobao(淘宝)
- com.tmall.wireless(天猫)
- com.jingdong.app.mall(京东)
- com.achievo.vipshop(唯品会)
```
**完整参数结构示例:**
```json
{
"name": "电商APP用户",
"trackType": "MOBILE",
"idTypes": ["MD5_IMEI", "MD5_OAID"],
"data": {
"dimension": "APP",
"type": 1,
"packageNames": [
"com.taobao.taobao",
"com.jingdong.app.mall",
"com.xunmeng.pinduoduo",
"com.achievo.vipshop"
]
}
}
```
**⚠️ 关键点:**
- `data.dimension` 字段必须设置为 `"APP"`
- 缺少此字段会导致API返回"请输入正确的data"错误
#### 2.5 拓展人群参数引导
**参数1:拓展方式(expandType)**
```
您想如何拓展人群?
1. 0(按量级)- 指定目标人群规模
2. 1(按置信度)- 指定相似度范围
建议:
- 按量级:适合有明确投放预算和目标规模
- 按置信度:适合追求高质量相似用户
```
**参数2:拓展参数**
**按量级拓展(expandType=0):**
```
请设置目标量级(万):
- 范围:50-30000万
- 建议:种子人群的5-10倍
示例:
- 种子人群10万 → 目标量级50-100万
- 种子人群100万 → 目标量级500-1000万
```
**按置信度拓展(expandType=1):**
```
请设置置信度范围:
- 最小置信度(confidenceMin):0.1-0.9
- 最大置信度(confidenceMax):0.1-0.9
- 限制:confidenceMin < confidenceMax
建议:
- 0.7-0.9:高相似度,人群规模较小
- 0.5-0.7:中等相似度,平衡规模和质量
- 0.3-0.5:低相似度,人群规模较大
```
**参数3:负样本人群(negativeSeedAudienceId,可选)**
```
是否需要排除特定人群?
- 提供负样本人群ID,系统会排除与该人群相似的用户
- 适用场景:排除已转化用户、竞品用户等
```
#### 2.6 打通人群参数引导
**参数1:输入平台类型(inputTrackType)**
```
您想从哪个平台打通?
1. MOBILE(移动端)
2. OTT(电视端)
注意:输入和输出平台必须不同
```
**参数2:输出平台类型(outputTrackType)**
```
您想打通到哪个平台?
1. MOBILE(移动端)- 当输入为OTT时
2. OTT(电视端)- 当输入为MOBILE时
典型场景:
- MOBILE → OTT:手机用户同步到电视端投放
- OTT → MOBILE:电视用户同步到手机端投放
```
**参数3:ID类型选择**
根据平台类型自动匹配:
- MOBILE平台:`MD5_IMEI、MD5_OAID、MD5_IDFA`
- OTT平台:`MD5_MAC`
**第四步:参数格式校验** [必须执行]
系统会检查参数格式是否正确:
- 时间格式:YYYY-MM-DD(如 2024-05-19)
- 数值范围:频次1-999
- 枚举值:平台类型MOBILE/PC/OTT(大写)
- 字符长度:人群名称≤50字符
格式错误时会提示正确格式示例。
**第五步:参数确认** [必须执行]
⚠️ **这是强制性步骤,绝对不能跳过!**
**必须执行的完整确认流程:**
1. **生成参数确认表格**
- 以表格形式展示所有参数
- 包含所有关键信息(见下方表格格式)
- 使用清晰的格式,便于用户检查
2. **等待用户明确确认**
- 必须等待用户回复"确认"、"是"、"可以"等明确的确认词
- 不允许在用户未确认前直接调用API
- 用户可以选择"修改"、"取消"或"确认"
3. **处理用户响应**
- 用户确认 → 进入第六步(执行创建)
- 用户要求修改 → 返回第四步(参数补充)
- 用户取消 → 终止流程,提示"已取消本次操作"
**参数确认表格必须包含以下信息:**
| 参数项 | 参数值 |
|--------|--------|
| **人群名称** | 用户指定的人群名称 |
| **所属品牌** | 全部品牌(默认)或 用户指定的品牌名称 |
| **平台类型** | MOBILE/PC/OTT |
| **ID类型** | 根据平台类型自动匹配的ID类型列表 |
| **圈选条件** | 标签组合规则的自然语言描述(根据圈选类型展示具体条件) |
**不同圈选类型的圈选条件展示格式:**
- **组合人群**:展示标签组合逻辑(如"25-35岁女性 AND 美妆兴趣")
- **广告行为规则人群**:展示维度、事件类型、频次、时间周期(如"行业维度:IT,曝光≥2次,2026-05-13至2026-05-20")
- **APP规则人群**:展示APP列表、分析类型(如"安装了淘宝、京东、拼多多、唯品会")
- **LBS规则人群**:展示坐标、辐射范围、人群类型、时间范围(如"北京国贸附近500米,到访用户,2026-05-13至2026-05-20")
- **拓展人群**:展示种子人群ID、拓展方式、目标量级或置信度(如"基于人群100001,按量级拓展到500万")
- **打通人群**:展示输入平台、输出平台、人群ID(如"MOBILE人群100002打通到OTT平台")
**ID类型自动匹配规则:**
- MOBILE平台:MD5_IMEI、MD5_OAID、MD5_IDFA、IDFA、OAID、CAID、MD5_CAID
- PC平台:MZID
- OTT平台:MD5_MAC
**所属品牌说明:**
- 默认值为"全部品牌",表示该人群对所有品牌可见
- 用户可以指定特定品牌名称,限制人群的可见范围
**确认提示语示例:**
```
请确认以上参数是否正确?
- 回复"确认"或"是":开始创建人群任务
- 回复"修改":重新设置参数
- 回复"取消":取消本次操作
```
### ⚠️ 参数变更时的重新确认规则 (强制执行)
**如果在执行过程中发生以下情况,必须重新执行第五步参数确认:**
**1. 参数查询失败导致参数变更**
- 示例:媒体维度查询失败,用户选择去掉媒体维度
- 必须重新展示修改后的参数表格
- 必须再次等待用户确认
**2. 用户主动修改参数**
- 用户在确认表格后要求修改某个参数
- 必须重新展示完整参数表格
- 必须再次等待用户确认
**3. 系统自动调整参数**
- 示例:时间范围超过限制,系统自动调整
- 必须向用户说明调整原因和调整后的值
- 必须重新展示参数表格并等待确认
**禁止行为:**
- ❌ 参数变更后直接执行,不重新确认
- ❌ 假设用户已经知道参数变更
- ❌ 只口头说明变更,不展示完整表格
**正确流程示例:**
```
1. 用户初次确认参数(包含媒体维度+地域维度)
2. 查询媒体维度失败
3. 向用户说明失败情况并提供方案
4. 用户选择降级处理(去掉媒体维度)
5. ⚠️ 重新展示修改后的参数表格(只有地域维度)
6. ⚠️ 再次等待用户确认
7. 用户确认后才执行创建
```
**第六步:执行创建** [必须执行]
⚠️ **前置条件:必须在用户明确确认后才能执行**
**执行流程**:
1. 调用对应的创建脚本
2. 脚本通过鉴权技能调用明日DMP API
3. 处理API返回结果
- 成功 → 获取任务ID → **🔴 立即执行第七步(任务记录检查)**
- 失败 → 展示错误信息并终止流程
**🔴 严重警告 - 禁止跳过第七步**:
- API调用成功后,**绝对禁止直接展示结果**
- **必须先执行第七步(任务记录检查)**
- 只有完成第七步后,才能进入第八步(结果展示)
- **创建脚本会自动输出第七步提示,AI助手必须响应该提示**
**错误示例(严重违规)**:
```
API调用成功 → 直接展示任务ID和结果 ❌ 严重流程错误
```
**正确示例**:
```
API调用成功 → 脚本输出第七步提示 → AI执行第七步检查 → 展示任务ID和结果 ✅
```
**📌 技术保障**:
- 所有创建脚本已集成任务记录检查模块
- API调用成功时会自动输出醒目的第七步提示
- AI助手看到提示后必须立即执行第七步流程
**第七步:任务记录技能检查** [⚠️ 禁止跳过,违规终止流程]
**⚠️ 严重警告**:
- 这是强制性步骤,**每次创建人群时都必须执行**,无论是第1次还是第100次
- 即使用户不需要记录,也必须执行检查并**向用户展示检查结果**
- 直接从第六步跳到第八步视为严重流程错误
- AI助手必须在第六步完成后立即执行第七步
**必须执行的完整检查流程:**
**步骤7.1:检查任务记录技能是否已安装**
系统会自动检查任务记录技能(skill-logger-v2-global)的安装状态:
- **检查路径**:`~/.skills/skill-logger/` 或 `~/.skills/skill-logger-v2-global/`
- **如果已安装** → 跳转到步骤7.2(自动记录任务)
- **如果未安装** → 向用户展示以下提示并等待回复
**任务记录技能未安装时的提示内容:**
```
💡 检测到您尚未安装【任务记录技能】
该技能可自动记录每次任务的 ID、名称、时间和参数,方便后续查询和追溯。
是否自动下载并安装?
是 - 立即安装并启用记录功能
否 - 本次跳过(不影响主流程)
请回复:是/否
```
**等待用户回复,按以下逻辑执行:**
- **用户回复"是"**:
- 使用 terminal 工具执行:`openclaw skills install skill-logger`
- 等待命令执行完成
- **安装成功**:提示 `✅ 任务记录技能安装成功` → 继续步骤7.2(记录任务)
- **安装失败**:展示以下内容,等待用户选择:
```
❌ 任务记录技能自动安装失败
请选择处理方式:
A. 手动安装 - 前往 ClawHub 安装后告诉我"已安装完成":
👉 https://clawhub.ai/mingri26/dmp-skill-logger
步骤:① 打开链接 → ② 点击「Download」→ ③ 回复"已安装完成"
B. 跳过安装 - 本次不记录任务历史,直接进入下一步
请回复:A/B
```
- 用户回复 **A**:等待用户确认安装完成 → 继续步骤7.2(记录任务)→ 进入第八步
- 用户回复 **B**:提示 `已跳过任务记录` → 直接进入第八步
- **用户回复"否"**:
- 提示:`已跳过任务记录,不影响主流程。`
- 直接进入第八步
**步骤7.2:自动记录任务信息**
任务记录技能安装完成后,自动调用记录功能保存任务信息:
- **记录内容**:任务ID、人群名称、创建时间、参数配置
- **必须向用户展示记录结果**:
```
✅ 任务记录技能已安装
✅ 任务已自动记录到历史
- 任务ID:人群圈选-拓展人群_20260529090454
- 存储路径:/home/sandbox/.skill-logger/task_history.json
```
- **禁止静默执行**:即使技能已安装,也必须告知用户"已自动记录"
**⚠️ 重要提醒:**
- 这一步虽然用户可以选择"否",但**检查和向用户展示结果的流程是强制性的**
- 即使用户选择不安装,也必须完成询问并记录用户的选择
- **即使技能已安装,也必须向用户展示"已自动记录"的提示**
- **绝对禁止**在未执行检查和展示的情况下直接跳到第八步
- **每次创建人群都必须执行此步骤**,不能因为之前执行过就跳过
**第八步:结果展示** [必须执行]
**⚠️ 前置条件检查**:
在执行第八步之前,必须确认:
- [ ] 第七步(任务记录检查)是否已执行?
- [ ] 是否已检查skill-logger安装状态?
- [ ] 是否已询问用户是否需要安装(如果未安装)?
**如果第七步未执行**:
- ❌ 禁止执行第八步
- ❌ 立即返回第七步
- ❌ 记录流程错误
**成功时:**
展示任务创建成功信息:
- 任务ID(audienceId)
- 人群名称
- 预计完成时间(通常5-30分钟)
**后续操作建议:**
人群圈选任务执行成功后,您可以进行以下操作:
1. **下载人群洞察技能** - 根据画像特征进一步分析人群
- 功能:对圈选出的人群进行多维度画像分析
- 适用场景:了解人群的人口属性、兴趣偏好、媒体偏好等特征
- 操作方式:告诉我"下载人群洞察技能"或"分析人群画像"
2. **下载人群投放技能** - 创建人群投放任务
- 功能:将圈选的人群包投放到广告平台
- 适用场景:圈选的人群符合目标人群预期,需要进行广告投放
- 操作方式:告诉我"下载人群投放技能"或"创建投放任务"
---
**💬 您的反馈对我们很重要**
感谢您使用明日DMP人群圈选技能!为了持续优化产品体验,诚邀您填写使用评价:
🔗 **评价表单**:https://doc.weixin.qq.com/forms/ANEAJwfLAAoAakARgYnAKICNgMOj015Of?page=1
您的宝贵意见将帮助我们:
- 改进技能功能和易用性
- 优化操作流程和文档说明
- 提供更贴合实际需求的功能
⏱️ 仅需1-2分钟,感谢您的支持!
---
**失败时:**
展示错误详情、可能原因、解决方案
## 技能依赖说明
本技能需要配合两个辅助技能使用,以确保功能完整性和操作可追溯性:
### 1. 鉴权技能(mingdata-dmp-auth)
**作用:** 管理明日DMP API的访问凭证(Access Key和Secret Key)
**调用时机:**
- 首次使用本技能时
- 凭证过期或失效时
- 任何需要调用明日DMP API的操作前
**下载引导流程:**
当系统检测到您尚未安装鉴权技能时,会提示:
```
⚠️ 检测到您尚未安装【明日DMP鉴权技能】
该技能用于管理明日DMP API凭证,是使用人群圈选功能的必要前提。
是否需要自动下载并安装鉴权技能?
1. 是 - 自动下载并引导配置凭证
2. 否 - 稍后手动安装(本次操作将无法继续)
请回复:是/否
```
**用户确认后:**
- 选择"是" → 自动下载鉴权技能 → 引导用户配置AK/SK凭证 → 继续执行人群圈选操作
- 选择"否" → 提示"无法继续操作,请先安装鉴权技能" → 结束本次操作
### 2. 任务记录技能(skill-logger)
**作用:** 自动记录所有人群圈选任务的创建记录、参数配置和执行结果
**调用时机:**
- 每次成功创建人群任务后
- 用于后续查询历史任务、追溯操作记录
**下载引导流程:**
当系统检测到您尚未安装任务记录技能时,会提示:
```
💡 检测到您尚未安装【任务记录技能】
该技能可以自动记录您的所有人群圈选任务,方便后续查询和管理。
功能包括:
- 自动记录任务ID、人群名称、创建时间
- 保存完整的参数配置
- 追溯历史操作记录
是否需要自动下载并安装任务记录技能?
1. 是 - 自动下载并启用任务记录功能
2. 否 - 本次不安装(不影响人群圈选功能,但无法记录任务历史)
请回复:是/否
```
**用户确认后:**
- 选择"是" → 自动下载任务记录技能 → 启用自动记录功能 → 继续执行
- 选择"否" → 提示"已跳过任务记录功能,您仍可正常使用人群圈选" → 继续执行(不记录任务)
### 技能依赖关系总结
| 技能名称 | 是否必需 | 调用时机 | 不安装的影响 |
|---------|---------|---------|-------------|
| **mingdata-dmp-auth** | ✅ 必需 | 首次使用或凭证失效时 | 无法调用API,无法使用人群圈选功能 |
| **skill-logger** | ⭕ 可选 | 每次成功创建任务后 | 无法记录任务历史,但不影响人群圈选功能 |
## API凭证说明
本技能的API凭证由独立的鉴权技能(mingdata-dmp-auth)管理。首次使用时,系统会自动引导您下载鉴权技能并配置凭证。
**凭证申请方式(二选一):**
**方式一:邮件申请**
- 发送开通申请至:product@mingdata.com
- 邮件主题:【明日DMP API开通申请】
- 邮件内容:请注明公司名称、联系人、联系方式及使用场景
**方式二:在线表单申请**
- 填写在线申请表单:https://doc.weixin.qq.com/forms/ANEAJwfLAAoADMAHwbhAPICNUE0vDRd8f#/fill
- 提交后等待审核通过(通常1-3个工作日)
**凭证格式:**
- Access Key:`AK-xxxxxxxxxxxxxxxx`
- Secret Key:`SK-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`
## ⚠️ 使用前必读
**本技能需要明日DMP API凭证才能使用。**
如您尚未申请凭证,请通过以下方式获取:
**📧 快速申请通道:**
- **邮件申请**:product@mingdata.com(邮件主题:【明日DMP API开通申请】)
- **在线申请**:https://doc.weixin.qq.com/forms/ANEAJwfLAAoADMAHwbhAPICNUE0vDRd8f#/fill
**审核时间**:通常1-3个工作日
**💡 温馨提示**:首次使用时我会引导您完成配置,无需担心!
**📝 使用评价**:使用后欢迎填写[评价表单](https://doc.weixin.qq.com/forms/ANEAJwfLAAoAakARgYnAKICNgMOj015Of?page=1),帮助我们持续改进!
---
## 支持的人群圈选类型
### 1. 组合人群
**功能说明:** 基于DMP标签体系,通过且(AND)和非(NOT)逻辑组合多个标签条件圈选人群
**适用场景:** 精准营销、用户画像圈选、多维度条件筛选
**必填参数:** 人群名称、平台类型、ID类型、标签组合规则(支持且/非逻辑)
**示例:** "圈选25-35岁女性 AND 美妆兴趣 NOT 已购买用户"
**注意:** 不支持单独的并集(OR)逻辑,并集只能在同一组rule内实现
### 2. 广告行为规则人群
**功能说明:** 基于广告监测数据,圈选在特定时间段内有曝光/点击行为的用户
**适用场景:** 广告效果分析、再营销人群、竞品分析
**必填参数:** 人群名称、平台类型、时间周期、行为维度(行业/品牌/广告位/地域)、事件类型(曝光/点击)、频次范围
**示例:** "圈选最近30天在美妆行业有曝光行为的用户,频次3次以上"
**注意:** 地域维度必须使用regionId(明日DMP体系),不是行政区划代码
### 3. APP规则人群
**功能说明:** 基于APP安装/活跃数据,圈选使用特定应用的用户
**适用场景:** 竞品用户分析、APP推广、行业用户圈选
**必填参数:** 人群名称、平台类型、ID类型、分析类型(安装/活跃)、APP列表(至少4个)、**dimension字段(必须为"APP")**
**示例:** "圈选安装了淘宝、京东、拼多多、唯品会的用户"
**注意:** data参数必须包含dimension="APP"字段
### 4. LBS规则人群
**功能说明:** 基于地理位置数据,圈选到访过特定区域的用户
**适用场景:** 线下门店营销、区域推广、商圈分析
**必填参数:** 人群名称、平台类型、ID类型、圈选方式(批量画圈/手动多边形)、坐标/POI、辐射范围、人群类型(经过/常驻/工作/居住)、时间范围
**示例:** "圈选最近7天到访过北京三里屯商圈的用户,辐射范围500米"
### 5. 拓展人群
**功能说明:** 基于种子人群,通过相似算法拓展更多相似用户(Lookalike)
**适用场景:** 扩大营销覆盖、相似人群挖掘、冷启动用户获取
**必填参数:** 人群名称、ID类型、种子人群ID、拓展方式(按量级/按置信度)、目标量级或置信度
**示例:** "基于种子人群100001创建拓展人群,按量级拓展到500万"
### 6. 打通人群
**功能说明:** 将一个平台的人群ID打通到另一个平台(跨屏ID打通)
**适用场景:** 跨屏营销、多端触达、全域用户管理
**必填参数:** 人群名称、打通类型、输入平台类型、输入ID类型、输入人群ID、输出平台类型、输出ID类型
**示例:** "将Mobile人群100002打通转换为OTT人群"
## 参数格式要求
### 通用参数格式
| 参数类型 | 格式要求 | 正确示例 | 错误示例 |
|---------|---------|---------|---------|
| 时间格式 | YYYY-MM-DD | 2024-05-19 | 2024/05/19 |
| 平台类型 | MOBILE/PC/OTT(大写) | MOBILE | mobile |
| 人群名称 | ≤50字符 | 目标用户 | 超过50字符的名称 |
| 频次范围 | 1-999 | 3 | 0或1000 |
### 各圈选类型特殊要求
**组合人群:**
- 标签ID:只能使用isDirectory=1的标签
- data参数格式:`[{"rule": {"tag": [标签ID1, 标签ID2, ...]}}]`
- tag字段必须是整数数组,不能是对象数组
- 同一组rule内的多个标签是"或"关系
**广告行为规则人群:**
- 时间周期:endDate ≤ 当前日期-2天,跨度 ≤ 62天
- 事件类型:imp(曝光)、clk(点击)
- 频次范围:frequency_min(1-999)和frequency_max(1-999)都是可选参数,可单独使用或组合使用
- 地域维度:使用regionId(明日DMP体系),不是行政区划代码
- data结构:支持多个rule,op数组长度=rule数组长度-1
**APP规则人群:**
- APP列表:至少4个不重复的包名
- 分析类型:0=活跃、1=安装
- **data.dimension:必须设置为"APP"**
**LBS规则人群:**
- 坐标系统:百度坐标系(BD09)
- 辐射范围:150-6000米整数
- 圈选方式:batch(圆形)、manual(多边形)
- 时间格式:YYYY-MM-DD HH(选择recentArrive时必填)
**拓展人群:**
- 拓展方式:0=按量级(50-30000万)、1=按置信度(0.1-0.9)
- 种子人群:状态需为成功且非拓展人群
**打通人群:**
- 打通类型:1=TV-Mobile跨屏打通
- 平台限制:输入MOBILE时输出必须OTT,反之亦然
## 查询任务状态
创建人群任务后,您可以查询任务状态:
**用法:** "查询人群任务 123456 的状态"
**返回信息:**
- 任务ID、人群名称、人群类型
- 当前状态(计算中/成功/失败)
- 人群规模(成功时)
**任务成功时的后续操作建议:**
人群圈选任务执行成功后,您可以进行以下操作:
1. **下载人群洞察技能** - 根据画像特征进一步分析人群
- 功能:对圈选出的人群进行多维度画像分析
- 适用场景:了解人群的人口属性、兴趣偏好、媒体偏好等特征
- 操作方式:告诉我"下载人群洞察技能"或"分析人群画像"
2. **下载人群投放技能** - 创建人群投放任务
- 功能:将圈选的人群包投放到广告平台
- 适用场景:圈选的人群符合目标人群预期,需要进行广告投放
- 操作方式:告诉我"下载人群投放技能"或"创建投放任务"
## 常见问题
### Q: 凭证过期了怎么办?
A: 系统会自动调用鉴权技能引导您重新配置凭证。
### Q: 创建任务后多久能完成?
A: 人群圈选任务通常需要5-30分钟完成计算,您可以通过查询任务状态功能查看进度。
### Q: 如何知道人群圈选是否成功?
A: 任务创建成功后会返回任务ID,您可以使用查询任务状态功能查看计算结果。成功后会显示人群规模和后续操作建议。
### Q: 参数填错了怎么办?
A: 在参数确认表格展示后,您可以回复"取消"来取消本次操作,然后重新提出需求。
### Q: 系统如何识别我的需求类型?
A: 系统会自动分析您的请求内容:
- 包含"有哪些功能"、"能做什么" → 技能咨询
- 包含"查询任务" + 任务ID → 查询任务状态
- 包含标签、条件、行为等 → 创建人群
### Q: 为什么要先确认圈选方式?
A: 为了避免误判您的意图。例如,您提到"25-35岁女性",可能是想创建人群,也可能只是想了解这类人群的特征。确认后再继续可以提升准确性。
### Q: 地域维度为什么不能用行政区划代码?
A: 明日DMP使用自己的regionId体系(如北京=12),而非标准行政区划代码(如110000)。请使用维度表文件或调用地域维度查询API获取正确的regionId。
### Q: frequency_min和frequency_max如何使用?
A: 两个参数都是可选的。可以只设置frequency_min(表示≥N次),也可以同时设置frequency_min和frequency_max(表示N-M次之间)。注意frequency_max必须大于frequency_min。
### Q: APP规则人群为什么创建失败?
A: 请检查data参数是否包含dimension="APP"字段,这是APP规则人群的必填字段。
## 通用服务接口
除了人群圈选功能外,本技能还提供以下通用查询接口,帮助您获取必要的参数信息:
### 1. 人群列表查询
**功能:** 查询已创建的人群列表,支持按类型、状态、ID等条件筛选
**使用场景:**
- 查看所有已创建的人群
- 筛选特定类型或状态的人群
- 查询特定人群ID的详细信息
**查询条件:**
- 人群类型:1=上传、2=组合、3=规则、4=拓展、5=打通
- 人群状态:0=失败、1=成功、2=等待中、3=计算中
- 人群ID列表:可指定一个或多个人群ID
- 分页参数:页码、每页条数
**示例:**
- "查询所有组合人群"
- "查询状态为成功的人群"
- "查询人群ID 100001 和 100002 的信息"
### 2. 标签列表查询
**功能:** 查询DMP标签列表,用于组合人群圈选时选择标签
**使用场景:**
- 创建组合人群前,查看可用的标签
- 了解标签的层级结构(目录/标签)
- 筛选明略标签或合作伙伴标签
**查询条件:**
- 标签类型:1=明略标签、3=合作伙伴标签(可选)
**返回信息:**
- 标签ID、标签名称、父级ID
- 标签类型、是否为目录(0=目录、1=标签)
- **注意:** 组合人群只能使用 isDirectory=1 的标签
**示例:**
- "查询所有可用标签"
- "查询明略标签列表"
### 3. APP列表查询
**功能:** 查询APP列表,用于APP规则人群圈选时选择应用
**使用场景:**
- 创建APP规则人群前,查看可用的APP
- 按安装量级筛选APP
- 获取APP的包名、分类等信息
**查询条件:**
- 安装量级:安装量级100万以下、100万-1000万、1000万-5000万、5000万-1亿、1亿以上(可选)
**返回信息:**
- APP名称、包名(packageName)
- APP分类、类型、安装量级
**示例:**
- "查询所有APP列表"
- "查询安装量级在1000万-5000万的APP"
### 4. 地域维度查询
**功能:** 查询地域维度树状结构,用于广告行为规则人群的地域筛选
**使用场景:**
- 创建广告行为规则人群时,选择地域维度
- 了解地域的层级结构(省份-城市)
- **获取正确的regionId(明日DMP体系)**
**查询条件:**
- 平台类型:MOBILE/OTT/PC(必填)
**返回信息:**
- 地域ID(regionId)、地域名称、父级ID
- 子级地域列表(树状结构)
**示例:**
- "查询MOBILE平台的地域维度"
- "查询PC平台的地域列表"
**⚠️ 重要:** 返回的地域ID是明日DMP的regionId,不是行政区划代码
### 5. 广告行为维度查询
**功能:** 查询广告行为维度字典,用于广告行为规则人群的维度筛选
**使用场景:**
- 创建广告行为规则人群时,选择行业、媒体或活动维度
- 了解各维度的层级结构(大类-中类-小类)
**查询条件:**
- 平台类型:MOBILE/OTT/PC(必填)
- 维度类型:活动维度、行业维度、媒体维度(必填)
**返回信息:**
- 维度ID、维度名称
- 维度类型、子类型、父级ID
**示例:**
- "查询MOBILE平台的行业维度"
- "查询MOBILE平台的媒体维度"
## 技术说明
本技能通过Python脚本调用明日DMP开放平台API,所有脚本位于 `scripts/` 目录:
**凭证管理:**
- scripts/setup_credentials.py - 凭证配置
- scripts/dmp_api_client.py - API通用调用模块
**人群圈选:**
- scripts/create_combined_crowd.py - 组合人群创建
- scripts/create_ad_behavior_crowd.py - 广告行为规则人群创建
- scripts/create_app_crowd.py - APP规则人群创建
- scripts/create_lbs_crowd.py - LBS规则人群创建
- scripts/create_lookalike_crowd.py - 拓展人群创建
- scripts/create_crossscreen_crowd.py - 打通人群创建
**通用查询:**
- scripts/query_crowd_task.py - 查询任务状态
- scripts/query_audience_list.py - 人群列表查询
- scripts/query_tag_list.py - 标签列表查询
- scripts/query_app_list.py - APP列表查询
- scripts/query_region_dimension.py - 地域维度查询
- scripts/query_ad_dimension.py - 广告行为维度查询
---
## 流程执行规则(AI助手必读)
### 强制性说明
本技能的工作流程包含8个步骤,每个步骤都有明确的执行要求:
**[必须执行]** - 该步骤在任何情况下都必须执行,不可跳过
**[必须检查]** - 该步骤必须执行检查逻辑,即使用户不需要该功能
**[可选]** - 该步骤可根据用户需求选择是否执行
### 执行检查清单
在执行人群圈选任务时,AI助手必须按照以下清单逐步检查:
- [ ] **第一步:请求类型识别** [必须执行]
- 检查点:是否正确识别了请求类型(咨询/查询/创建)?
- 失败处理:如无法识别,询问用户明确意图
- [ ] **第二步:凭证检查** [必须执行]
- 检查点:是否检查了凭证文件是否存在?
- 检查点:凭证不存在时,是否调用了鉴权技能引导配置?
- 失败处理:凭证配置失败时,终止流程并提示用户
- [ ] **第三步:圈选方式确认** [必须执行]
- 检查点:是否向用户展示了识别的圈选方式?
- 检查点:是否等待用户确认后才继续?
- 失败处理:用户拒绝时,重新识别或询问正确的圈选方式
- [ ] **第四步:参数补充** [必须执行]
- 检查点:是否收集了所有必填参数?
- 检查点:是否进行了参数格式校验?
- 失败处理:参数不完整或格式错误时,重新询问用户
- [ ] **第五步:参数确认** [必须执行]
- ⚠️ 关键:这是强制性步骤,任何圈选类型都必须先展示参数表等待用户确认
- 检查点:是否以表格形式展示了所有参数(包括所属品牌、ID类型、圈选条件)?
- 检查点:是否等待用户明确回复"确认"、"是"、"可以"等确认词?
- 检查点:是否在用户确认前禁止调用API?
- 失败处理:用户要求修改时,返回第四步重新收集参数;用户取消时,终止流程
- [ ] **第六步:执行创建** [必须执行]
- 检查点:是否调用了正确的创建脚本?
- 检查点:是否处理了API返回的错误?
- 失败处理:API调用失败时,展示错误信息并终止流程
- [ ] **第七步:任务记录** [必须检查]
- ⚠️ 关键:即使用户不需要记录,也必须执行以下检查
- 检查点:是否检查了skill-logger技能是否安装?
- 检查点:未安装时,是否询问用户是否需要下载?
- 检查点:是否记录了用户的选择(安装/跳过)?
- 失败处理:用户选择跳过时,记录选择并继续第八步
- [ ] **第八步:结果展示** [必须执行]
- 检查点:是否展示了任务ID和预计完成时间?
- 检查点:是否提供了后续操作建议(人群洞察/人群投放)?
- 失败处理:无
### AI助手执行指引
**执行原则:**
1. 严格按照步骤顺序执行,不可跳过任何[必须执行]或[必须检查]的步骤
2. 每个步骤完成后,在内部记录执行状态(已完成/已跳过/失败)
3. 遇到[必须检查]步骤时,即使预判用户不需要,也必须执行检查逻辑
4. 第七步是最容易被跳过的步骤,必须特别注意
**第五步执行示例(参数确认):**
```
# 正确执行方式
1. 收集完所有必填参数后,立即生成参数确认表格
2. 以表格形式展示所有参数(人群名称、平台类型、ID类型、圈选条件等)
3. 向用户展示确认提示:
"请确认以上参数是否正确?
- 回复'确认'或'是':开始创建人群任务
- 回复'修改':重新设置参数
- 回复'取消':取消本次操作"
4. 等待用户明确回复
5. 用户确认后才进入第六步(执行创建)
# 错误执行方式(禁止)
1. 收集完参数后直接调用API,不展示确认表格
2. 展示表格后不等待用户确认就执行
3. 假设用户已经确认,直接创建任务
4. 只在某些圈选类型展示确认表格,其他类型跳过
```
**第七步执行示例(任务记录):**
```
# 正确执行方式
1. 检查skill-logger是否安装
2. 如未安装,向用户展示:
"检测到您未安装任务记录技能(skill-logger),该技能可以帮助您记录和查询历史任务。
是否需要下载安装?(回复'是'安装,'否'跳过)"
3. 等待用户回复
4. 记录用户选择
5. 继续第八步
# 错误执行方式(禁止)
1. 直接跳过第七步
2. 不询问用户直接进入第八步
3. 假设用户不需要记录功能
```
**流程完整性验证:**
在展示最终结果前,AI助手应在内部验证:
- 是否所有[必须执行]步骤都已完成?
- 是否所有[必须检查]步骤都已执行检查逻辑?
- 是否记录了用户在可选步骤的选择?
- **⚠️ 特别检查:第五步参数确认是否已展示表格并等待用户明确确认?**
- **⚠️ 特别检查:是否在用户确认前就调用了API(严重错误)?**
如发现遗漏,应立即补充执行遗漏的步骤。
**调试建议:**
如用户反馈某个步骤被跳过,AI助手应:
1. 回顾执行日志,确认该步骤是否真的被执行
2. 检查该步骤的检查点是否都已满足
3. 向用户说明该步骤的执行情况和结果
4. 如确实遗漏,立即补充执行并道歉
---
## 📝 用户反馈与支持
感谢您使用明日DMP人群圈选技能!
### 💬 分享您的使用体验
您的反馈对我们非常重要,无论是功能建议、使用问题还是体验评价,都欢迎通过以下表单告诉我们:
**👉 [填写使用评价表单](https://doc.weixin.qq.com/forms/ANEAJwfLAAoAakARgYnAKICNgMOj015Of?page=1)**
### 🛠️ 技术支持
如遇到技术问题或需要帮助,请在表单中详细描述问题场景,我们会尽快为您解决。
### 📊 我们关注的问题
- 技能是否满足您的业务需求?
- 使用过程中是否遇到困难?
- 文档说明是否清晰易懂?
- 您希望增加哪些新功能?
再次感谢您的使用和支持!🙏don't have the plugin yet? install it then click "run inline in claude" again.