Tools · Cheminformatics & Structure
MolGen
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.
MolGen molgen
- Job type
molgen- Hardware
t4l4a10(default)l40sa100-40gba100-80gbh100h200b200- Typical runtime
- 10 min on Nvidia A10
Payload
| Field | Type | Description |
|---|---|---|
moderequired | string | Default: |
input_data[] | (string | object)[] | Limits: |
input_format | string | Default: |
num_sequences | integer | Sequences to generate per seed (at most 100 when seeds are present, with len(input_data) × num_sequences <= 10000), or in total (at most 10000) for unconditional sample mode with an empty input_data. Default: |
max_length | integer | Maximum SELFIES token length per generated sequence. Default: |
num_beams | integer | Default: |
temperature | number | Default: |
top_p | number | Default: |
top_k | integer | 0 disables top-k filtering. Default: |
repetition_penalty | number | Default: |
exclude_inputs | boolean | Drop generated molecules that match an input seed (canonical comparison). Default: |
max_output_molecules | integer | Upper bound on deduplicated molecules emitted. Default: |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"mode": "generate",
"input_data": ["c1ccccc1"],
"input_format": "smiles",
"num_sequences": 4,
"max_length": 64,
"num_beams": 5,
"temperature": 1,
"top_p": 0.95,
"top_k": 0,
"repetition_penalty": 1,
"exclude_inputs": True,
"max_output_molecules": 1000,
}
estimate = client.jobs.estimate(job_type="molgen", payload=payload, resource="a10")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-molgen-run",
job_type="molgen",
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-molgen-run",
"job_type": "molgen",
"payload": {
"mode": "generate",
"input_data": [
"c1ccccc1"
],
"input_format": "smiles",
"num_sequences": 4,
"max_length": 64,
"num_beams": 5,
"temperature": 1,
"top_p": 0.95,
"top_k": 0,
"repetition_penalty": 1,
"exclude_inputs": true,
"max_output_molecules": 1000
},
"resource": "a10"
}'{
"mode": "generate",
"input_data": [
"c1ccccc1"
],
"input_format": "smiles",
"num_sequences": 4,
"max_length": 64,
"num_beams": 5,
"temperature": 1,
"top_p": 0.95,
"top_k": 0,
"repetition_penalty": 1,
"exclude_inputs": true,
"max_output_molecules": 1000
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Molecules (list) · optionalSMILES, SDF, MOLBLOCK, INCHI
Workflow outputs
- ArchiveZIP
- TableCSV
- MoleculesSMILES