API Documentation
Overview
Python SDK Reference
End to End example
List custom tools
Get a custom tool
Create a custom tool
Update a custom tool
Delete a custom tool
Create a source upload
Build a custom tool
List build logs
Cancel a custom tool build
Run a custom tool
Publish a custom tool version
List custom tool versions
Run Inference with a Finetuned Model
/api/submit-jobRun a finetuned model by submitting its inference tool to /submit-job (or /submit-batch) with the model named by modelId. There is no separate inference endpoint. List your models with GET /finetuned-models: each row's inferenceType is the tool to send as type, and its id is the modelId. The model must be Available. A model you cannot access, or one that is still training, is refused with a 400 Model not found.
Sign in to pick one of your finetuned models; until then the example uses a placeholder model id.
Parameters:
jobName
(string, required)
Name for the inference job, exactly as on /submit-job.
type
(string, required)
The model's inference tool: the "inferenceType" of its row in GET /finetuned-models (for a chemprop-finetune model, "chemprop-inference"). Not the finetuning tool that trained it.
modelId
(string)
The "id" of your finetuned model, from GET /finetuned-models. Preferred: when both are sent, modelId is used.
modelName
(string)
Or the model's "name" from GET /finetuned-models. Names are not unique, so a name several teammates share is refused.
settings
(object, required)
The inference tool's own inputs. Fetch its schema from GET /tools/{name}/schema, with the inference tool's name.
projectTag, ...
(optional)
Every other field /submit-job accepts is accepted here with the same meaning. /submit-batch takes modelId and modelName the same way, for every row.
HTTP Response Status Codes
| Status code | Description |
|---|---|
| 200 | Job successfully submitted |
| 400 | Bad request |
| 403 | Forbidden - organization or team budget exceeded |
| 500 | Internal server error |
1import requests
2
3api_key = "***************"
4headers = {'x-api-key': api_key}
5base_url = "https://app.tamarind.bio/api/"
6
7params = {
8 "jobName": "my-solubility-model-inference",
9 "type": "chemprop-inference",
10 "modelId": "YOUR_MODEL_ID",
11 "modelName": "my-solubility-model",
12 "settings": {
13 "smiles": [
14 "CCO"
15 ]
16 }
17}
18response = requests.post(base_url + "submit-job", headers=headers, json=params)
19print(response.text)