| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
- ncbi
- Java
- 바이오파이썬
- SVM
- AP Computer Science A
- 오류역전파
- 로제타폴드
- CNN
- Kaggle
- BLaST
- 생명정보학
- 딥러닝
- 알파폴드
- 인공지능
- 결정트리
- 단백질 구조 예측
- 시그모이드
- 인공지능 수학
- bioinformatics
- AP
- COVID
- 파이썬
- 인공신경망
- 자바
- 생물정보학
- 이항분포
- 캐글
- 바이오인포매틱스
- 서열정렬
- RNN
- Today
- Total
데이터 과학
AlphaFold 3 설치 및 데이터베이스 구축하기 본문
AlphaFold 3 설치 및 데이터베이스 구축하기
AlphaFold 3는 단백질뿐 아니라 DNA, RNA, 리간드, 이온 및 다양한 생체분자 복합체의 3차원 구조를 예측할 수 있는 인공지능 기반 구조예측 시스템입니다. 로컬 Ubuntu 환경에 AlphaFold 3를 설치하려면 단순히 프로그램 소스만 내려받는 것으로 끝나지 않습니다. NVIDIA GPU 환경, Docker, 모델 파라미터, 그리고 수백 GB 규모의 생물정보학 데이터베이스까지 함께 준비해야 합니다.
이 글에서는 Ubuntu 환경에서 AlphaFold 3를 설치하는 전체 과정을 프로그램 설치, GPU 설정, 데이터베이스 구축, 입력 파일 작성, 구조 예측 실행, 결과 확인까지 순서대로 설명합니다.
1. AlphaFold 3의 전체 구조
AlphaFold 3는 크게 다음과 같은 요소로 구성됩니다.
프로그램 소스 코드
+
모델 파라미터
+
생명정보학 데이터베이스
+
GPU 실행 환경
전체적인 실행 흐름은 다음과 같습니다.
입력 서열 또는 분자 정보
↓
생물정보학 데이터베이스 검색
↓
MSA 및 구조 정보 생성
↓
AlphaFold 3 모델
↓
GPU 기반 추론
↓
3차원 구조 생성
↓
mmCIF 결과 파일
단백질을 예로 들면 입력 단백질 서열은 UniRef90, Small BFD, MGnify, UniProt 등을 이용하여 관련 단백질을 검색합니다. 이렇게 확보된 정보를 바탕으로 MSA를 생성하고, PDB 구조 데이터베이스에서 template 정보를 찾아 최종적으로 AlphaFold 3 모델에 전달합니다.
2. RoseTTAFold-All-Atom과 AlphaFold 3의 차이
RoseTTAFold-All-Atom과 AlphaFold 3는 모두 단백질 및 복합체 구조를 예측할 수 있지만 사용하는 데이터베이스 구성과 실행 방식은 다릅니다.
RoseTTAFold-All-Atom에서는 주로 다음 데이터를 사용합니다.
UniRef30
Full BFD
PDB100
Legacy BLAST 2.2.26
AlphaFold 3에서는 다음 데이터를 사용합니다.
Small BFD
MGnify
UniRef90
UniProt
PDB SeqRes
PDB mmCIF
NT
Rfam
RNAcentral
즉 RoseTTAFold-All-Atom은 단백질 중심의 전처리 환경에 가깝고, AlphaFold 3는 단백질뿐 아니라 RNA와 다양한 생체분자 복합체까지 고려하기 때문에 데이터베이스 종류가 더 다양합니다.
3. 권장 하드웨어 환경
AlphaFold 3를 로컬에서 안정적으로 사용하려면 GPU와 SSD가 중요합니다.
권장 환경은 다음과 같습니다.
운영체제
Ubuntu Linux
CPU
64-bit x86 계열
메모리
최소 32GB 이상 권장
가능하면 64GB 이상
GPU
NVIDIA CUDA 지원 GPU
저장장치
NVMe SSD 권장
데이터베이스 공간
최소 수백 GB 이상
전체 구축 시 약 1TB 수준의 여유 공간 권장
데이터베이스 검색 속도를 고려하면 HDD보다 NVMe SSD를 사용하는 것이 좋습니다.
4. AlphaFold 3 전용 디렉터리 만들기
먼저 AlphaFold 3 전용 작업 디렉터리를 만듭니다.
sudo mkdir -p /data/alphafold3
sudo chown -R $USER:$USER /data/alphafold3
필요한 하위 디렉터리를 생성합니다.
mkdir -p /data/alphafold3/program
mkdir -p /data/alphafold3/models
mkdir -p /data/alphafold3/databases
mkdir -p /data/alphafold3/input
mkdir -p /data/alphafold3/output
mkdir -p /data/alphafold3/downloads
구조는 다음과 같습니다.
/data/alphafold3/
├── program/
│ └── alphafold3/
│
├── models/
│
├── databases/
│
├── input/
│
├── output/
│
└── downloads/
프로그램, 모델, 데이터베이스, 입력, 출력을 분리하면 나중에 관리하기 편리합니다.
5. 저장공간 확인
대용량 데이터베이스를 설치하기 전에 반드시 SSD 공간을 확인합니다.
df -h
또는:
df -h /data
AlphaFold 3 데이터베이스는 다운로드 상태보다 압축 해제 후 훨씬 큰 공간을 사용합니다.
다른 구조예측 프로그램의 데이터베이스가 이미 같은 SSD에 설치되어 있다면 AlphaFold 3 데이터베이스를 별도 SSD에 두는 방법도 좋습니다.
예를 들어:
내부 SSD
/data/alphafold3/program
/data/alphafold3/models
/data/alphafold3/input
/data/alphafold3/output
외장 NVMe SSD
/mnt/af3db/databases
처럼 나누어 사용할 수 있습니다.
6. NVIDIA GPU 확인
AlphaFold 3는 GPU 추론을 수행하므로 NVIDIA GPU가 정상적으로 작동하는지 먼저 확인해야 합니다.
nvidia-smi
정상이라면 다음 정보가 표시됩니다.
NVIDIA GPU 모델
NVIDIA Driver 버전
CUDA Version
GPU 메모리
GPU 사용률
이 단계에서 GPU가 보이지 않는다면 AlphaFold 3 설치보다 NVIDIA 드라이버 문제를 먼저 해결해야 합니다.
7. Docker 설치
AlphaFold 3는 공식적으로 Docker 환경을 이용하는 방법이 편리합니다.
Docker가 설치되어 있는지 확인합니다.
docker --version
설치되어 있지 않다면 Docker Engine을 설치합니다.
설치 후 Docker 서비스를 활성화합니다.
sudo systemctl enable --now docker
상태를 확인합니다.
sudo systemctl status docker
그리고 다시:
docker --version
으로 확인합니다.
8. NVIDIA Container Toolkit 설치
Docker 안에서 NVIDIA GPU를 사용하려면 NVIDIA Container Toolkit이 필요합니다.
설치 후 다음 명령으로 Docker runtime을 설정합니다.
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
Docker 내부에서도 GPU가 정상적으로 보이는지 확인합니다.
sudo docker run --rm --gpus all \
nvidia/cuda:12.6.3-base-ubuntu24.04 \
nvidia-smi
여기서 GPU가 표시되면 다음 연결이 정상입니다.
Ubuntu
↓
NVIDIA Driver
↓
Docker
↓
NVIDIA Container Toolkit
↓
NVIDIA GPU
9. AlphaFold 3 프로그램 다운로드
프로그램 디렉터리로 이동합니다.
cd /data/alphafold3/program
공식 저장소를 clone합니다.
git clone https://github.com/google-deepmind/alphafold3.git
설치 디렉터리로 이동합니다.
cd alphafold3
확인합니다.
ls
다음과 같은 파일과 디렉터리가 보이면 정상입니다.
docker
docs
src
run_alphafold.py
fetch_databases.sh
README.md
10. Docker Image 만들기
AlphaFold 3 설치 디렉터리에서 Docker image를 생성합니다.
cd /data/alphafold3/program/alphafold3
실행합니다.
docker build \
-f docker/Dockerfile \
-t alphafold3 .
권한 문제가 발생하면 다음처럼 실행할 수 있습니다.
sudo docker build \
-f docker/Dockerfile \
-t alphafold3 .
완료 후 확인합니다.
docker images
목록에:
alphafold3
가 보이면 image 생성이 완료된 것입니다.
11. AlphaFold 3 모델 파라미터
AlphaFold 3의 프로그램 소스와 모델 파라미터는 서로 다릅니다.
AlphaFold 3 source code
≠
AlphaFold 3 model parameters
GitHub에서 소스를 clone했다고 해서 구조예측 모델이 완전히 준비된 것은 아닙니다.
공식 안내에 따라 모델 파라미터를 별도로 준비해야 합니다.
모델은 다음 위치에 저장하는 것을 권장합니다.
/data/alphafold3/models/
확인합니다.
ls -lh /data/alphafold3/models
12. AlphaFold 3에서 사용하는 데이터베이스
AlphaFold 3의 로컬 설치에서 가장 중요한 부분 중 하나입니다.
주요 데이터베이스는 다음과 같습니다.
Small BFD
MGnify
UniRef90
UniProt
PDB SeqRes
PDB mmCIF
NT
Rfam
RNAcentral
각 데이터베이스는 서로 다른 역할을 담당합니다.
13. UniRef90
UniRef90은 UniProt 단백질 서열을 유사도에 따라 군집화한 데이터베이스입니다.
AlphaFold 3에서는 입력 단백질과 유사한 단백질 서열을 찾는 데 사용됩니다.
입력 단백질
↓
UniRef90 검색
↓
유사 단백질 탐색
↓
MSA 생성
↓
진화적 정보
대표적인 데이터 파일은 다음과 같은 형태입니다.
uniref90_2022_05.fa
RoseTTAFold-All-Atom에서 UniRef30을 사용했다면 AlphaFold 3에서는 UniRef90을 사용하는 것이 주요 차이 중 하나입니다.
14. Small BFD
BFD는 Big Fantastic Database의 약자입니다.
단백질 서열을 대규모로 검색하여 MSA를 보강하는 데 사용됩니다.
AlphaFold 3에서는 RoseTTAFold-All-Atom에서 사용하는 거대한 full BFD 대신 Small BFD를 사용합니다.
대표적인 파일은 다음과 같습니다.
bfd-first_non_consensus_sequences.fasta
역할은 다음과 같습니다.
Protein
↓
Small BFD
↓
추가 유사 서열 검색
↓
MSA 보강
따라서 full BFD를 사용하는 RFAA보다 저장공간 부담이 상대적으로 작습니다.
15. MGnify
MGnify는 metagenomics에서 얻어진 단백질 서열 정보를 제공합니다.
토양, 해양, 장내 미생물 등에는 실험실에서 배양하기 어려운 미생물이 매우 많습니다.
이들의 유전 정보를 직접 분석하여 대규모 단백질 서열을 얻는 것이 metagenomics입니다.
환경 시료
↓
Metagenomics
↓
단백질 서열
↓
MGnify
대표적인 파일은 다음과 같습니다.
mgy_clusters_2022_05.fa
MGnify는 UniRef90에서 충분한 유사 단백질을 찾지 못했을 때 추가적인 진화 정보를 제공할 수 있습니다.
16. UniProt
UniProt은 대표적인 단백질 서열 및 기능 정보 데이터베이스입니다.
AlphaFold 3에서는 UniRef90과 별도로 UniProt 전체 단백질 서열 데이터도 사용합니다.
대표적인 파일은:
uniprot_all_2021_04.fa
입니다.
UniRef는 UniProt에서 출발한 단백질 서열을 유사도에 따라 clustering한 데이터라고 이해하면 쉽습니다.
UniProt
↓
Sequence clustering
↓
UniRef
17. PDB mmCIF
Protein Data Bank는 실험적으로 밝혀진 생체분자의 3차원 구조를 저장하는 대표적인 구조 데이터베이스입니다.
AlphaFold 3에서는 PDB 구조를 mmCIF 형식으로 사용합니다.
다음과 같은 디렉터리 형태로 저장됩니다.
mmcif_files/
이 구조 정보는 template 검색에 활용됩니다.
입력 단백질
↓
PDB 검색
↓
관련 구조 발견
↓
Template
↓
AlphaFold 3
18. PDB SeqRes
PDB SeqRes는 PDB 구조와 연결된 polymer sequence 정보를 제공합니다.
쉽게 구분하면 다음과 같습니다.
PDB mmCIF
→ 3차원 구조 정보
PDB SeqRes
→ 해당 구조를 구성하는 서열 정보
대표적인 파일은 다음과 같은 형태입니다.
pdb_seqres_2022_09_28.fasta
19. NT 데이터베이스
AlphaFold 3는 단백질뿐 아니라 핵산도 다루기 때문에 nucleotide sequence 데이터가 필요합니다.
NT 계열 데이터는 RNA 등 핵산 서열 검색에 사용됩니다.
대표적인 파일은 다음과 같은 형태입니다.
nt_rna_...fasta
RNA 구조 예측에 필요한 관련 서열을 찾는 데 활용됩니다.
20. Rfam
Rfam은 RNA family 데이터베이스입니다.
서로 진화적으로 관련된 RNA들을 family 단위로 분류하고 서열과 구조적 특징을 제공합니다.
RNA 서열
↓
Rfam
↓
관련 RNA family
↓
RNA MSA
↓
AlphaFold 3
Rfam은 RNA 구조 예측에서 중요한 진화 정보를 제공합니다.
21. RNAcentral
RNAcentral은 여러 RNA 데이터베이스의 정보를 통합한 RNA sequence resource입니다.
AlphaFold 3에서는 Rfam과 NT 계열 데이터와 함께 RNA 검색과 MSA 구축에 활용됩니다.
RNA sequence
│
┌────┼─────────┐
▼ ▼ ▼
NT Rfam RNAcentral
│ │ │
└────┼─────────┘
↓
RNA MSA
↓
AlphaFold 3
22. AlphaFold 3 데이터베이스 전체 구조
데이터베이스 설치가 완료되면 대략 다음과 같은 구조를 볼 수 있습니다.
public_databases/
├── bfd-first_non_consensus_sequences.fasta
├── mgy_clusters_2022_05.fa
├── uniref90_2022_05.fa
├── uniprot_all_2021_04.fa
│
├── pdb_seqres_2022_09_28.fasta
├── mmcif_files/
│
├── nt_rna_...
├── rfam_...
└── rnacentral_...
파일 이름과 버전은 설치 시점에 따라 달라질 수 있습니다.
따라서 인터넷에서 각각의 데이터베이스를 임의로 다운로드하기보다 AlphaFold 3 공식 저장소에 포함된 fetch_databases.sh를 사용하는 것이 좋습니다.
23. 데이터베이스 다운로드
AlphaFold 3 공식 저장소에는 데이터베이스 다운로드 스크립트가 포함되어 있습니다.
먼저 설치 폴더로 이동합니다.
cd /data/alphafold3/program/alphafold3
스크립트를 확인합니다.
ls -lh fetch_databases.sh
사용법을 확인합니다.
./fetch_databases.sh --help
현재 설치된 버전의 사용법에 맞추어 데이터베이스 위치를 지정합니다.
예를 들어 위치 인자를 사용하는 경우 다음과 같은 형태가 될 수 있습니다.
./fetch_databases.sh /data/alphafold3/databases
실제 실행 전에는 반드시 현재 clone한 저장소의 --help 결과를 기준으로 명령을 작성하는 것이 좋습니다.
24. 데이터베이스 저장공간
AlphaFold 3 전체 데이터베이스는 수백 GB 규모입니다.
다운로드 상태보다 압축 해제 후 훨씬 큰 공간을 사용합니다.
따라서 설치 전에 다음 명령으로 저장공간을 확인해야 합니다.
df -h
전체 데이터베이스를 안정적으로 설치하려면 약 1TB 수준의 여유 공간을 고려하는 것이 좋습니다.
또한 데이터베이스 검색 성능 때문에 HDD보다는 NVMe SSD를 사용하는 것이 좋습니다.
25. 외장 NVMe SSD에 데이터베이스 설치하기
내부 SSD 공간이 부족하다면 데이터베이스만 별도 외장 NVMe SSD에 저장할 수 있습니다.
예를 들어 외장 SSD가 다음 위치에 마운트되어 있다고 가정합니다.
/mnt/af3db
그 아래에:
/mnt/af3db/databases
를 만들 수 있습니다.
Docker에서는 host의 해당 디렉터리를 container 내부 데이터베이스 경로로 연결합니다.
Host
/mnt/af3db/databases
↓
Docker container
/root/public_databases
따라서 프로그램과 데이터베이스가 반드시 같은 SSD에 있을 필요는 없습니다.
26. 첫 번째 입력 JSON 만들기
AlphaFold 3는 일반 FASTA 파일만 직접 입력하는 방식이 아니라 JSON 형식의 입력 파일을 사용합니다.
다음 파일을 만듭니다.
nano /data/alphafold3/input/test.json
간단한 단백질 예시는 다음과 같습니다.
{
"name": "test_protein",
"sequences": [
{
"protein": {
"id": ["A"],
"sequence": "MKTIIALSYIFCLVFADYKDDDDK"
}
}
],
"modelSeeds": [1],
"dialect": "alphafold3",
"version": 1
}
nano에서 저장할 때는:
Ctrl + O
Enter
Ctrl + X
순서로 진행합니다.
27. AlphaFold 3 실행
Docker 실행 시 입력, 출력, 모델, 데이터베이스 디렉터리를 container에 연결합니다.
전체 구조는 다음과 같습니다.
HOST CONTAINER
input ─────────────→ /root/af_input
output ─────────────→ /root/af_output
models ─────────────→ /root/models
databases ─────────────→ /root/public_databases
실행 예시는 다음과 같습니다.
docker run -it \
--volume /data/alphafold3/input:/root/af_input \
--volume /data/alphafold3/output:/root/af_output \
--volume /data/alphafold3/models:/root/models \
--volume /data/alphafold3/databases:/root/public_databases \
--gpus all \
alphafold3 \
python run_alphafold.py \
--json_path=/root/af_input/test.json \
--model_dir=/root/models \
--db_dir=/root/public_databases \
--output_dir=/root/af_output
실제 옵션은 사용 중인 AlphaFold 3 버전의:
python run_alphafold.py --help
결과와 공식 README를 함께 확인하는 것이 좋습니다.
28. Data Pipeline과 Inference의 차이
AlphaFold 3에서는 데이터 준비와 실제 AI 추론을 분리해서 생각할 수 있습니다.
STEP 1
Sequence
↓
Database Search
↓
MSA
↓
Template
Data Pipeline
이후:
STEP 2
MSA + Template + Molecular Information
↓
AlphaFold 3
↓
Structure Prediction
Inference
이처럼 두 단계를 구분하면 데이터 검색과 GPU 계산을 서로 다른 컴퓨터에서 수행하는 고급 환경도 구성할 수 있습니다.
29. 결과 확인
실행이 끝나면 다음 명령으로 결과 파일을 확인합니다.
find /data/alphafold3/output \
-type f | sort
AlphaFold 3는 구조 결과를 주로 mmCIF 형식으로 출력합니다.
또한 구조와 함께 confidence 관련 정보도 생성됩니다.
따라서 결과를 분석할 때는 단순한 3차원 구조만 보는 것이 아니라 confidence 정보도 함께 확인하는 것이 중요합니다.
30. PyMOL에서 결과 확인
PyMOL이 설치되어 있다면 AlphaFold 3의 mmCIF 결과를 직접 열 수 있습니다.
먼저 PyMOL 환경을 활성화합니다.
conda activate pymol_env
결과 파일을 찾습니다.
find /data/alphafold3/output \
-type f \( -name "*.cif" -o -name "*.pdb" \)
실제 파일을 확인한 뒤 다음처럼 실행합니다.
pymol /data/alphafold3/output/.../파일명.cif
이를 통해 AlphaFold 3가 예측한 3차원 구조를 시각적으로 확인할 수 있습니다.
31. RoseTTAFold-All-Atom과 AlphaFold 3 데이터베이스 비교
두 프로그램을 비교하면 다음과 같이 이해할 수 있습니다.
RoseTTAFold-All-Atom
UniRef30
Full BFD
PDB100
Legacy BLAST
HH-suite
AlphaFold 3
UniRef90
Small BFD
MGnify
UniProt
PDB mmCIF
PDB SeqRes
NT
Rfam
RNAcentral
역할을 기준으로 비교하면 다음과 같습니다.
RFAA UniRef30
↔
AF3 UniRef90
RFAA Full BFD
↔
AF3 Small BFD
RFAA PDB100
↔
AF3 PDB mmCIF + PDB SeqRes
하지만 두 프로그램이 같은 데이터 파일을 그대로 공유하는 것은 아닙니다.
파일 형식, 버전, 검색 도구, 전처리 파이프라인이 다르기 때문입니다.
32. RFAA와 AlphaFold 3를 같은 컴퓨터에서 운영하는 방법
같은 컴퓨터에서 두 프로그램을 운영한다면 서로 다른 환경으로 분리하는 것이 좋습니다.
디렉터리는 다음처럼 구성할 수 있습니다.
/data/
├── rfaa/
│ ├── program/
│ ├── databases/
│ ├── weights/
│ └── jobs/
│
└── alphafold3/
├── program/
├── models/
├── databases/
├── input/
└── output/
소프트웨어 환경도 다음처럼 분리하면 좋습니다.
RoseTTAFold-All-Atom
→ Conda RFAA 환경
PyMOL
→ Conda pymol_env
AlphaFold 3
→ Docker
이렇게 구성하면 Python, PyTorch, CUDA, e3nn 등 여러 패키지 사이의 충돌을 줄일 수 있습니다.
33. RFAA의 BFD를 AlphaFold 3에 그대로 사용할 수 없는 이유
두 프로그램 모두 BFD라는 이름을 사용하기 때문에 같은 파일을 공유할 수 있다고 생각하기 쉽습니다.
하지만 실제로는 그렇지 않습니다.
RoseTTAFold-All-Atom에서는 HH-suite용 full BFD를 사용합니다.
AlphaFold 3에서는 자신의 데이터 파이프라인에 맞는 Small BFD를 사용합니다.
따라서:
RFAA BFD
≠
AlphaFold 3 Small BFD
라고 이해하는 것이 좋습니다.
데이터 형식과 전처리 방식이 다르기 때문에 공식 설치 방법에 맞는 데이터베이스를 사용하는 것이 안전합니다.
34. 전체 설치 흐름
AlphaFold 3 설치 과정을 한 번에 정리하면 다음과 같습니다.
Ubuntu
↓
NVIDIA Driver
↓
nvidia-smi 확인
↓
Docker
↓
NVIDIA Container Toolkit
↓
Docker GPU 확인
↓
AlphaFold 3 GitHub clone
↓
Docker image build
↓
Model Parameters 준비
↓
Database 구축
│
├── Small BFD
├── MGnify
├── UniRef90
├── UniProt
├── PDB SeqRes
├── PDB mmCIF
├── NT
├── Rfam
└── RNAcentral
↓
Input JSON
↓
Data Pipeline
↓
MSA / Template
↓
GPU Inference
↓
Structure Prediction
↓
mmCIF
↓
PyMOL
35. AlphaFold 3 데이터베이스가 중요한 이유
AlphaFold 3는 매우 강력한 딥러닝 모델이지만 구조예측 과정 전체가 신경망 하나로만 이루어지는 것은 아닙니다.
단백질을 예로 들면 입력 서열과 관련된 단백질을 검색하고 MSA를 생성합니다.
기존 PDB 구조에서 관련 구조를 탐색하여 template 정보를 사용할 수 있습니다.
따라서 구조예측은 다음과 같은 요소의 결합으로 생각할 수 있습니다.
Input sequence
+
Evolutionary information
+
Structural information
+
AlphaFold 3 AI model
↓
3D molecular structure
UniRef90, Small BFD, MGnify, UniProt은 주로 진화적 정보를 제공하고, PDB mmCIF와 PDB SeqRes는 구조 관련 정보를 제공합니다.
NT, Rfam, RNAcentral은 RNA와 핵산 분석에 필요한 정보를 제공합니다.
36. AlphaFold 3의 특징
AlphaFold 3의 가장 큰 특징은 단백질 구조 예측을 넘어 다양한 생체분자 상호작용까지 다룰 수 있다는 점입니다.
예를 들어 다음과 같은 문제를 하나의 프레임워크에서 다룰 수 있습니다.
Protein
Protein + Protein
Protein + DNA
Protein + RNA
Protein + Ligand
Protein + Ion
다중 생체분자 복합체
따라서 AlphaFold 3는 단순한 단백질 구조 예측 프로그램이라기보다 다양한 생체분자의 구조와 상호작용을 예측하는 통합형 AI 구조생물학 플랫폼으로 이해할 수 있습니다.
37. 설치 시 주의할 점
AlphaFold 3 설치에서 특히 주의해야 할 부분은 네 가지입니다.
첫째는 GPU 드라이버입니다.
nvidia-smi
가 정상적으로 작동하는지 먼저 확인해야 합니다.
둘째는 Docker GPU 연동입니다.
NVIDIA Container Toolkit이 제대로 설치되어야 합니다.
셋째는 모델 파라미터입니다.
GitHub source code와 model parameters는 서로 다른 것이므로 모델을 별도로 준비해야 합니다.
넷째는 저장공간입니다.
AlphaFold 3 프로그램 자체보다 데이터베이스가 훨씬 많은 용량을 차지합니다.
따라서 설치 순서는 다음과 같이 진행하는 것이 좋습니다.
GPU 확인
↓
Docker
↓
Docker GPU 확인
↓
AlphaFold 3 프로그램 설치
↓
모델 파라미터 준비
↓
SSD 여유공간 확인
↓
데이터베이스 설치
↓
예제 실행
38. 마무리
AlphaFold 3의 로컬 설치는 일반적인 Python 프로그램 설치보다 복잡합니다.
프로그램 코드뿐 아니라 GPU 드라이버, Docker, 모델 파라미터, 그리고 수백 GB 규모의 생물정보학 데이터베이스가 함께 필요하기 때문입니다.
하지만 각 구성 요소의 역할을 이해하면 전체 구조는 비교적 명확합니다.
UniRef90, Small BFD, MGnify, UniProt은 단백질의 진화적 정보를 확보하는 데 사용됩니다.
PDB SeqRes와 PDB mmCIF는 기존에 알려진 생체분자의 구조와 서열 정보를 제공합니다.
NT, Rfam, RNAcentral은 RNA 및 핵산 구조예측을 위한 관련 정보를 제공합니다.
이러한 데이터가 Data Pipeline에서 가공된 후 AlphaFold 3 모델에 전달되고, 최종적으로 GPU를 이용한 구조예측이 이루어집니다.
따라서 AlphaFold 3는 단순한 하나의 AI 모델이라기보다 다음 요소들이 결합된 하나의 구조생물정보학 시스템으로 이해하는 것이 좋습니다.
대규모 생물정보학 데이터베이스
+
서열 검색
+
MSA
+
구조 Template
+
딥러닝
+
GPU Computing
↓
AI 기반 3차원 구조 예측
AlphaFold 3를 직접 설치하고 실행해 보는 과정은 단백질 구조예측뿐 아니라 생명정보학 데이터베이스, MSA, 구조생물학, 딥러닝, GPU 컴퓨팅이 서로 어떻게 연결되는지를 이해하는 데도 매우 좋은 학습 과정입니다.
공식 자료는 다음에서 확인할 수 있습니다.
AlphaFold 3 GitHub
https://github.com/google-deepmind/alphafold3
AlphaFold 3 설치 문서
https://github.com/google-deepmind/alphafold3/blob/main/docs/installation.md
Docker Engine Ubuntu 설치 안내
https://docs.docker.com/engine/install/ubuntu/
NVIDIA Container Toolkit 설치 안내
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
'생명정보학 & 화학정보학 > 알파폴드와 단백질 구조 예측' 카테고리의 다른 글
| AlphaFold 3 , RoseTTAFold-All-Atom 서버 접속 및 사용 방법 (0) | 2026.08.13 |
|---|---|
| 로제타폴드에 데이터베이스를 더 추가하면 좀 더 정확해 질까? (0) | 2026.08.12 |
| Google Colab에서 RoseTTAFold2가 작동하는 원리 (0) | 2026.08.11 |
| 로제타 폴드 설치와 사용기 (1) | 2026.08.10 |
| RoseTTAFold-All-Atom에서 데이터베이스 (0) | 2026.08.09 |