关于 cli-anything-unimol-tools
cli-anything-unimol-tools 是基于 Uni-Mol Tools 训练和运行分子属性预测模型的交互式命令行工具,支持五类任务,并提供项目管理、模型跟踪及 JSON 自动化输出。
主要功能
- 01支持五类任务的训练与预测
- 02按项目组织实验
- 03跟踪并排名模型表现
- 04分析存储并清理模型
- 05用于自动化的 JSON 输出
适用场景
- 01使用含 SMILES 的 CSV 数据训练分子属性模型
- 02按表现比较已训练模型
- 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
任务类型
- classification:二分类(0/1)
- regression:连续值预测
- multiclass:多类别分类
- multilabel_classification:多个二分类标签
- 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 .
文档
- SOP:UNIMOL_TOOLS.md
- 快速开始:docs/guides/02-QUICK-START.md
- 完整文档:docs/README.md
测试
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释放空间
相关资源
- Uni-Mol Tools:https://github.com/dptech-corp/Uni-Mol/tree/main/unimol_tools
- Uni-Mol 论文:https://arxiv.org/abs/2209.11126
- CLI-Anything:https://github.com/HKUDS/CLI-Anything
评论
支持 Markdown