A

AMiner 学术数据查询与分析

作者:鹿Sir学术研究v1

基于 AMiner 开放平台 API 的学术数据查询与分析,覆盖学者画像、论文深挖、机构科研实力分析、期刊论文监测、论文问答搜索、专利分析 6 大组合工作流,支持全部 28 个开放接口的直接调用,结果附带可访问的实体链接。需配置 AMiner 开放平台 Token(环境变量 AMINER_API_KEY)使用。当用户需要查询学者信息、检索论文、分析机构科研产出、追踪期刊论文或检索专利时触发。触发词:学者查询、论文检索、文献搜索、机构分析、期刊监测、专利检索、学术数据。

下载量
353
点赞
86
价格
免费

技能文档

---
name: aminer-open-academic
title: AMiner 学术数据查询与分析
category: 学术研究
description: 基于 AMiner 开放平台 API 的学术数据查询与分析,覆盖学者画像、论文深挖、机构科研实力分析、期刊论文监测、论文问答搜索、专利分析 6 大组合工作流,支持全部 28 个开放接口的直接调用,结果附带可访问的实体链接。需配置 AMiner 开放平台 Token(环境变量 AMINER_API_KEY)使用。当用户需要查询学者信息、检索论文、分析机构科研产出、追踪期刊论文或检索专利时触发。触发词:学者查询、论文检索、文献搜索、机构分析、期刊监测、专利检索、学术数据。
---

# AMiner 开放平台学术数据查询

AMiner 是覆盖学者、论文、机构、期刊、专利等全景学术数据的平台。本技能覆盖其开放平台全部 28 个 API,并编排为 6 个实用工作流。使用前请在控制台生成令牌并配置为环境变量 `AMINER_API_KEY`,供脚本自动读取。

- **API 文档**:https://open.aminer.cn/open/docs
- **控制台(生成令牌)**:https://open.aminer.cn/open/board?tab=control

## 高优先级强制规则

以下四条规则优先级最高,任何查询任务都必须遵守:

1. **令牌安全**:只检查 `AMINER_API_KEY` 是否存在,任何位置(终端输出、日志、示例结果、调试信息)都不得明文展示令牌。
2. **成本控制**:始终优先选择最优组合查询,不做无差别全量取数。命中结果较多且用户未指定条数时,默认只取前 10 条详情。
3. **免费优先**:优先使用免费接口,除非用户明确要求更深字段或更高精度;免费接口无法满足时才升级付费接口。
4. **结果链接**:只要返回结果中包含实体(论文/学者/专利/期刊),必须在每个实体后附上可访问的 URL。

实体 URL 模板(强制):
- 论文:`https://www.aminer.cn/pub/{paper_id}`
- 学者:`https://www.aminer.cn/profile/{scholar_id}`
- 专利:`https://www.aminer.cn/patent/{patent_id}`
- 期刊:`https://www.aminer.cn/open/journal/detail/{journal_id}`

> 违反上述任一规则视为流程不合规,必须立即中止执行并纠正后才能继续。

## 技能工作流

### 步骤1:检查环境变量令牌(必做)

任何 API 调用前,必须先检查环境变量 `AMINER_API_KEY` 是否存在。鉴权请求头(令牌 + 接入渠道标识)已由客户端脚本 `scripts/aminer_client.py` 内置处理,手动构造 curl 时按 `references/api-catalog.md` 中的示例携带。只判断「存在 / 不存在」,不得输出、回显或记录令牌明文。

**标准检查(可直接使用):**

```bash
if [ -z "${AMINER_API_KEY+x}" ]; then
    echo "AMINER_API_KEY 未配置"
else
    echo "AMINER_API_KEY 已配置"
fi
```

- 环境变量中已有令牌:直接进入后续查询流程。
- 环境变量无令牌:检查用户是否显式提供了 `--token`。
- 两者都没有:立即停止,不调用任何 API、不进入任何工作流,先引导用户获取令牌。

