ColabFold على جهاز الكمبيوتر المحلي الخاص بك (أو macOS). انظر أيضًا مستودع ColabFold.
LocalColabFold هو برنامج نصي للتثبيت مصمم لجعل وظيفة ColabFold متاحة على الأجهزة المحلية للمستخدمين. وهو يدعم مجموعة واسعة من أنظمة التشغيل، مثل Windows 10 أو الإصدارات الأحدث (باستخدام نظام Windows الفرعي لنظام التشغيل Linux 2)، وmacOS، وLinux.
إذا كنت تنوي فقط التنبؤ بعدد صغير من البروتينات التي تحدث بشكل طبيعي، فإنني أوصي باستخدام مفكرة ColabFold أو تنزيل الهياكل من قاعدة بيانات بنية بروتين AlphaFold أو UniProt. يعد LocalColabFold مناسبًا للتطبيقات الأكثر تقدمًا، مثل المعالجة المجمعة للتنبؤات الهيكلية للمجمعات الطبيعية، أو البروتينات غير الطبيعية، أو التنبؤات باستخدام اتفاقيات اتفاقات الخدمة/القوالب المحددة يدويًا.
سيتم تسريع الاستدلال على البنية والاسترخاء إذا كان جهاز الكمبيوتر الخاص بك يحتوي على برامج تشغيل Nvidia GPU وCUDA.
لا يوجد مهلة (90 دقيقة و 12 ساعة)
لا توجد قيود GPU
ليس من الضروري إعداد قاعدة البيانات الكبيرة المطلوبة لـ AlphaFold2 الأصلي .
نظرًا لأن jax الحالي المدعوم من GPU > 0.4.26 يتطلب CUDA 12.1 أو أحدث وcudnn 9، يرجى ترقية أو تثبيت برنامج تشغيل CUDA وcudnn. يوصى باستخدام كودا 12.4.
تمت ترقية ColabFold الآن إلى الإصدار 1.5.5 (متوافق مع AlphaFold 2.3.2). الآن يتطلب LocalColabFold CUDA 12.1 أو إصدار أحدث . يرجى تحديث برنامج تشغيل CUDA الخاص بك إذا لم تقم بذلك.
الآن يستطيع ColabFold (المحلي) التنبؤ بهياكل البروتين دون الاتصال بالإنترنت. استخدم البرنامج النصي setup_databases.sh
لتنزيل قواعد البيانات وإنشائها (راجع أيضًا تنزيلات ColabFold). تمت كتابة تعليمات لتشغيل colabfold_search
للحصول على MSA والقوالب محليًا في هذا التعليق.
30 يناير 2024، ColabFold 1.5.5 (متوافق مع AlphaFold 2.3.2). الآن يتطلب LocalColabFold CUDA 12.1 أو إصدار أحدث . يرجى تحديث برنامج تشغيل CUDA الخاص بك.
30 أبريل 2023، تم التحديث لاستخدام python 3.10 للتوافق مع Google Colaboratory.
09 مارس 2023، تم إصدار الإصدار 1.5.1. تم تغيير الدليل الأساسي إلى localcolabfold
من colabfold_batch
لتمييزه عن أمر التنفيذ.
09 مارس 2023، تم إصدار الإصدار 1.5.0. راجع الإصدار v1.5.0
05 فبراير 2023، الإصدار 1.5.0 - تم إصداره مسبقًا.
16 يونيو 2022، تم إصدار الإصدار 1.4.0. راجع الإصدار v1.4.0
07 مايو 2022، تم تحديث update_linux.sh
. انظر أيضًا كيفية التحديث. الرجاء استخدام خيار جديد --use-gpu-relax
إذا كان استرخاء وحدة معالجة الرسومات مطلوبًا (مستحسن).
12 أبريل 2022، تم إصدار الإصدار 1.3.0. راجع الإصدار v1.3.0
09 ديسمبر 2021، تم إصدار الإصدار 1.2.0 التجريبي. تمت إضافة نصوص التحديث سهلة الاستخدام. راجع كيفية التحديث.
اعتبارًا من 04 ديسمبر 2021، أصبح LocalColabFold متوافقًا الآن مع أحدث نقطة قابلة للتثبيت من ColabFold. في هذا المستودع، سأقدم برنامجًا نصيًا لتثبيت ColabFold مع بعض ملفات المعلمات الخارجية لإجراء الاسترخاء مع AMBER. سيتم تنزيل معلمات الوزن الخاصة بـ AlphaFold وAlphaFold-Multimer تلقائيًا عند التشغيل الأول.
تأكد من أن أوامر curl
و git
و wget
مثبتة بالفعل على جهاز الكمبيوتر الخاص بك. إذا لم تكن موجودة، تحتاج إلى تثبيتها في البداية. بالنسبة لنظام Ubuntu، اكتب sudo apt -y install curl git wget
.
تأكد من أن برنامج تشغيل برنامج التحويل البرمجي Cuda لديك هو 11.8 أو أحدث (يفضل الإصدار الأحدث 12.4). إذا لم يكن لديك وحدة معالجة الرسومات أو لا تخطط لاستخدام وحدة معالجة الرسومات، فيمكنك تخطي هذه الخطوة:
$ nvcc --version nvcc: برنامج تشغيل المترجم NVIDIA (R) Cuda حقوق الطبع والنشر (ج) 2005-2022 لشركة NVIDIA تم البناء بتاريخ الأربعاء_21_سبتمبر_10:33:58_PDT_2022 أدوات تجميع Cuda، الإصدار 11.8، V11.8.89 بناء cuda_11.8.r11.8/compiler.31833905_0
لا تستخدم nvidia-smi
للتحقق من الإصدار.
راجع دليل تثبيت NVIDIA CUDA لنظام التشغيل Linux إذا لم تقم بتثبيته.
تأكد من أن إصدار برنامج التحويل البرمجي GNU لديك هو 9.0 أو أحدث لأن GLIBCXX_3.4.26
مطلوب لـ openmm:
$ دول مجلس التعاون الخليجي --النسخة دول مجلس التعاون الخليجي (أوبونتو 9.3.0-17ubuntu1~20.04) 9.3.0 حقوق الطبع والنشر (C) لعام 2019 محفوظة لشركة Free Software Foundation, Inc. هذا برنامج مجاني. انظر المصدر لشروط النسخ. لا يوجد ضمان؛ ولا حتى من أجل القابلية للتسويق أو الملاءمة لغرض معين.
إذا كان الإصدار 8.5.0 أو أقدم (مثل CentOS 7 أو Rocky/Almalinux 8 وما إلى ذلك)، فقم بتثبيت إصدار جديد وأضف PATH
إليه.
قم بتنزيل install_colabbatch_linux.sh
من هذا المستودع:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_linux.sh
وتشغيله في الدليل الذي تريد تثبيته:
$ باش install_colabbatch_linux.sh
بعد حوالي 5 دقائق، سيتم إنشاء دليل localcolabfold
. لا تقم بنقل هذا الدليل بعد التثبيت.
إبقاء الشبكة غير محظورة. وتحقق من إخراج السجل لمعرفة ما إذا كان هناك أي أخطاء.
إذا وجدت أخطاء في سجل الإخراج، فإن أسهل طريقة هي التحقق من الشبكة وحذف دليل localcolabfold، ثم إعادة تشغيل البرنامج النصي للتثبيت.
إضافة متغير البيئة PATH:
# لباش أو zsh # على سبيل المثال، تصدير PATH = "/home/moriwaki/Desktop/localcolabfold/colabfold-conda/bin:$PATH" تصدير PATH = "/path/to/your/localcolabfold/colabfold-conda/bin:$PATH"
يوصى بإضافة أمر التصدير هذا إلى ~/.bashrc
وإعادة تشغيل bash (سيتم تنفيذ ~/.bashrc
في كل مرة يبدأ فيها bash)
لتشغيل التوقع، اكتب
colabfold_batch إدخال الإخراج/
سيتم إنشاء ملفات النتائج في outputdir
. سيقوم هذا الأمر بتنفيذ التنبؤ بدون قوالب واسترخاء (تقليل الطاقة). إذا كنت تريد استخدام القوالب والاسترخاء، أضف علامات --templates
و --amber
، على التوالي. على سبيل المثال،
colabfold_batch --قوالب --إخراج إدخال العنبر/
سوف يكتشف colabfold_batch
تلقائيًا ما إذا كان التنبؤ مخصصًا للتنبؤ الأحادي أو المعقد. في معظم الحالات، لا يتعين على المستخدمين إضافة --model-type alphafold2_multimer_v3
لتشغيل التنبؤ المتعدد. alphafold2_multimer_v1, alphafold2_multimer_v2
متاحان أيضًا. الإعداد الافتراضي هو auto
(استخدم alphafold2_ptm
للمونومرات و alphafold2_multimer_v3
للمجمعات.)
لمزيد من التفاصيل، راجع Flags و colabfold_batch --help
.
تنبيه: إذا فشل التثبيت بسبب مشكلات في إنشاء الارتباط الرمزي ( symlink
)، فهذا يرجع إلى أن نظام ملفات Windows غير حساس لحالة الأحرف (في حين أن نظام ملفات Linux حساس لحالة الأحرف). لحل هذه المشكلة، قم بتشغيل الأمر التالي على Windows Powershell:
fsutil file SetCaseSensitiveInfo pathtolocalcolabfoldinstallation enable
استبدل pathtocolabfoldinstallation
بالمسار إلى الدليل حيث تقوم بتثبيت LocalColabFold. تأكد أيضًا من تشغيل الأمر على Windows Powershell (وليس WSL). لمزيد من التفاصيل، راجع ضبط حساسية حالة الأحرف (Microsoft).
قبل تشغيل التوقع:
export TF_FORCE_UNIFIED_MEMORY="1" export XLA_PYTHON_CLIENT_MEM_FRACTION="4.0" export XLA_PYTHON_CLIENT_ALLOCATOR="platform" export TF_FORCE_GPU_ALLOW_GROWTH="true"
يوصى بإضافة أوامر التصدير هذه إلى ~/.bashrc
وإعادة تشغيل bash (سيتم تنفيذ ~/.bashrc
في كل مرة يبدأ فيها bash)
تحذير: نظرًا لعدم وجود برنامج تشغيل Nvidia GPU/CUDA، يكون التنبؤ بالبنية على نظام التشغيل macOS أبطأ بمقدار 5 إلى 10 مرات منه على Linux+GPU . بالنسبة لتسلسل الاختبار (58 أأ)، قد يستغرق الأمر 30 دقيقة. ومع ذلك، قد يكون من المفيد اللعب بها قبل إعداد بيئة Linux+GPU.
يمكنك التحقق مما إذا كان جهاز Mac الخاص بك هو Intel أو Apple Silicon عن طريق كتابة uname -m
على Terminal.
$ uname -m x86_64# Intelarm64# ابل سيليكون
الرجاء استخدام المثبت الصحيح لجهاز Mac الخاص بك.
قم بتثبيت Homebrew إذا لم يكن موجودًا:
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
قم بتثبيت wget
و gnu-sed
و HH-suite و kalign باستخدام Homebrew:
$ تثبيت المشروب wget gnu-sed $ تثبيت Brewsci/bio/hh-suite Brewsci/bio/kalign
قم بتنزيل install_colabbatch_intelmac.sh
من هذا المستودع:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_intelmac.sh
وتشغيله في الدليل الذي تريد تثبيته:
$ باش install_colabbatch_intelmac.sh
بعد حوالي 5 دقائق، سيتم إنشاء دليل colabfold_batch
. لا تقم بنقل هذا الدليل بعد التثبيت.
الإجراء المتبقي هو نفس الإجراء "بالنسبة لنظام Linux".
ملاحظة: يعد برنامج التثبيت هذا تجريبيًا لأن معظم الحزم التابعة لم يتم اختبارها بشكل كامل على Apple Silicon Mac.
قم بتثبيت Homebrew إذا لم يكن موجودًا:
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
قم بتثبيت العديد من الأوامر باستخدام Homebrew (يتوفر الآن kalign 3.3.2!):
تثبيت $ Brew wget cmake gnu-sed $ تثبيت Brewsci/bio/hh-suite $ تثبيت Brewsci/Bio/Kalign
تثبيت أمر miniforge
باستخدام Homebrew:
$ تثبيت الشراب --cask miniforge
قم بتنزيل install_colabbatch_M1mac.sh
من هذا المستودع:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_M1mac.sh
وتشغيله في الدليل الذي تريد تثبيته:
$ باش install_colabbatch_M1mac.sh
بعد حوالي 5 دقائق، سيتم إنشاء دليل colabfold_batch
. لا تقم بنقل هذا الدليل بعد التثبيت. يمكنك تجاهل أخطاء التثبيت التي تظهر على طول الطريق .
الإجراء المتبقي هو نفس الإجراء "بالنسبة لنظام Linux".
يمكن لـ ColabFold قبول تنسيقات ملفات أو أدلة متعددة.
positional arguments: input Can be one of the following: Directory with fasta/a3m files, a csv/tsv file, a fasta file or an a3m file results Directory to write the results to
من المستحسن أن يكون سطر الرأس الذي يبدأ بـ >
قصيرًا لأن الوصف سيكون بادئة ملف الإخراج. من المقبول إدراج فواصل الأسطر في تسلسل الأحماض الأمينية.
>sp|P61823
MALKSLVLLSLLVLVLLLVRVQPSLGKETAAAKFERQHMDSSTSAASSSNYCNQMMKSRN
LTKDRCKPVNTFVHESLADVQAVCSQKNVACKNGQTNCYQSYSTMSITDCRETGSSKYPN
CAYKTTQANKHIIVACEGNPYVPVHFDASV
للتنبؤ بالمتعددات، أدخل :
بين تسلسلات البروتين.
>1BJP_homohexamer PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR
>3KUD_RasRaf_complex MTEYKLVVVGAGGVGKSALTIQLIQNHFVDEYDPTIEDSYRKQVVIDGETCLLDILDTAGQEEYSAMRDQ YMRTGEGFLCVFAINNTKSFEDIHQYREQIKRVKDSDDVPMVLVGNKCDLAARTVESRQAQDLARSYGIP YIETSAKTRQGVEDAFYTLVREIRQH: PSKTSNTIRVFLPNKQRTVVNVRNGMSLHDCLMKALKVRGLQPECCAVFRLLHEHKGKKARLDWNTDAAS LIGEELQVDFL
تؤدي أسطر الرأس المتعددة >
ذات التسلسلات في ملف بتنسيق FASTA إلى تنبؤات متعددة مرة واحدة في دليل الإخراج المحدد.
في تنسيق CSV، يجب فصل id
sequence
بـ ,
id,sequence
5AWL_1,YYDPETGTWY
3G5O_A_3G5O_B,MRILPISTIKGKLNEFVDAVSSTQDQITITKNGAPAAVLVGADEWESLQETLYWLAQPGIRESIAEADADIASGRTYGEDEIRAEFGVPRRPH:MPYTVRFTTTARRDLHKLPPRILAAVVEFAFGDLSREPLRVGKPLRRELAGTFSARRGTYRLLYRIDDEHTTVVILRVDHRADIYRR
يمكنك إدخال ملف MSA بتنسيق a3m. بالنسبة للتنبؤات المتعددة، يجب أن يكون ملف a3m متوافقًا مع تنسيق colabfold.
هذه الأعلام مفيدة للتنبؤات.
--amber
: استخدم العنبر لتحسين البنية (الاسترخاء/تقليل الطاقة). للتحكم في عدد الهياكل الأعلى مرتبة، يتم ضبطها على مجموعة --num-relax
.
--templates
: استخدم القوالب من pdb.
--use-gpu-relax
: قم بتشغيل العنبر على وحدة معالجة الرسومات NVidia بدلاً من وحدة المعالجة المركزية. هذه الميزة متاحة فقط على جهاز مزود بوحدات معالجة الرسومات Nvidia.
--num-recycle
: عدد مرات إعادة تدوير التنبؤ. يمكن أن تؤدي زيادة عمليات إعادة التدوير إلى تحسين الجودة ولكنها تؤدي إلى إبطاء عملية التنبؤ. الافتراضي هو 3
. (على سبيل المثال --num-recycle 10
)
--custom-template-path
: تقييد ملفات القالب المستخدمة لـ --template
على تلك الموجودة في الدليل المحدد فقط. تمكننا هذه العلامة من استخدام ملفات pdb غير العامة للتنبؤ. انظر أيضًا sokrypton/ColabFold#177.
--random-seed
يمكن أن يؤدي تغيير البذرة لمولد الأرقام العشوائية إلى تنبؤات مختلفة للبنية. (على سبيل المثال --random-seed 42
)
--num-seeds
عدد البذور التي يجب تجربتها. سيتم التكرار من النطاق (random_seed، Random_seed+num_seeds). (على سبيل المثال --num-seed 5
)
--max-msa
: يحدد: max-seq:max-extra-seq
عدد التسلسلات المراد استخدامها (على سبيل المثال --max-msa 512:1024
). تتوفر أيضًا وسيطات --max-seq
و --max-extra-seq
إذا كنت تريد تحديدها بشكل منفصل. يعد هذا بمثابة إعادة تنفيذ لورقة أخذ العينات من الحالات التوافقية البديلة للناقلات والمستقبلات باستخدام AlphaFold2 التي أظهرها del Alamo et al .
--use-dropout
: تنشيط المتسربين أثناء الاستدلال على عينة من عدم اليقين في النماذج.
--overwrite-existing-results
: الكتابة فوق ملفات النتائج.
لمزيد من المعلومات، colabfold_batch --help
.
نظرًا لأن ColabFold لا يزال قيد التقدم، فيجب أيضًا تحديث localcolabfold الخاص بك بشكل متكرر لاستخدام أحدث الميزات. ويتم توفير برنامج نصي للتحديث سهل الاستخدام لهذا الغرض.
لتحديث localcolabfold الخاص بك، ما عليك سوى تنفيذ ما يلي:
# ضبط نظام التشغيل الخاص بك حدد أحد المتغيرات التالية {linux,intelmac,M1mac}$ OS=linux # إذا كان Linux# انتقل إلى الدليل الذي قمت بتثبيت localcolabfold فيه، على سبيل المثال$ cd /home/moriwaki/Desktop/localcolabfold/# احصل على آخر تحديث$ wget https //raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/update_${OS}.sh -O update_${OS}.sh $ chmod +x update_${OS}.sh# تنفيذه.$ ./update_${OS}.sh .
ماذا يجب أن أفعل قبل التثبيت؟ هل أحتاج إلى امتيازات Sudo؟
لا، باستثناء تثبيت أوامر curl
و wget
.
هل أحتاج إلى إعداد قاعدة بيانات كبيرة مثل PDB70، BFD، Uniclust30، MGnify؟
رقم ليس من الضروري. يتم تنفيذ إنشاء MSA بواسطة خادم الويب MMseqs2، تمامًا كما تم تنفيذه في ColabFold.
هل تتوفر نقاط pLDDT وأرقام PAE؟
نعم، سيتم إنشاؤها تمامًا مثل ColabFold.
هل من الممكن التنبؤ بالمتجانسات والمجمعات؟
نعم، تنسيق تسلسل الإدخال هو نفس تنسيق ColabFold. راجع query_sequence:
واستخدامه لـ ColabFold: AlphaFold2 باستخدام MMseqs2.
هل من الممكن إنشاء MSA بواسطة آلات ثقب الصخور؟
لا، فهو غير مدعوم حاليًا .
أريد استخدام وحدات معالجة الرسومات المتعددة لإجراء التنبؤ.
لا يدعم AlphaFold وColabFold وحدات معالجة الرسومات المتعددة . يمكن لوحدة معالجة الرسومات (GPU) واحدة فقط أن تصمم البروتين الخاص بك.
لدي وحدات معالجة رسومات متعددة. هل يمكنني تحديد تشغيل LocalColabfold على كل وحدة معالجة رسومات؟
استخدم متغير البيئة CUDA_VISIBLE_DEVICES
. انظر رقم 200.
تلقيت رسالة خطأ CUDA_ERROR_ILLEGAL_ADDRESS: an illegal memory access was encountered
.
ربما لم تقم بالتحديث إلى CUDA 11.8 أو الأحدث. يرجى التحقق من إصدار برنامج التحويل البرمجي Cuda باستخدام أمر nvcc --version
، وليس nvidia-smi
.
هل هذا متاح على نظام التشغيل Windows 10؟
يمكنك تشغيل LocalColabFold على نظام التشغيل Windows 10 الخاص بك باستخدام WSL2.
(جديد!) أريد استخدام ملف MSA مخصص بتنسيق a3m.
يمكن لـ ColabFold قبول ملفات الإدخال المختلفة الآن . انظر رسالة المساعدة. يمكنك تعيين ملف A3M الخاص بك، أو ملف fasta الذي يحتوي على تسلسلات متعددة (بتنسيق FASTA)، أو دليل يحتوي على ملفات fasta متعددة.
تم تقديم البرنامج التعليمي ColabFold في نادي تصميم ونمذجة البروتين في بوسطن. [فيديو] [شرائح].
تم إنشاء colabfold الأصلي لأول مرة بواسطة سيرجي أوفتشينيكوف (@sokrypton)، وميلوت ميرديتا (@milot_mirdita)، ومارتن ستينيجر (@thesteinegger).
Mirdita M، وSchütze K، وMoriwaki Y، وHeo L، وOvchinnikov S، وSteinegger M. ColabFold - جعل طي البروتين في متناول الجميع.
أساليب الطبيعة (2022) دوى: 10.1038/s41592-022-01488-1
إذا كنت تستخدم AlphaFold ، فيرجى أيضًا الاستشهاد بما يلي:
الطائر وآخرون. "تنبؤ دقيق للغاية ببنية البروتين باستخدام AlphaFold."
الطبيعة (2021) دوى: 10.1038/s41586-021-03819-2
إذا كنت تستخدم AlphaFold-multimer ، فيرجى أيضًا الاستشهاد بما يلي:
إيفانز وآخرون. "التنبؤ المعقد بالبروتين باستخدام AlphaFold-Multimer."
BioRxiv (2022) دوى: 10.1101/2021.10.04.463034v2