PubMed语义搜索Skill pubmed-search

这是一个基于 Valyu AI 语义搜索的 PubMed 生物医学文献检索技能,支持自然语言查询、全文访问和图像链接,适用于学术研究、药物发现和 AI 项目集成。关键词:PubMed、生物医学文献、语义搜索、自然语言处理、全文检索、AI 集成。

文献检索 0 次安装 0 次浏览 更新于 3/18/2026

名称: pubmed-search 描述: 使用 Valyu 语义搜索以自然语言查询搜索 PubMed 生物医学文献。全文访问,集成到您的 AI 项目中。 关键词:

  • pubmed
  • 生物医学文献
  • 医学研究
  • 语义搜索
  • 自然语言查询
  • 全文搜索
  • 研究集成 许可证: MIT

PubMed 搜索

使用由 Valyu 语义搜索 API 驱动的自然语言查询搜索完整的 PubMed 生物医学文献数据库。

为什么这个技能强大

  • 无需 API 参数解析:只需直接传递自然语言查询 - 无需构建复杂的搜索参数
  • 语义搜索:理解您查询的含义,不仅仅是关键词匹配
  • 全文访问:返回完整的文章内容,不仅仅是摘要
  • 图像链接:包括论文中的图表和图像
  • 全面覆盖:访问所有 PubMed 的生物医学文献

要求

  1. Node.js 18+(使用内置 fetch)
  2. https://platform.valyu.ai 获取 Valyu API 密钥(10 美元免费额度)

关键:脚本路径解析

本文档中的 scripts/search 命令是相对于此技能安装目录的。

在运行任何命令之前,使用以下方式定位脚本:

PUBMED_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/pubmed-search/*/scripts/*" -type f 2>/dev/null | head -1)

然后对所有命令使用完整路径:

$PUBMED_SCRIPT "CRISPR 基因编辑" 15

API 密钥设置流程

当您运行搜索并收到 "setup_required": true 时,请遵循此流程:

  1. 向用户请求 API 密钥: “要搜索 PubMed,我需要您的 Valyu API 密钥。在 https://platform.valyu.ai 免费获取(10 美元额度)”

  2. 用户提供密钥后,运行:

    scripts/search setup <api-key>
    
  3. 重试原始搜索。

示例流程:

用户:搜索 PubMed 以获取 CAR-T 细胞疗法进展
→ 响应:{"success": false, "setup_required": true, ...}
→ Claude 询问:"请提供您在 https://platform.valyu.ai 的 Valyu API 密钥"
→ 用户:"val_abc123..."
→ Claude 运行:scripts/search setup val_abc123...
→ 响应:{"success": true, "type": "setup", ...}
→ Claude 重试:scripts/search "CAR-T 细胞疗法进展" 10
→ 成功!

用法

基本搜索

scripts/search "您的自然语言查询" [最大结果数]

示例

# 搜索最近的 COVID-19 研究
scripts/search "COVID-19 疫苗效力研究" 15

# 查找关于特定基因的论文
scripts/search "BRCA1 突变和乳腺癌风险" 20

# 搜索治疗方法
scripts/search "黑色素瘤免疫疗法临床试验" 10

# 药物机制研究
scripts/search "二甲双胍在 2 型糖尿病中的作用机制" 12

设置命令

scripts/search setup <api-key>

输出格式

{
  "success": true,
  "type": "pubmed_search",
  "query": "CRISPR 基因编辑",
  "result_count": 10,
  "results": [
    {
      "title": "文章标题",
      "url": "https://pubmed.ncbi.nlm.nih.gov/...",
      "content": "带有图表的完整文章文本...",
      "source": "pubmed",
      "relevance_score": 0.95,
      "images": ["https://example.com/figure1.jpg"]
    }
  ],
  "cost": 0.025
}

处理结果

使用 jq

# 获取文章标题
scripts/search "查询" 10 | jq -r '.results[].title'

# 获取 URL
scripts/search "查询" 10 | jq -r '.results[].url'

# 提取完整内容
scripts/search "查询" 10 | jq -r '.results[].content'

常见用例

文献综述

# 查找关于某个主题的所有论文
scripts/search "人类衰老机制" 50

药物发现

# 搜索药物靶点
scripts/search "阿尔茨海默病治疗新靶点" 20

临床研究

# 查找临床试验结果
scripts/search "类风湿关节炎生物制剂三期试验" 15

基因功能

# 研究基因功能
scripts/search "TP53 在癌症发展中的作用" 25

错误处理

所有命令返回带有 success 字段的 JSON:

{
  "success": false,
  "error": "错误消息"
}

退出代码:

  • 0 - 成功
  • 1 - 错误(检查 JSON 以获取详情)

API 端点

  • 基础 URL:https://api.valyu.ai/v1
  • 端点:/search
  • 认证:X-API-Key 头部

架构

scripts/
├── search          # Bash 包装器
└── search.mjs      # Node.js CLI

使用 Node.js 内置 fetch() 直接进行 API 调用,零外部依赖。

添加到您的项目

如果您正在构建 AI 项目并希望将 PubMed 搜索直接集成到您的应用程序中,请使用 Valyu SDK:

Python 集成

from valyu import Valyu

client = Valyu(api_key="您的-api-密钥")

response = client.search(
    query="黑色素瘤免疫疗法",
    included_sources=["valyu/valyu-pubmed"],
    max_results=20
)

for result in response["results"]:
    print(f"标题: {result['title']}")
    print(f"URL: {result['url']}")
    print(f"内容: {result['content'][:500]}...")

TypeScript 集成

import { Valyu } from "valyu-js";

const client = new Valyu("您的-api-密钥");

const response = await client.search({
  query: "黑色素瘤免疫疗法",
  includedSources: ["valyu/valyu-pubmed"],
  maxResults: 20
});

response.results.forEach((result) => {
  console.log(`标题: ${result.title}`);
  console.log(`URL: ${result.url}`);
  console.log(`内容: ${result.content.substring(0, 500)}...`);
});

查看 Valyu 文档 以获取完整集成示例和 SDK 参考。