Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#8032 closed defect (fixed)

Read PAE matrix: No module named 'jax'

Reported by: sclassen@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Structure Prediction Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-10.16-x86_64-i386-64bit
ChimeraX Version: 1.5rc202211120143 (2022-11-12 01:43:47 UTC)
Description
We are trying to visualize the PAE plots from a locally run Alphfold2 job. We ran the AF2 using the multimer option. Chimera cannot extract pae data dromout PDB or PKL files.

Log:
Startup Messages  
---  
note | available bundle cache has not been initialized yet  
  
You can double click a model's Name or ID in the model panel to edit those
fields  
UCSF ChimeraX version: 1.5rc202211120143 (2022-11-12)  
© 2016-2022 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /Users/classen/Documents/vr-IgA2/result_model_1_multimer_v2_pred_0.pkl

Unrecognized file suffix '.pkl'  

> open /Users/classen/Documents/vr-IgA2/ranked_0.pdb

Chain information for ranked_0.pdb #1  
---  
Chain | Description  
A B | No description available  
C | No description available  
D | No description available  
  

> ui tool show AlphaFold

> ui tool show "AlphaFold Error Plot"

> alphafold pae #1 file /Users/classen/Documents/vr-IgA2/features.pkl

File /Users/classen/Documents/vr-IgA2/features.pkl does not contain AlphaFold
predicted aligned error (PAE) data. The AlphaFold "monomer" preset does not
compute PAE. Run AlphaFold with the "monomer_ptm" or "multimer" presets to get
PAE values.  

> alphafold pae #1 file /Users/classen/Documents/vr-
> IgA2/result_model_1_multimer_v2_pred_0.pkl

Traceback (most recent call last):  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 153, in _choose_pae_file  
self._open_pae()  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 166, in _open_pae  
self._open_pae_from_file(s)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 190, in _open_pae_from_file  
run(self.session, cmd)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/run.py", line 38, in run  
results = command.run(text, log=log, return_json=return_json)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/cli.py", line 2897, in run  
result = ci.function(session, **kw_args)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 1090, in alphafold_pae  
pae = AlphaFoldPAE(file, structure)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 778, in __init__  
self._pae_matrix = read_pae_matrix(pae_path)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 905, in read_pae_matrix  
return read_pickle_pae_matrix(path)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 962, in read_pickle_pae_matrix  
p = pickle.load(f)  
ModuleNotFoundError: No module named 'jax'  
  
ModuleNotFoundError: No module named 'jax'  
  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 962, in read_pickle_pae_matrix  
p = pickle.load(f)  
  
See log for complete Python traceback.  
  

> color bfactor

20137 atoms, 1336 residues, atom bfactor range 18.1 to 98.2  

> color bfactor

20137 atoms, 1336 residues, atom bfactor range 18.1 to 98.2  

> color bfactor #1/A palette alphafold

7007 atoms, 466 residues, atom bfactor range 18.3 to 98.2  

> alphafold pae #1 file /Users/classen/Documents/vr-IgA2/features.pkl

File /Users/classen/Documents/vr-IgA2/features.pkl does not contain AlphaFold
predicted aligned error (PAE) data. The AlphaFold "monomer" preset does not
compute PAE. Run AlphaFold with the "monomer_ptm" or "multimer" presets to get
PAE values.  

> alphafold pae #1 file /Users/classen/Documents/vr-
> IgA2/result_model_3_multimer_v2_pred_0.pkl

Traceback (most recent call last):  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 153, in _choose_pae_file  
self._open_pae()  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 166, in _open_pae  
self._open_pae_from_file(s)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 190, in _open_pae_from_file  
run(self.session, cmd)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/run.py", line 38, in run  
results = command.run(text, log=log, return_json=return_json)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/cli.py", line 2897, in run  
result = ci.function(session, **kw_args)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 1090, in alphafold_pae  
pae = AlphaFoldPAE(file, structure)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 778, in __init__  
self._pae_matrix = read_pae_matrix(pae_path)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 905, in read_pae_matrix  
return read_pickle_pae_matrix(path)  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 962, in read_pickle_pae_matrix  
p = pickle.load(f)  
ModuleNotFoundError: No module named 'jax'  
  
ModuleNotFoundError: No module named 'jax'  
  
File
"/private/var/folders/5v/h5q6xmzn5_qgbbj1q7kw_sc80000gn/T/AppTranslocation/AAADA5C6-B2CB-40DA-
AEEA-6B94ED15A539/d/ChimeraX-1.5-rc2022.11.12.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/alphafold/pae.py", line 962, in read_pickle_pae_matrix  
p = pickle.load(f)  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 ATI-4.9.48
OpenGL renderer: AMD Radeon Pro Vega 56 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

