zcbot/skills/research/SKILL.md

47 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: research
description: 检索 paper_server 中的论文、书籍和书籍章节获取题录、DOI、摘要及可用的 PDF/XML 全文。适合跨学科文献发现、精确文献查找和引文核验;材料领域可与 documents 并用。
---
# Research
`research` 是 zcbot 对独立 `paper_server` 项目的客户端适配。`paper_server` 以 OpenAlex 元数据为基础并按记录实际可用性提供摘要、PDF 或 XML当前语料以英文为主也包含中文文献。
## 选择与协作
- 跨学科发现、题名或 DOI 检索、出版类型识别:优先使用 `research`
- 材料领域全文语义检索、性能或工艺数据:优先使用 `documents`
- 系统调研、综述或重要引用:可同时查询两者;按 DOI 去重,无 DOI 时按规范化题名、作者和年份去重。
- 用户已提供具体文件:直接读取;用户只提供题录而任务要求核验论断时,继续获取摘要或全文。
论文、书籍和书籍章节均可检索。是否读取摘要、XML 或 PDF由用户问题所需的证据深度决定。
## 调用方式
通过 `run_python` 使用 helper
```python
from skills.research.paper import search, get_paper, fetch_pdf, fetch_xml
```
- `search(keyword="", year=None, year_gte=None, year_lte=None, doi="", first_author="", publication_name="", has_pdf=None, is_oa=None, limit=10)`搜索题录返回类型、题名、作者、年份、期刊或出版物、DOI、摘要及全文可用状态。
- `get_paper(id_or_doi)`:按 `paper_server` ID 或 DOI 获取单条完整记录。
- `fetch_xml(id_or_doi, working_dir)` / `fetch_pdf(id_or_doi, working_dir)`:把可用全文下载到当前任务的 `papers/` 目录并返回相对路径。
helper 自动使用 `PAPER_SERVER_API_KEY` 和可选的 `PAPER_SERVER_URL`。通过 helper 访问 `paper_server`由它处理认证、URL 和下载路径。
## 工作流
1. 将用户概念转换为常用专业术语;英文题名占多数时优先使用英文,并可用中文或同义词补充。
2. 用主题、年份、作者、出版物或 DOI 搜索并筛选候选;`type` 可帮助识别论文、书籍和章节。
3. 相关性初筛可使用题名和摘要;精确论断、数据、章节、图表或页码应获取足够正文。
4. 结构化段落和参考文献通常适合读取 XML版式、页码、公式和图表通常适合读取 PDF。只获取记录实际提供的格式。
5.`documents` 并查时合并去重,输出中区分“仅题录”“摘要已核对”“全文已核对”。
## 失败与真实性
- 认证或网络失败时,明确说明 `paper_server` 当前不可用;认证失败需要管理员检查 zcbot 的 `PAPER_SERVER_API_KEY` 配置。
- DOI 未命中、全文格式缺失或服务器文件不存在时,可改查其他候选或使用现有摘要,不把“已收录”写成“已读全文”。
- 未命中时可调整术语和过滤条件;没有新增检索思路时如实说明覆盖不足。
- 只引用返回记录中的真实题名、作者、DOI 和正文,不推测缺失的 ISBN、出版社、版本、页码或内容。