الدافع: تبين أن نماذج لغة البروتين العامة تلخص دلالات تسلسل البروتين إلى تمثيلات مفيدة للطرق التنبؤية الحديثة. ومع ذلك ، بالنسبة للمشاكل المحددة للأجسام المضادة ، مثل استعادة البقايا المفقودة بسبب أخطاء التسلسل ، قد يكون النموذج المدرب فقط على الأجسام المضادة أكثر قوة. تعد الأجسام المضادة واحدة من أنواع البروتين القليلة التي يتوفر فيها حجم بيانات التسلسل المطلوبة لنماذج اللغة هذه ، على سبيل المثال في قاعدة بيانات مساحة الأجسام المضادة المرصودة (OAS).
النتائج: هنا ، نقدم Ablang ، وهو نموذج لغة تم تدريبه على تسلسل الأجسام المضادة في قاعدة بيانات OAS. نوضح قوة Ablang باستخدامه لاستعادة البقايا المفقودة في بيانات تسلسل الأجسام المضادة ، وهي مشكلة رئيسية في تسلسل ذخيرة مستقبلات B-Cell ، على سبيل المثال ، تفتقد أكثر من 40 ٪ من تسلسل OAS الأحماض الأمينية الخمسة عشر الأولى. يستعيد Ablang البقايا المفقودة لتسلسل الأجسام المضادة بشكل أفضل من استخدام خطوط الجراثيم IMGT أو نموذج لغة البروتين العام ESM-1B. علاوة على ذلك ، لا يتطلب Ablang معرفة خط الجرثومة للجسم المضاد وهو أسرع بسبع مرات من ESM-1B.
التوفر والتنفيذ: Ablang عبارة عن حزمة Python متوفرة على https://github.com/oxpig/ablang.
Ablang متاح بحرية ويمكن تثبيته مع PIP.
pip install ablangأو مباشرة من جيثب.
pip install -U git+https://github.com/oxpig/AbLang.gitNB: إذا كنت تستخدم الوسيطة "align = true" ، فأنت بحاجة إلى تثبيت إصدار من Anarci يدويًا في نفس البيئة. يمكن أيضًا تثبيت Anarci باستخدام Bioconda ؛ ومع ذلك ، يتم الحفاظ على هذا الإصدار من قبل طرف ثالث.
conda install -c bioconda anarciيمكن العثور على دفتر Jupyter الذي يوضح حالات الاستخدام المختلفة لـ Ablang وبناتها البناء هنا.
حاليًا ، يمكن استخدام Ablang لإنشاء ثلاثة تمثيل/تشفيرات مختلفة لتسلسل الأجسام المضادة.
RES-Codings: هذه الترميزات هي 768 قيمة لكل بقايا ، مفيدة لتنبؤات محددة بقايا.
SEQ-Codings: هذه الترميزات هي 768 قيمًا لكل تسلسل ، مفيدة لتوقعات التسلسل المحددة. نفس طول الترميز لكل تسلسل ، يعني أن هذه الترميزات تزيل أيضًا الحاجة إلى مواءمة تسلسل الأجسام المضادة.
Res-Kieliurodes: هذه الترميزات هي احتمالية كل حمض أميني في كل موضع في تسلسل جسم مضاد معين ، مفيدة لاستكشاف الطفرات المحتملة. يتبع ترتيب الأحماض الأمينية مفردات Ablang.
يمكن استخدام هذه التمثيلات لعدد كبير من تطبيقات تصميم الأجسام المضادة. على سبيل المثال ، استخدمنا res resbirodes من Ablang لاستعادة البقايا المفقودة في تسلسل الأجسام المضادة بسبب أخطاء التسلسل ، مثل القواعد الغامضة ، أو قيود تقنيات التسلسل المستخدمة.
يمكن إجراء استعادة تسلسل الأجسام المضادة باستخدام وضع "استعادة" كما هو موضح أدناه.
import ablang
heavy_ablang = ablang.pretrained("heavy") # Use "light" if you are working with light chains
heavy_ablang.freeze()
seqs = [
'EV*LVESGPGLVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS',
'*************PGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNK*YADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTL*****',
]
heavy_ablang(seqs, mode='restore')
يظهر ناتج أعلاه أدناه.
array(['EVQLVESGPGLVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS',
'QVQLVESGGGVVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS'],
dtype='<U121')لاستعادة عدد غير معروف من المخلفات المفقودة في نهايات تسلسل الأجسام المضادة ، يمكن ضبط المعلمة "المحاذاة" على صحيح.
seqs = [
'EV*LVESGPGLVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS',
'PGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNK*YADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTL',
]
heavy_ablang(seqs, mode='restore', align=True)
يظهر ناتج أعلاه أدناه.
array(['EVQLVESGPGLVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS',
'QVQLVESGGGVVQPGKSLRLSCVASGFTFSGYGMHWVRQAPGKGLEWIALIIYDESNKYYADSVKGRFTISRDNSKNTLYLQMSSLRAEDTAVFYCAKVKFYDPTAPNDYWGQGTLVTVSS'],
dtype='<U121') @article{Olsen2022,
title={AbLang: An antibody language model for completing antibody sequences},
author={Tobias H. Olsen, Iain H. Moal and Charlotte M. Deane},
journal={bioRxiv},
doi={https://doi.org/10.1101/2022.01.20.477061},
year={2022}
}