名称: pubmed-search 描述: 使用 Valyu 语义搜索以自然语言查询搜索 PubMed 生物医学文献。全文访问,集成到您的 AI 项目中。 关键词:
- pubmed
- 生物医学文献
- 医学研究
- 语义搜索
- 自然语言查询
- 全文搜索
- 研究集成 许可证: MIT
PubMed 搜索
使用由 Valyu 语义搜索 API 驱动的自然语言查询搜索完整的 PubMed 生物医学文献数据库。
为什么这个技能强大
- 无需 API 参数解析:只需直接传递自然语言查询 - 无需构建复杂的搜索参数
- 语义搜索:理解您查询的含义,不仅仅是关键词匹配
- 全文访问:返回完整的文章内容,不仅仅是摘要
- 图像链接:包括论文中的图表和图像
- 全面覆盖:访问所有 PubMed 的生物医学文献
要求
- Node.js 18+(使用内置 fetch)
- 从 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 时,请遵循此流程:
-
向用户请求 API 密钥: “要搜索 PubMed,我需要您的 Valyu API 密钥。在 https://platform.valyu.ai 免费获取(10 美元额度)”
-
用户提供密钥后,运行:
scripts/search setup <api-key> -
重试原始搜索。
示例流程:
用户:搜索 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 参考。