Python: 3.9.11
Locale: UTF-8
Qt version: PyQt6 6.3.1, Qt 6.3.1
Qt runtime version: 6.3.2
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: iMac Pro
      Model Identifier: iMacPro1,1
      Processor Name: 10-Core Intel Xeon W
      Processor Speed: 3 GHz
      Number of Processors: 1
      Total Number of Cores: 10
      L2 Cache (per Core): 1 MB
      L3 Cache: 13.8 MB
      Hyper-Threading Technology: Enabled
      Memory: 64 GB
      System Firmware Version: 1916.40.8.0.0 (iBridge: 20.16.411.0.0,0)
      OS Loader Version: 564.40.4~27

Software:

    System Software Overview:

      System Version: macOS 13.0 (22A380)
      Kernel Version: Darwin 22.1.0
      Time since boot: 13 days, 4 hours, 49 minutes

Graphics/Displays:

    Radeon Pro Vega 56:

      Chipset Model: Radeon Pro Vega 56
      Type: GPU
      Bus: PCIe
      PCIe Lane Width: x16
      VRAM (Total): 8 GB
      Vendor: AMD (0x1002)
      Device ID: 0x6867
      Revision ID: 0x0000
      ROM Revision: 113-D0500D-114
      VBIOS Version: 113-D05001A1XL-018
      Option ROM Version: 113-D05001A1XL-018
      EFI Driver Version: 01.01.114
      Metal Support: Metal 3
      Displays:
        iMac:
          Display Type: Built-In Retina LCD
          Resolution: Retina 5K (5120 x 2880)
          Framebuffer Depth: 30-Bit Color (ARGB2101010)
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: Yes
          Connection Type: Internal


