mcpField
C
cli-anything-unimol-tools

cli-anything-unimol-tools

github.com/hkuds数据与数据库57.6k465 次安装5 周前更新
代码仓库

关于 cli-anything-unimol-tools

cli-anything-unimol-tools 是基于 Uni-Mol Tools 训练和运行分子属性预测模型的交互式命令行工具,支持五类任务,并提供项目管理、模型跟踪及 JSON 自动化输出。

主要功能

  1. 01支持五类任务的训练与预测
  2. 02按项目组织实验
  3. 03跟踪并排名模型表现
  4. 04分析存储并清理模型
  5. 05用于自动化的 JSON 输出

适用场景

  1. 01使用含 SMILES 的 CSV 数据训练分子属性模型
  2. 02按表现比较已训练模型
  3. 03预测测试数据集的分子属性

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hkuds/cli-anything --skill cli-anything-unimol-tools

安装后在 Claude Code 中输入/cli-anything-unimol-tools确认已加载。

详细介绍

Uni-Mol Tools - 分子性质预测命令行

包:cli-anything-unimol-tools 命令:python3 -m cli_anything.unimol_tools

描述

使用 Uni-Mol Tools 进行分子性质预测模型训练和推理的交互式命令行。支持 5 种任务类型:二分类、回归、多分类、多标签分类和多标签回归。

主要功能

  • 项目管理:使用命名项目组织实验
  • 5 种任务类型:分类、回归、多分类、多标签变体
  • 模型追踪:自动记录性能历史和排名
  • 智能存储:分析使用情况并清理表现不佳的模型
  • JSON API:通过 --json 标志提供完整的自动化支持

常用命令

项目管理
# Create a new project
project create --name drug_discovery

# List all projects
project list

# Switch to a project
project switch --name drug_discovery
训练
# Train a classification model
train --data-path train.csv --target-col active --task-type classification --epochs 10

# Train a regression model
train --data-path train.csv --target-col affinity --task-type regression --epochs 10
模型管理
# List all trained models
models list

# Show model details and performance
models show --model-id <id>

# Rank models by performance
models rank
存储与清理
# Analyze storage usage
storage analyze

# Automatic cleanup of poor performers
cleanup auto

# Manual cleanup with criteria
cleanup manual --max-models 10 --min-score 0.7
预测
# Make predictions with a trained model
predict --model-id <id> --data-path test.csv

数据格式

CSV 文件必须包含:

  • SMILES 列:SMILES 格式的分子结构
  • 目标列:要预测的值(名称通过 --target-col 指定)

示例:

SMILES,target
CCO,1
CCCO,0
CC(C)O,1

任务类型

  1. classification:二分类(0/1)
  2. regression:连续值预测
  3. multiclass:多类别分类
  4. multilabel_classification:多个二分类标签
  5. multilabel_regression:多个连续值

JSON 模式

在任何命令后添加 --json 标志以获得机器可读输出:

python3 -m cli_anything.unimol_tools --json models list

输出格式:

{
  "status": "success",
  "data": [...],
  "message": "..."
}

交互模式

不带命令启动即可进入交互式 REPL:

python3 -m cli_anything.unimol_tools

功能:

  • Tab 补全
  • 命令历史
  • 上下文帮助
  • 项目状态持久化

测试数据

示例数据集位于: https://github.com/545487677/CLI-Anything-unimol-tools/tree/main/unimol_tools/examples

包含所有 5 种任务类型的数据。

环境要求

  • Python 3.8+
  • PyTorch 1.12+
  • Uni-Mol Tools 后端
  • 4GB+ 内存(训练推荐 8GB+)

安装

cd unimol_tools/agent-harness
pip install -e .

文档

测试

cd docs/test
bash run_tests.sh --unit -v    # Unit tests (67 tests)
bash run_tests.sh --full -v    # Full test suite

性能建议

  • 初始实验从 10 个 epoch 开始
  • 如果内存有限,使用较小的批次大小
  • 使用 storage analyze 监控存储
  • 使用 models rank 找出表现最佳的模型
  • 定期使用 cleanup auto 进行清理

故障排除

  • CUDA 错误:减小批次大小或使用 CPU 模式
  • CSV 无法识别:验证 SMILES 列是否存在
  • 准确率低:尝试更多 epoch 或调整学习率
  • 存储已满:运行 cleanup auto 释放空间

相关资源

评论

支持 Markdown