นี่คือโค้ดเบสอย่างเป็นทางการสำหรับ scGPT: มุ่งสู่การสร้างแบบจำลองพื้นฐานสำหรับ Multi-omics เซลล์เดียวโดยใช้ Generative AI
!อัปเดต : เราได้เปิดตัวจุดตรวจ scGPT ที่ได้รับการฝึกอบรมใหม่หลายจุด โปรดดูส่วนจุดตรวจ scGPT ที่ผ่านการฝึกอบรมแล้ว สำหรับรายละเอียดเพิ่มเติม
[2024.02.26] เราได้ให้การสนับสนุนเบื้องต้นสำหรับการรันเวิร์กโฟลว์การฝึกล่วงหน้าด้วย HuggingFace ที่สาขา integrated-huggingface-model เราจะทำการทดสอบเพิ่มเติมและรวมเข้ากับสาขาหลักเร็วๆ นี้
[2023.12.31] บทช่วยสอนใหม่เกี่ยวกับแอปพลิเคชัน Zero-shot พร้อมให้ใช้งานแล้ว! โปรดดูในไดเร็กทอรีบทช่วยสอน/zero-shot นอกจากนี้เรายังมีจุดตรวจสอบแบบจำลองที่ได้รับการฝึกอบรมอย่างต่อเนื่องใหม่สำหรับงานที่เกี่ยวข้องกับการฝังเซลล์ โปรดดูสมุดบันทึกสำหรับรายละเอียดเพิ่มเติม
[2023.11.07] ตามที่หลาย ๆ คนร้องขอ ตอนนี้เราได้กำหนดให้การสนใจแบบแฟลชเป็นทางเลือกเสริม ตุ้มน้ำหนักที่ฝึกไว้ล่วงหน้าสามารถโหลดได้บนแบ็กเอนด์ pytorch CPU, GPU และ flash-attn โดยใช้ฟังก์ชัน load_pretrained เดียวกันคือ load_pretrained(target_model, torch.load("path_to_ckpt.pt"))
ตัวอย่างการใช้งานก็อยู่ที่นี่เช่นกัน
[2023.09.05] เราได้เปิดตัวคุณสมบัติใหม่สำหรับตัวอย่างการแมปอ้างอิงไปยังชุดข้อมูลอ้างอิงที่กำหนดเองหรือเซลล์นับล้านทั้งหมดที่รวบรวมจาก CellXGene! ด้วยความช่วยเหลือของห้องสมุด fais เราจึงประสบความสำเร็จในด้านเวลาและประสิทธิภาพของหน่วยความจำที่ยอดเยี่ยม ดัชนีมากกว่า 33 ล้านเซลล์ใช้หน่วยความจำน้อยกว่า 1GB เท่านั้น และการค้นหาความคล้ายคลึงกันใช้เวลาน้อยกว่า 1 วินาทีสำหรับเซลล์สืบค้น 10,000 เซลล์บน GPU โปรดดูบทช่วยสอนการแมปอ้างอิงสำหรับรายละเอียดเพิ่มเติม
ขณะนี้ scGPT มีให้บริการในแอปออนไลน์ต่อไปนี้แล้ว ดังนั้นคุณจึงสามารถเริ่มต้นใช้งานได้อย่างง่ายดายด้วยเบราว์เซอร์ของคุณ!
scGPT ทำงานร่วมกับ Python >= 3.7.13 และ R >=3.6.1 โปรดตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Python และ R เวอร์ชันที่ถูกต้องไว้ล่วงหน้าแล้ว
scGPT พร้อมใช้งานบน PyPI หากต้องการติดตั้ง scGPT ให้รันคำสั่งต่อไปนี้:
pip install scgpt " flash-attn<1.0.5 " # optional, recommended
# As of 2023.09, pip install may not run with new versions of the google orbax package, if you encounter related issues, please use the following command instead:
# pip install scgpt "flash-attn<1.0.5" "orbax<0.1.8"
[ไม่บังคับ] เราขอแนะนำให้ใช้ไม้กายสิทธิ์สำหรับการบันทึกและการแสดงภาพ
pip install wandb
สำหรับการพัฒนา เราใช้ตัวจัดการแพ็คเกจ Poetry หากต้องการติดตั้ง Poetry ให้ทำตามคำแนะนำที่นี่
$ git clone this-repo-url
$ cd scGPT
$ poetry install
หมายเหตุ : โดยทั่วไปการพึ่งพา flash-attn
ต้องใช้ GPU และเวอร์ชัน CUDA เฉพาะ หากคุณพบปัญหาใดๆ โปรดดูที่พื้นที่เก็บข้อมูล flash-attn สำหรับคำแนะนำในการติดตั้ง สำหรับตอนนี้ในเดือนพฤษภาคม 2023 เราขอแนะนำให้ใช้ CUDA 11.7 และ flash-attn<1.0.5 เนื่องจากมีปัญหาต่างๆ ที่รายงานเกี่ยวกับการติดตั้ง flash-attn เวอร์ชันใหม่
นี่คือรายการโมเดลที่ได้รับการฝึกล่วงหน้า กรุณาค้นหาลิงค์สำหรับดาวน์โหลดโฟลเดอร์จุดตรวจ เราขอแนะนำให้ใช้โมเดล whole-human
สำหรับแอปพลิเคชันส่วนใหญ่ตามค่าเริ่มต้น หากชุดข้อมูลการปรับแต่งของคุณแชร์บริบทประเภทเซลล์ที่คล้ายคลึงกันกับข้อมูลการฝึกของแบบจำลองเฉพาะอวัยวะ โมเดลเหล่านี้ก็สามารถแสดงให้เห็นถึงประสิทธิภาพการแข่งขันได้เช่นกัน ไฟล์คำศัพท์ที่จับคู่ชื่อยีนการจับคู่กับรหัสมีให้ในแต่ละโฟลเดอร์จุดตรวจสอบ หากจำเป็นต้องใช้รหัส ENSEMBL โปรดดูการแปลงที่ gene_info.csv
ชื่อรุ่น | คำอธิบาย | ดาวน์โหลด |
---|---|---|
ทั้งมนุษย์ (แนะนำ) | ได้รับการฝึกฝนกับเซลล์ปกติของมนุษย์จำนวน 33 ล้านเซลล์ | ลิงค์ |
ฝึกฝนอย่างต่อเนื่อง | สำหรับการฝังเซลล์แบบ Zero-shot ที่เกี่ยวข้องกับงาน | ลิงค์ |
สมอง | ฝึกฝนกับเซลล์สมอง 13.2 ล้านเซลล์ | ลิงค์ |
เลือด | ฝึกฝนกับเซลล์เม็ดเลือดและไขกระดูกจำนวน 10.3 ล้านเซลล์ | ลิงค์ |
หัวใจ | ฝึกฝนกับเซลล์หัวใจ 1.8 ล้านเซลล์ | ลิงค์ |
ปอด | ฝึกฝนกับเซลล์ปอด 2.1 ล้านเซลล์ | ลิงค์ |
ไต | ฝึกฝนกับเซลล์ไต 814,000 เซลล์ | ลิงค์ |
มะเร็งตับ | ฝึกฝนกับเซลล์มะเร็งชนิดต่างๆ จำนวน 5.7 ล้านเซลล์ | ลิงค์ |
โปรดดูโค้ดตัวอย่างของเราใน example/finetune_integration.py ตามค่าเริ่มต้น สคริปต์จะถือว่าโฟลเดอร์จุดตรวจสอบ scGPT เก็บไว้ในไดเร็กทอรี examples/save
เรายินดีเป็นอย่างยิ่งที่มีส่วนร่วมใน scGPT กรุณาส่งคำขอดึงหากคุณมีความคิดหรือแก้ไขข้อบกพร่อง นอกจากนี้เรายังยินดีรับทุกปัญหาที่คุณพบขณะใช้งาน scGPT
เราขอขอบคุณผู้เขียนโครงการโอเพ่นซอร์สต่อไปนี้อย่างจริงใจ:
@article { cui2023scGPT ,
title = { scGPT: Towards Building a Foundation Model for Single-Cell Multi-omics Using Generative AI } ,
author = { Cui, Haotian and Wang, Chloe and Maan, Hassaan and Pang, Kuan and Luo, Fengning and Wang, Bo } ,
journal = { bioRxiv } ,
year = { 2023 } ,
publisher = { Cold Spring Harbor Laboratory }
}