Installed Packages:
    alabaster: 0.7.12
    appdirs: 1.4.4
    appnope: 0.1.3
    asttokens: 2.1.0
    Babel: 2.11.0
    backcall: 0.2.0
    blockdiag: 3.0.0
    build: 0.8.0
    certifi: 2021.10.8
    cftime: 1.6.2
    charset-normalizer: 2.1.1
    ChimeraX-AddCharge: 1.4
    ChimeraX-AddH: 2.2.1
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.2.1
    ChimeraX-AlignmentMatrices: 2.0
    ChimeraX-Alignments: 2.6
    ChimeraX-AlphaFold: 1.0
    ChimeraX-AltlocExplorer: 1.0.3
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.41.5
    ChimeraX-AtomicLibrary: 8.0.3
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.3
    ChimeraX-BasicActions: 1.1.2
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.1.2
    ChimeraX-BondRot: 2.0.1
    ChimeraX-BugReporter: 1.0.1
    ChimeraX-BuildStructure: 2.7.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.2
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.3.1
    ChimeraX-ChangeChains: 1.0.2
    ChimeraX-CheckWaters: 1.3
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.2.4
    ChimeraX-ColorActions: 1.0.3
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.2
    ChimeraX-CommandLine: 1.2.4
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.5rc202211120143
    ChimeraX-CoreFormats: 1.1
    ChimeraX-coulombic: 1.3.2
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.2
    ChimeraX-Dicom: 1.1
    ChimeraX-DistMonitor: 1.3
    ChimeraX-DockPrep: 1.0
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ExperimentalCommands: 1.0
    ChimeraX-FileHistory: 1.0.1
    ChimeraX-FunctionKey: 1.0.1
    ChimeraX-Geometry: 1.2
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.1
    ChimeraX-Hbonds: 2.4
    ChimeraX-Help: 1.2.1
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-Label: 1.1.7
    ChimeraX-ListInfo: 1.1.1
    ChimeraX-Log: 1.1.5
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.8.2
    ChimeraX-Map: 1.1.2
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0.1
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1.1
    ChimeraX-Markers: 1.0.1
    ChimeraX-Mask: 1.0.1
    ChimeraX-MatchMaker: 2.0.9
    ChimeraX-MDcrds: 2.6
    ChimeraX-MedicalToolbar: 1.0.2
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1
    ChimeraX-mmCIF: 2.8
    ChimeraX-MMTF: 2.2
    ChimeraX-Modeller: 1.5.6
    ChimeraX-ModelPanel: 1.3.6
    ChimeraX-ModelSeries: 1.0.1
    ChimeraX-Mol2: 2.0
    ChimeraX-Mole: 1.0
    ChimeraX-Morph: 1.0.1
    ChimeraX-MouseModes: 1.1.1
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0.3
    ChimeraX-OpenCommand: 1.9.1
    ChimeraX-PDB: 2.6.8
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0.2
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1
    ChimeraX-PubChem: 2.1
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0.1
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.7.2
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.1.1
    ChimeraX-ShowSequences: 1.0.1
    ChimeraX-SideView: 1.0.1
    ChimeraX-Smiles: 2.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.10
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-StructMeasure: 1.1
    ChimeraX-Struts: 1.0.1
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0.1
    ChimeraX-SwapRes: 2.1.3
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.1.2
    ChimeraX-ToolshedUtils: 1.2.1
    ChimeraX-Tug: 1.0.1
    ChimeraX-UI: 1.24.3
    ChimeraX-uniprot: 2.2.1
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDockX: 1.1.4
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0.1
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0.1
    ChimeraX-WebServices: 1.1.0
    ChimeraX-Zone: 1.0.1
    colorama: 0.4.5
    cxservices: 1.2
    cycler: 0.11.0
    Cython: 0.29.32
    debugpy: 1.6.3
    decorator: 5.1.1
    docutils: 0.19
    entrypoints: 0.4
    executing: 1.2.0
    filelock: 3.7.1
    fonttools: 4.38.0
    funcparserlib: 1.0.1
    grako: 3.16.5
    h5py: 3.7.0
    html2text: 2020.1.16
    idna: 3.4
    ihm: 0.33
    imagecodecs: 2022.7.31
    imagesize: 1.4.1
    importlib-metadata: 5.0.0
    ipykernel: 6.15.3
    ipython: 8.4.0
    ipython-genutils: 0.2.0
    jedi: 0.18.1
    Jinja2: 3.1.2
    jupyter-client: 7.3.4
    jupyter-core: 5.0.0
    kiwisolver: 1.4.4
    line-profiler: 3.5.1
    lxml: 4.9.1
    lz4: 4.0.2
    MarkupSafe: 2.1.1
    matplotlib: 3.5.2
    matplotlib-inline: 0.1.6
    msgpack: 1.0.4
    nest-asyncio: 1.5.6
    netCDF4: 1.6.0
    networkx: 2.8.5
    numexpr: 2.8.4
    numpy: 1.23.1
    openvr: 1.23.701
    packaging: 21.3
    ParmEd: 3.4.3
    parso: 0.8.3
    pep517: 0.13.0
    pexpect: 4.8.0
    pickleshare: 0.7.5
    Pillow: 9.2.0
    pip: 22.2.2
    pkginfo: 1.8.3
    platformdirs: 2.5.4
    prompt-toolkit: 3.0.32
    psutil: 5.9.1
    ptyprocess: 0.7.0
    pure-eval: 0.2.2
    pycollada: 0.7.2
    pydicom: 2.3.0
    Pygments: 2.12.0
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 3.0.9
    PyQt6-commercial: 6.3.1
    PyQt6-Qt6: 6.3.2
    PyQt6-sip: 13.4.0
    PyQt6-WebEngine-commercial: 6.3.1
    PyQt6-WebEngine-Qt6: 6.3.2
    python-dateutil: 2.8.2
    pytz: 2022.6
    pyzmq: 24.0.1
    qtconsole: 5.3.1
    QtPy: 2.3.0
    RandomWords: 0.4.0
    requests: 2.28.1
    scipy: 1.9.0
    setuptools: 65.1.1
    setuptools-scm: 7.0.5
    sfftk-rw: 0.7.2
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    Sphinx: 5.1.1
    sphinx-autodoc-typehints: 1.19.1
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 2.0.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.5
    stack-data: 0.6.1
    tables: 3.7.0
    tifffile: 2022.7.31
    tinyarray: 1.2.4
    tomli: 2.0.1
    tornado: 6.2
    traitlets: 5.3.0
    typing-extensions: 4.4.0
    urllib3: 1.26.12
    wcwidth: 0.2.5
    webcolors: 1.12
    wheel: 0.37.1
    wheel-filename: 1.4.1
    zipp: 3.10.0

Attachments (1)

favicon.ico (831 bytes ) - added by sclassen@… 3 years ago.
Added by email2trac

Download all attachments as: .zip

Change History (10)

comment:1 by Eric Pettersen, 3 years ago

Component: UnassignedStructure Prediction
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionRead PAE matrix: No module named 'jax'