**推荐的令牌配置方式:**
1. 前往 [AMiner 控制台](https://open.aminer.cn/open/board?tab=control)登录并生成 API Token。
2. 将令牌写入环境变量:`export AMINER_API_KEY="<TOKEN>"`
3. 脚本默认读取环境变量 `AMINER_API_KEY`(显式传入 `--token` 时优先)。

**无令牌时的引导话术:**
1. 明确告知用户:「当前缺少令牌,无法继续调用 AMiner API。」
2. 引导用户前往 [AMiner 控制台](https://open.aminer.cn/open/board?tab=control)登录并生成 API Token。
3. 遇到问题可参考[开放平台文档](https://open.aminer.cn/open/docs)。
4. 提示用户拿到令牌后回复:`我的令牌是:<TOKEN>` 即可继续。

> 令牌在有效期内可重复使用。取得令牌前不得执行任何数据查询步骤。

### 步骤2:选择调用方式

所有工作流都可通过 `scripts/aminer_client.py` 驱动:

```bash
# 推荐:先设置环境变量,无需重复传 --token
export AMINER_API_KEY="<TOKEN>"

# 学者画像分析
python scripts/aminer_client.py --action scholar_profile --name "Andrew Ng"

# 论文深挖(含引文链)
python scripts/aminer_client.py --action paper_deep_dive --title "Attention is all you need"

# 机构科研实力分析
python scripts/aminer_client.py --action org_analysis --org "Tsinghua University"

# 期刊论文监测(指定年份)
python scripts/aminer_client.py --action venue_papers --venue "Nature" --year 2024

# 学术问答(自然语言查询)
python scripts/aminer_client.py --action paper_qa --query "latest advances in transformer architecture"

# 专利检索与详情
python scripts/aminer_client.py --action patent_search --query "quantum computing"
```

也可以直接调用单个 API:

```bash
python scripts/aminer_client.py --action raw \
  --api paper_search --params '{"title": "BERT", "page": 0, "size": 5}'

# 显式传入 --token 可临时覆盖环境变量
python scripts/aminer_client.py --token <TOKEN> --action raw \
  --api paper_search --params '{"title": "BERT", "page": 0, "size": 5}'
```

**raw 模式防错规则(强制):**
1. 调用前核对函数签名(参数名与类型必须完全一致),不得「按语义猜参数」。
2. raw 参数约束以 `references/api-catalog.md` 为准;与既有认知冲突时以目录为准。
3. `paper_info` 只用于批量基础信息,参数必须是 `{"ids": [...]}`。
4. `paper_detail` 只支持单篇详情,参数必须是 `{"paper_id": "..."}`,**严禁**传 `ids`。
5. 需要多篇论文详情时:先用低成本接口筛选(如 `paper_info` / `paper_search_pro`),再只对目标子集调 `paper_detail`(用户未指定条数时默认前 10)。
6. 执行前先输出「将调用的函数名 + 参数 JSON」自查,然后再发起请求。

### 步骤3:按场景执行组合工作流

**工作流 1:学者画像**——了解学者完整学术画像(简介、研究兴趣、论文、专利、项目)。

```
学者搜索(姓名 → person_id)
    ↓
并行调用:
  ├── 学者详情(简介/教育/荣誉)
  ├── 学者画像(研究兴趣/经历/工作履历)
  ├── 学者论文(论文列表)
  ├── 学者专利(专利列表)
  └── 学者项目(科研项目/经费信息)
```

```bash
python scripts/aminer_client.py --action scholar_profile --name "Yann LeCun"
```

**工作流 2:论文深挖**——按论文标题或关键词获取完整信息与引用关系。

```
论文搜索 / 论文高级搜索(标题/关键词 → paper_id)
    ↓
论文详情(摘要/作者/DOI/期刊/年份/关键词)
    ↓
论文引文关系(该论文引用了哪些论文 → cited_ids)
    ↓
(可选)批量获取被引论文基础信息
```

```bash
python scripts/aminer_client.py --action paper_deep_dive --title "BERT"
python scripts/aminer_client.py --action paper_deep_dive \
  --keyword "large language model" --author "Hinton" --order n_citation
```

**工作流 3:机构分析**——分析机构学者规模、论文产出与专利数量,适用于科研竞争力评估或合作评估。

```
机构消歧 Pro(原始字符串 → org_id,处理别名/全称差异)
    ↓
并行调用:
  ├── 机构详情(简介/类型/成立时间)
  ├── 机构学者(学者列表)
  ├── 机构论文(论文列表)
  └── 机构专利(专利 ID 列表,支持分页,最多 1 万条)
```

> 多家机构同名时,机构搜索会返回候选列表,请使用机构消歧 Pro 精确匹配。

```bash
python scripts/aminer_client.py --action org_analysis --org "MIT"
# 指定原始字符串(含缩写/别名)
python scripts/aminer_client.py --action org_analysis --org "Massachusetts Institute of Technology, CSAIL"
```

**工作流 4:期刊论文监测**——追踪某期刊特定年份的论文,适用于投稿调研或研究趋势分析。

```
期刊搜索(名称 → venue_id)
    ↓
期刊详情(ISSN/类型/缩写)
    ↓
期刊论文(venue_id + 年份 → paper_id 列表)
    ↓
(可选)批量查询论文详情
```

```bash
python scripts/aminer_client.py --action venue_papers --venue "NeurIPS" --year 2023
```

**工作流 5:论文问答搜索**——用自然语言或结构化关键词智能检索论文,支持 SCI 过滤、被引排序、作者/机构约束。

核心 API 为 `论文问答搜索`(¥0.05/次),支持:`query` 自然语言提问、`topic_high/middle/low` 细粒度关键词权重(嵌套数组 OR/AND 逻辑)、`sci_flag` 仅看 SCI、`force_citation_sort`/`force_year_sort` 排序、`author_terms`/`org_terms` 按姓名过滤、`author_id`/`org_id` 按实体 ID 过滤(推荐,利于消歧)、`venue_ids` 按会议/期刊 ID 列表过滤。

```bash
python scripts/aminer_client.py --action paper_qa \
  --query "deep learning methods for protein structure prediction"

# 细粒度关键词(必须同时含 A 和 B,C 加权)
python scripts/aminer_client.py --action paper_qa \
  --topic_high '[["transformer","self-attention"],["protein folding"]]' \
  --topic_middle '[["AlphaFold"]]' \
  --sci_flag --sort_citation
```

**工作流 6:专利分析**——检索特定技术领域的专利,或获取某学者/机构的专利组合。

```
独立检索:专利搜索(query → patent_id)→ 专利详情(摘要/申请日/申请号/受让人/发明人)
经由学者/机构:学者搜索 → 学者专利;机构消歧 → 机构专利 → 专利信息 / 专利详情
```

```bash
python scripts/aminer_client.py --action patent_search --query "quantum computing chip"
python scripts/aminer_client.py --action scholar_patents --name "Shou-Cheng Zhang"
```

### 步骤4:处理工作流之外的需求

用户需求超出上述 6 个工作流、或现有工作流无法直接覆盖时,按以下步骤执行:

1. 先阅读 `references/api-catalog.md`,确认可用接口、参数约束与响应字段。
2. 根据用户目标选择最合适的 API,设计最短可行调用链(先定位 ID,再补详情,后扩展关系)。
3. 必要时组合多个 API 完成查询,并在结果中标注 `source_api_chain` 说明数据来源路径。
4. 多种组合方案可行时,优先选择成本更低、稳定性更高且字段满足需求的方案。
5. 尽量采用「最优查询组合」,避免无差别全量取数;先低成本搜索筛选,再对小批量目标取详情。
6. 结果量大且用户未指定条数时,默认只查前 10 条详情并先返回摘要;例如命中 1000 篇论文时,不要对全部 1000 篇调用详情接口,以降低用户成本。
7. `raw` 调用必须做参数级校验:`paper_info` 用 `ids`,`paper_detail` 用 `paper_id`,不得混淆。
8. 用户未明确要求深入信息时,优先走免费路径(`paper_search` / `paper_info` / `venue_search`);确认免费接口不足后再补必要的付费接口。
9. 返回最终实体列表时必须附对应 URL;实体 ID 缺失时先补齐再输出。

> 不要因为「没有现成工作流匹配」就放弃查询,应基于 api-catalog 主动完成 API 组合。

## 论文搜索接口选型指南

用户说「搜论文」时,先判断目标是「找 ID」「筛选结果」「问答」还是「生成分析报告」,再选接口:

| 接口 | 侧重点 | 适用场景 | 成本 |
|---|---|---|---|
| `paper_search` | 标题搜索,快速拿到 `paper_id` | 已知论文标题,先定位目标论文 | 免费 |
| `paper_search_pro` | 多条件搜索与排序(作者/机构/期刊/关键词) | 主题检索,按被引量或年份排序 | ¥0.01/次 |
| `paper_qa_search` | 自然语言问答 / 主题关键词搜索 | 用户用自然语言描述需求,语义检索优先 | ¥0.05/次 |
| `paper_list_by_search_venue` | 返回更完整的论文信息(适合分析) | 需要更丰富字段做分析/报告 | ¥0.30/次 |
| `paper_list_by_keywords` | 多关键词批量检索 | 批量主题检索(如 AlphaFold + 蛋白质折叠) | ¥0.10/次 |
| `paper_detail_by_condition` | 按年份 + 期刊维度取详情 | 期刊年度监测、选刊分析 | ¥0.20/次 |

推荐路由(默认):

1. **已知标题**:`paper_search -> paper_detail -> paper_relation`
2. **条件筛选**:`paper_search_pro -> paper_detail`
3. **自然语言问答**:`paper_qa_search`(无结果时回退 `paper_search_pro`)
4. **期刊年度分析**:`venue_search -> venue_paper_relation -> paper_detail_by_condition`

补充规则(强烈建议遵守):

1. 仅按标题搜索时,务必先用 `paper_search`(免费)快速定位论文 ID。
2. 复杂语义检索(自然语言、多条件、模糊表达)优先用 `paper_qa_search`。
3. 使用 `paper_qa_search` 时,先把自然语言需求拆解为结构化条件再填字段(如年份、主题关键词、作者/机构等)。
4. `query` 与 `topic_high/topic_middle/topic_low` **互斥**:二选一,不得同时传。
5. `query` 模式直接填自然语言字符串;`topic_*` 模式先用同义词/英文变体扩展再填。
6. 示例:查询「2012 年 AI 相关论文」:
   - `year` → `[2012]`
   - 方案 A:`query` → `"artificial intelligence"`
   - 方案 B:`topic_high` → `[["artificial intelligence","ai","Artificial Intelligence"]]`(开启 `use_topic`)

## 稳定性与失败处理策略(必读)

客户端 `scripts/aminer_client.py` 内置请求重试与回退策略,降低网络波动与瞬时服务错误对结果的影响。

- **超时与重试**:默认超时 `30s`;最大重试 `3` 次;指数退避(`1s -> 2s -> 4s`)+ 随机抖动。
- **可重试状态码**:`408 / 429 / 500 / 502 / 503 / 504`。
- **不重试场景**:常见 `4xx` 错误(参数错误、鉴权问题等)默认不重试,直接返回错误结构。
- **工作流回退**:`paper_deep_dive` 在 `paper_search` 无结果时自动回退 `paper_search_pro`;`paper_qa` 在 `query` 模式无结果时自动回退 `paper_search_pro`。
- **可追溯调用链**:组合工作流输出包含 `source_api_chain`,标明结果由哪些 API 组合产生。

## 接口速查

> 完整参数说明请阅读 `references/api-catalog.md`

| # | 接口 | 方法 | 价格 | 路径(基础域名:datacenter.aminer.cn/gateway/open_platform) |
|---|------|------|------|------|
| 1 | 论文问答搜索 | POST | ¥0.05 | `/api/paper/qa/search` |
| 2 | 学者搜索 | POST | 免费 | `/api/person/search` |
| 3 | 论文搜索 | GET | 免费 | `/api/paper/search` |
| 4 | 论文高级搜索 | GET | ¥0.01 | `/api/paper/search/pro` |
| 5 | 专利搜索 | POST | 免费 | `/api/patent/search` |
| 6 | 机构搜索 | POST | 免费 | `/api/organization/search` |
| 7 | 期刊搜索 | POST | 免费 | `/api/venue/search` |
| 8 | 学者详情 | GET | ¥1.00 | `/api/person/detail` |
| 9 | 学者项目 | GET | ¥3.00 | `/api/project/person/v3/open` |
| 10 | 学者论文 | GET | ¥1.50 | `/api/person/paper/relation` |
| 11 | 学者专利 | GET | ¥1.50 | `/api/person/patent/relation` |
| 12 | 学者画像 | GET | ¥0.50 | `/api/person/figure` |
| 13 | 论文批量信息 | POST | 免费 | `/api/paper/info` |
| 14 | 论文详情 | GET | ¥0.01 | `/api/paper/detail` |
| 15 | 论文引文关系 | GET | ¥0.10 | `/api/paper/relation` |
| 16 | 专利基本信息 | GET | 免费 | `/api/patent/info` |
| 17 | 专利详情 | GET | ¥0.01 | `/api/patent/detail` |
| 18 | 机构详情 | POST | ¥0.01 | `/api/organization/detail` |
| 19 | 机构专利 | GET | ¥0.10 | `/api/organization/patent/relation` |
| 20 | 机构学者 | GET | ¥0.50 | `/api/organization/person/relation` |
| 21 | 机构论文 | GET | ¥0.10 | `/api/organization/paper/relation` |
| 22 | 期刊详情 | POST | ¥0.20 | `/api/venue/detail` |
| 23 | 期刊论文 | POST | ¥0.10 | `/api/venue/paper/relation` |
| 24 | 机构消歧 | POST | ¥0.01 | `/api/organization/na` |
| 25 | 机构消歧 Pro | POST | ¥0.05 | `/api/organization/na/pro` |
| 26 | 按期刊检索论文 | GET | ¥0.30 | `/api/paper/list/by/search/venue` |
| 27 | 论文批量查询 | GET | ¥0.10 | `/api/paper/list/citation/by/keywords` |
| 28 | 按年份与期刊查论文详情 | GET | ¥0.20 | `/api/paper/platform/allpubs/more/detail/by/ts/org/venue` |

## 参考资料

- 全部 API 参数文档:`references/api-catalog.md`
- Python 客户端源码:`scripts/aminer_client.py`
- 官方文档:https://open.aminer.cn/open/docs
- 控制台:https://open.aminer.cn/open/board?tab=control

使用说明

# AMiner 学术数据查询与分析

基于 AMiner 开放平台 API,一句话完成学者画像、论文深挖、机构分析、期刊监测、学术问答与专利检索。

## 使用

先在 AMiner 控制台生成令牌并配置环境变量:

```bash
export AMINER_API_KEY="<你的令牌>"
```

然后直接描述需求,例如:

```text
帮我查一下吴恩达的学术画像,包括研究方向、代表作和专利。
深挖一下《Attention Is All You Need》这篇论文及其引用链。
分析一下清华大学计算机学科的论文产出情况。
```

## 工作原理

技能封装 AMiner 开放平台 28 个 API,按 6 大组合工作流自动编排调用链:

1. **学者画像**:搜索 → 详情 + 画像 + 论文 + 专利 + 项目
2. **论文深挖**:搜索 → 详情 → 引文链
3. **机构分析**:消歧 → 详情 + 学者 + 论文 + 专利
4. **期刊监测**:期刊搜索 → 按年份取论文
5. **学术问答**:自然语言语义检索
6. **专利分析**:专利检索与组合查询

客户端内置超时重试、指数退避与工作流回退,结果附实体链接与调用链说明。API 参数详见 `references/api-catalog.md`。

如何安装此技能?

访问技能市场,点击「安装」按钮,按提示将技能包放入 AI 编程助手的 skills 目录即可。

浏览技能市场

支持平台:Qoder · QoderWork · Claude · Codex 等 AI 编程助手