Tools · Computational Biology
RFAntibody
On this page
Prices, workflows, and method papersOpen in the app
Run it from the API
Submit with Submit a job and the job_type below. Price it first with Estimate job reservation cost: submitting reserves that amount from your wallet, and the charge settles at the actual runtime.
RFAntibody Fine-tuning rfantibody-finetune
- Job type
rfantibody-finetune- Hardware
t4l4a10l40sa100-40gb(default)a100-80gbh100h200b200- Typical runtime
- 2.3 h on Nvidia A100, 40 GB
Payload
| Field | Type | Description |
|---|---|---|
model_targetrequired | string | One of: |
training_datarequired | string | PDB text for rfdiffusion/rf2, or FASTA sequences for proteinmpnn. Limits: |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"model_target": "rfdiffusion",
"training_data": "ATOM fake training row\n",
}
estimate = client.jobs.estimate(job_type="rfantibody-finetune", payload=payload, resource="a100-40gb")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-rfantibody-finetune-run",
job_type="rfantibody-finetune",
payload=payload,
resource="a100-40gb",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-rfantibody-finetune-run",
"job_type": "rfantibody-finetune",
"payload": {
"model_target": "rfdiffusion",
"training_data": "ATOM fake training row\n"
},
"resource": "a100-40gb"
}'{
"model_target": "rfdiffusion",
"training_data": "ATOM fake training row\n"
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
None
Workflow outputs
- ArchiveZIP
RFAntibody rfantibody-pipeline
- Job type
rfantibody-pipeline- Hardware
t4l4a10l40sa100-40gb(default)a100-80gbh100h200b200- Typical runtime
- 2 h on Nvidia A100, 40 GB
Payload
| Field | Type | Description |
|---|---|---|
target_pdbrequired | string | Target antigen PDB content with ATOM/HETATM records. Limits: |
hotspot_residues[]required | string[] | Limits: |
framework | string | Default: |
num_designs | integer | Default: |
diffuser_T | integer | Default: |
final_step | integer | Default: |
mpnn_temperature | number | Default: |
mpnn_seqs_per_struct | integer | Default: |
rf2_pae_threshold | number | Default: |
rf2_rmsd_threshold | number | Default: |
tcr_mode | boolean | Forced true for rfantibody-tcr-predict by the API router. |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": ["A:1", "A:2"],
"num_designs": 1,
}
estimate = client.jobs.estimate(job_type="rfantibody-pipeline", payload=payload, resource="a100-40gb")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-rfantibody-pipeline-run",
job_type="rfantibody-pipeline",
payload=payload,
resource="a100-40gb",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-rfantibody-pipeline-run",
"job_type": "rfantibody-pipeline",
"payload": {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1
},
"resource": "a100-40gb"
}'{
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Protein structurePDB
Workflow outputs
- ArchiveZIP
- StructuresPDB
RFAntibody ProteinMPNN rfantibody-proteinmpnn
- Job type
rfantibody-proteinmpnn- Hardware
t4l4a10(default)l40sa100-40gba100-80gbh100h200b200- Typical runtime
- 30 min on Nvidia A10
Payload
| Field | Type | Description |
|---|---|---|
target_pdbrequired | string | Target antigen PDB content with ATOM/HETATM records. Limits: |
hotspot_residues[]required | string[] | Limits: |
framework | string | Default: |
num_designs | integer | Default: |
diffuser_T | integer | Default: |
final_step | integer | Default: |
mpnn_temperature | number | Default: |
mpnn_seqs_per_struct | integer | Default: |
rf2_pae_threshold | number | Default: |
rf2_rmsd_threshold | number | Default: |
tcr_mode | boolean | Forced true for rfantibody-tcr-predict by the API router. |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"target_pdb": "ATOM 1 N GLU H 1 23.793 -8.718 -21.757 1.00… (36,398 characters)",
"hotspot_residues": ["T:129", "T:130"],
"num_designs": 1,
}
estimate = client.jobs.estimate(job_type="rfantibody-proteinmpnn", payload=payload, resource="a10")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-rfantibody-proteinmpnn-run",
job_type="rfantibody-proteinmpnn",
payload=payload,
resource="a10",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-rfantibody-proteinmpnn-run",
"job_type": "rfantibody-proteinmpnn",
"payload": {
"target_pdb": "ATOM 1 N GLU H 1 23.793 -8.718 -21.757 1.00… (36,398 characters)",
"hotspot_residues": [
"T:129",
"T:130"
],
"num_designs": 1
},
"resource": "a10"
}'{
"target_pdb": "ATOM 1 N GLU H 1 23.793 -8.718 -21.757 1.00… (36,398 characters)",
"hotspot_residues": [
"T:129",
"T:130"
],
"num_designs": 1
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Protein structurePDB
Workflow outputs
- ArchiveZIP
- StructuresPDB
RFAntibody RFdiffusion rfantibody-rfdiffusion
- Job type
rfantibody-rfdiffusion- Hardware
t4l4a10l40sa100-40gb(default)a100-80gbh100h200b200- Typical runtime
- 1.5 h on Nvidia A100, 40 GB
Payload
| Field | Type | Description |
|---|---|---|
target_pdbrequired | string | Target antigen PDB content with ATOM/HETATM records. Limits: |
hotspot_residues[]required | string[] | Limits: |
framework | string | Default: |
num_designs | integer | Default: |
diffuser_T | integer | Default: |
final_step | integer | Default: |
mpnn_temperature | number | Default: |
mpnn_seqs_per_struct | integer | Default: |
rf2_pae_threshold | number | Default: |
rf2_rmsd_threshold | number | Default: |
tcr_mode | boolean | Forced true for rfantibody-tcr-predict by the API router. |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": ["A:1", "A:2"],
"num_designs": 1,
}
estimate = client.jobs.estimate(job_type="rfantibody-rfdiffusion", payload=payload, resource="a100-40gb")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-rfantibody-rfdiffusion-run",
job_type="rfantibody-rfdiffusion",
payload=payload,
resource="a100-40gb",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-rfantibody-rfdiffusion-run",
"job_type": "rfantibody-rfdiffusion",
"payload": {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1
},
"resource": "a100-40gb"
}'{
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Protein structurePDB
Workflow outputs
- ArchiveZIP
- StructuresPDB
RFAntibody TCR Predictor rfantibody-tcr-predict
- Job type
rfantibody-tcr-predict- Hardware
t4l4a10l40sa100-40gb(default)a100-80gbh100h200b200- Typical runtime
- 1 h on Nvidia A100, 40 GB
Payload
| Field | Type | Description |
|---|---|---|
target_pdbrequired | string | Target antigen PDB content with ATOM/HETATM records. Limits: |
hotspot_residues[]required | string[] | Limits: |
framework | string | Default: |
num_designs | integer | Default: |
diffuser_T | integer | Default: |
final_step | integer | Default: |
mpnn_temperature | number | Default: |
mpnn_seqs_per_struct | integer | Default: |
rf2_pae_threshold | number | Default: |
rf2_rmsd_threshold | number | Default: |
tcr_mode | boolean | Forced true for rfantibody-tcr-predict by the API router. |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": ["A:1", "A:2"],
"num_designs": 1,
"tcr_mode": True,
}
estimate = client.jobs.estimate(job_type="rfantibody-tcr-predict", payload=payload, resource="a100-40gb")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-rfantibody-tcr-predict-run",
job_type="rfantibody-tcr-predict",
payload=payload,
resource="a100-40gb",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-rfantibody-tcr-predict-run",
"job_type": "rfantibody-tcr-predict",
"payload": {
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1,
"tcr_mode": true
},
"resource": "a100-40gb"
}'{
"target_pdb": "REMARK Minimal alanine tripeptide for unit testing.\nREMARK … (2,166 characters)",
"hotspot_residues": [
"A:1",
"A:2"
],
"num_designs": 1,
"tcr_mode": true
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Protein structurePDB
Workflow outputs
- ArchiveZIP
- StructuresPDB