名称:药物发现搜索 描述:端到端药物发现平台,结合ChEMBL化合物、DrugBank、目标和FDA标签。由Valyu提供自然语言处理。 关键词:
- 药物发现
- 药物开发
- 化合物筛选
- 目标验证
- 全面搜索
- 语义搜索 许可证:MIT
药物发现搜索
使用由Valyu语义搜索API支持的自然语言查询,同时搜索所有主要药物发现数据库(ChEMBL、DrugBank、FDA药物标签、Open Targets)。
为什么这个技能很强大
- 无需API参数解析:只需直接传递自然语言查询,无需构建复杂搜索参数
- 语义搜索:理解查询的含义,不仅仅是关键词匹配
- 全文访问:返回完整的化合物、目标和药物信息
- 图片链接:包括分子结构和数据可视化
- 全面覆盖:同时搜索ChEMBL、DrugBank、药物标签和Open Targets
- 统一结果:在一个查询中获取所有药物发现来源的结果
要求
- Node.js 18+(使用内置fetch)
- Valyu API密钥,从 https://platform.valyu.ai 获取($10免费积分)
关键:脚本路径解析
本文档中的 scripts/search 命令相对于此技能的安装目录。
在运行任何命令之前,使用以下命令定位脚本:
DRUG_DISCOVERY_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/drug-discovery-search/*/scripts/*" -type f 2>/dev/null | head -1)
然后对所有命令使用完整路径:
$DRUG_DISCOVERY_SCRIPT "JAK2抑制剂" 20
API密钥设置流程
当运行搜索并收到 "setup_required": true 时,按照此流程:
-
向用户询问他们的API密钥: “要搜索药物发现数据库,我需要您的Valyu API密钥。在 https://platform.valyu.ai 获取一个免费密钥($10积分)”
-
一旦用户提供密钥,运行:
scripts/search setup <api-key> -
重试原始搜索。
何时使用此技能
- 端到端药物发现信息
- 通过化合物和试验进行目标验证
- 完整的药物开发信息
- 带有目标数据的化合物优化
- 安全性和有效性研究
输出格式
{
"success": true,
"type": "drug_discovery_search",
"query": "JAK2抑制剂",
"result_count": 20,
"results": [
{
"title": "化合物/药物/目标标题",
"url": "https://...",
"content": "包括化合物、目标、机制等的完整数据...",
"source": "chembl|drugbank|drug-labels|open-targets",
"relevance_score": 0.95,
"images": ["https://example.com/structure.png"]
}
],
"cost": 0.035
}
处理结果
使用jq
# 获取标题
scripts/search "查询" 20 | jq -r '.results[].title'
# 获取URL
scripts/search "查询" 20 | jq -r '.results[].url'
# 提取完整内容
scripts/search "查询" 20 | jq -r '.results[].content'
# 按来源筛选
scripts/search "查询" 20 | jq -r '.results[] | select(.source == "chembl") | .title'
常见使用案例
目标识别
# 查找已验证的目标和化合物
scripts/search "BTK抑制剂用于自身免疫性疾病" 50
先导优化
# 搜索SAR和化合物数据
scripts/search "EGFR抑制剂血脑屏障渗透" 40
药物重定位
# 寻找重定位机会
scripts/search "mTOR抑制剂癌症和衰老" 30
安全性评估
# 收集安全性和相互作用数据
scripts/search "酪氨酸激酶抑制剂心脏毒性" 60
错误处理
所有命令都返回带有 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项目,并希望将药物发现搜索直接集成到您的应用程序中,请使用Valyu SDK:
Python集成
from valyu import Valyu
client = Valyu(api_key="您的-api-key")
response = client.search(
query="您的搜索查询在这里",
included_sources=["valyu/valyu-chembl", "valyu/valyu-drugbank", "valyu/valyu-drug-labels", "valyu/valyu-open-targets"],
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-key");
const response = await client.search({
query: "您的搜索查询在这里",
includedSources: ["valyu/valyu-chembl", "valyu/valyu-drugbank", "valyu/valyu-drug-labels", "valyu/valyu-open-targets"],
maxResults: 20
});
response.results.forEach((result) => {
console.log(`标题: ${result.title}`);
console.log(`URL: ${result.url}`);
console.log(`内容: ${result.content.substring(0, 500)}...`);
});
有关完整集成示例和SDK参考,请参阅 Valyu文档。