You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:已安装的anti-SMASH无法导入AbstractPosition报错解决

问题描述

测试刚安装的anti-SMASH是否可用时,执行antismash --check-prereqs、antismash --help或antismash --help-showall均出现以下导入错误:

Traceback (most recent call last):
File "/home/promt/asenv/bin/antismash", line 5, in 
from antismash.__main__ import entrypoint
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/__init__.py", line 12, in 
from antismash.main import run_antismash, get_detection_modules, 
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/main.py", line 31, in 
from antismash.common import logs, record_processing, serialiser
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/record_processing.py", line 19, in 
from antismash.common.secmet import Record
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/__init__.py", line 11, in 
from .record import Record
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/record.py", line 25, in 
from .features import (
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/features/__init__.py", line 6, in 
from .antismash_domain import AntismashDomain
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/features/antismash_domain.py", line 10, in 
from .domain import Domain, generate_protein_location_from_qualifiers
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/features/domain.py", line 13, in 
from .feature import Feature, FeatureLocation, Location
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/features/feature.py", line 13, in 
from antismash.common.secmet.locations import (
File "/home/promt/asenv/lib/python3.9/site-packages/antismash/common/secmet/locations.py", line 9, in 
from Bio.SeqFeature import (
ImportError: cannot import name 'AbstractPosition' from 'Bio.SeqFeature' (/home/promt/asenv/lib/python3.9/site-packages/Bio/SeqFeature.py)
解决方案

这个错误是由于Biopython版本不兼容导致的:Biopython 1.80及以上版本重构了SeqFeature模块,移除了AbstractPosition类,而当前安装的anti-SMASH版本依赖该类。解决步骤如下:

  • 查看当前环境的Biopython版本:
    pip show biopython
    
  • 卸载现有不兼容版本:
    pip uninstall -y biopython
    
  • 安装anti-SMASH兼容的Biopython旧版本(推荐1.79版本,适配多数anti-SMASH稳定版):
    pip install biopython==1.79
    
  • 重新运行检查命令验证修复效果:
    antismash --check-prereqs
    

如果是通过conda环境安装的anti-SMASH,改用conda命令调整版本:

conda install biopython=1.79

内容的提问来源于stack exchange,提问作者Erwin John Sioson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 17:50:41