首页
/ AMPL 的安装和配置教程

AMPL 的安装和配置教程

2025-05-23 08:24:47作者:伍希望

1. 项目的基础介绍和主要的编程语言

AMPL(ATOM Modeling PipeLine)是一个开源的、端到端的软件管道,用于数据整理、模型构建和分子属性预测,旨在推动计算机辅助药物发现。它由Accelerating Therapeutics for Opportunities in Medicine (ATOM)联盟创建,并扩展了DeepChem的功能,支持多种机器学习和分子特征化工具,预测关键的活性、安全性和药动学相关参数。

AMPL的主要编程语言是Python,它使用Python 3.9版本。

2. 项目使用的关键技术和框架

AMPL项目使用以下关键技术和框架:

  • DeepChem:一个用于药物发现的深度学习库。
  • TensorFlow:一个用于机器学习的开源库。
  • PyTorch:一个用于机器学习的Python库。
  • DGL(Deep Graph Library):一个用于图表示学习的库。

3. 项目安装和配置的准备工作和详细的安装步骤

准备工作

在开始安装AMPL之前,请确保您的系统满足以下要求:

  • Python 3.9环境
  • 至少12GB的磁盘空间
  • CUDA 11.8(如果使用GPU)

安装步骤

以下是AMPL的详细安装步骤:

  1. 创建Python虚拟环境

    打开终端或命令提示符,创建一个Python 3.9的虚拟环境:

    export ENVROOT=~/workspace
    cd $ENVROOT
    python3.9 -m venv atomsci-env
    
  2. 激活虚拟环境

    激活刚刚创建的虚拟环境:

    source $ENVROOT/atomsci-env/bin/activate
    
  3. 升级pip

    升级pip到最新版本:

    pip install pip --upgrade
    
  4. 克隆AMPL仓库

    克隆AMPL项目的GitHub仓库:

    git clone https://github.com/ATOMScience-org/AMPL.git
    
  5. 安装依赖

    根据您的系统(CPU或CUDA),进入AMPL的pip目录并安装相应的依赖:

    • CPU-only安装

      cd AMPL/pip
      pip install -r cpu_requirements.txt
      
    • CUDA安装

      首先加载CUDA模块,然后运行CUDA特定的包安装:

      module load cuda/11.8
      pip install -r cuda_requirements.txt
      

    如果遇到内存不足错误,可以尝试设置以下环境变量:

    export LD_LIBRARY_PATH=<your_env>/lib:$LD_LIBRARY_PATH
    export PYTHONUSERBASE=<your_env>
    export OPENBLAS_NUM_THREADS=1
    export OMP_NUM_THREADS=48
    export PYTORCH_HIP_ALLOC_CONF=gargage_collection_threshold:0.9,max_split_size_mb:128
    export TF_FORCE_GPU_ALLOW_GROWTH=true
    
  6. 安装开发依赖

    安装pytest、绘图包等开发依赖:

    cd AMPL/pip
    pip install -r dev_requirements.txt
    
  7. 构建AMPL

    返回AMPL的父目录,运行以下命令来构建“atomsci”模块:

    cd ..
    ./build.sh
    

    然后安装AMPL:

    pip install -e .
    
  8. 创建Jupyter笔记本内核(可选)

    如果您想从Jupyter笔记本运行AMPL,可以创建一个新的内核:

    python -m ipykernel install --user --name atomsci-env
    

通过上述步骤,您应该能够成功安装和配置AMPL。如果在安装过程中遇到任何问题,可以查看项目文档或向社区寻求帮助。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
184
266
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
138
189
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
887
528
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
370
383
Git4ResearchGit4Research
Git4Research旨在构建一个开放、包容、协作的研究社区,让更多人能够参与到科学研究中,共同推动知识的进步。
HTML
19
0
kernelkernel
deepin linux kernel
C
22
6
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
337
1.11 K
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.08 K
0
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
84
4
harmony-utilsharmony-utils
harmony-utils 一款功能丰富且极易上手的HarmonyOS工具库,借助众多实用工具类,致力于助力开发者迅速构建鸿蒙应用。其封装的工具涵盖了APP、设备、屏幕、授权、通知、线程间通信、弹框、吐司、生物认证、用户首选项、拍照、相册、扫码、文件、日志,异常捕获、字符、字符串、数字、集合、日期、随机、base64、加密、解密、JSON等一系列的功能和操作,能够满足各种不同的开发需求。
ArkTS
61
2