Reported by Scott Classen

comment:2 by Tom Goddard, 3 years ago

It looks the file with PAE that AlphaFold is writing result_model_3_multimer_v2_pred_0.pkl contains JAX data structures. JAX is the GPU acceleration library that AlphaFold uses. ChimeraX does not know about JAX and so fails opening the file. AlphaFold didn't use to write JAX data into the pkl file. Which version of AlphaFold are you using (e.g. 2.2.4)? I'm guessing this is an AlphaFold bug introduced in 2.2.4 where the accidentally wrote JAX arrays instead of numpy arrays into the pkl file due to some change.

You might be able to open the file if you install jax into ChimeraX with the ChimeraX command "pip install jax". Jax depends on a compiled library called jaxlib so maybe "pip install jaxlib" will be needed too. An anonymous user reported this same problem a few weeks ago (#7945, #7946, https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/7946) and those two installs didn't fix it, possibly because jax is not well supported on Mac and the jax AlphaFold used on Linux to write the pkl file is not compatible with the Mac Jax. But let me know what you find.

I don't have AlphaFold 2.2.4 setup locally so I don't have a pkl file with this problem to test with. Can you attach a pkl file with this problem so I can test some solutions?

in reply to:  3 ; comment:3 by sclassen@…, 3 years ago

Hello Tom,

Yes, we are using the latest commit from the alphafold GitHub repository (b8accc6), which is a few commits beyond the 2.2.4 tag.

I will try your suggestion for installing jax 

These pkl files are a bit big for email (900+ MB). I will put it in a shared Google folder.

https://drive.google.com/drive/folders/1Ml6FTdYXvmjAlyC0APhdzZUfYMxHQpmP?usp=sharing


Thanks,
Scott


Added by email2trac

by sclassen@…, 3 years ago

Attachment: favicon.ico added

Added by email2trac

comment:4 by Tom Goddard, 3 years ago

Thanks! I just installed AlphaFold 2.2.4 and started a run on a smaller multimer prediction. I figure I will need to report an bug to the AlphaFold developers so I need to be able play with my own installation to debug how this jax data structure snuck into the pkl file. Hopefully I can also find a trick in ChimeraX to read these files.

comment:5 by Tom Goddard, 3 years ago

I reproduced the error with AlphaFold 2.2.4. After I installed jax and jaxlib with ChimeraX commands "pip install jax" and "pip install jaxlib" it still fails because jax cannot be imported. Using the ChimeraX shell (menu Tools / General / Shell) and typing "import jax" gives an error

import jax
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Input In [3], in <cell line: 1>()
----> 1 import jax

File ~/Library/Application Support/ChimeraX/1.6/site-packages/jax/__init__.py:162, in <module>
    158 from jax import util as util
    160 import jax.lib  # TODO(phawkins): remove this export.
--> 162 del jax._src

AttributeError: _src

This was reported in May of 2022 in the jax Github issues but nothing has been done about it

https://github.com/google/jax/issues/10605

My guess is jax simply does not work on Mac and the jax developer Google doesn't care since it is used on Linux for machine learning with Nvidia gpus which are not even available on Mac.

comment:6 by Tom Goddard, 3 years ago

After I installed jax and jaxlib in ChimeraX and then restarted ChimeraX it was able to import jax and opening the AlphaFold 2.2.4 PAE (.pkl) file worked correctly. So this is a way to work around the problem with these .pkl files. We are not going to ship jax and jaxlib with ChimeraX but I will see if I can find some other work-around to put into ChimeraX 1.5 which is to be released in a few weeks to fix this.

comment:7 by Tom Goddard, 3 years ago

Resolution: fixed
Status: assignedclosed

Fixed in ChimeraX 1.5 release candidate and daily build.

I put in a pretty gruesome hack that makes a fake jax module in order to read these .pkl files. The PAE data does not need the jax module, but the pkl file includes many other outputs from the prediction and apparently at least one of them accidentally used jax DeviceArray.

comment:8 by Tom Goddard, 3 years ago

I've made an AlphaFold Github issue requesting that the jax data be removed from the .pkl output.

https://github.com/deepmind/alphafold/issues/629

comment:9 by Tom Goddard, 3 years ago

The AlphaFold developers appear to have removed the jax dependency in the pkl file on January 17, 2023 which should be in AlphaFold 2.3.2 and later versions. Should keep my work-around in place so people can continue to open pkl files made with older AlphaFold versions.

Note: See TracTickets for help on using tickets.