Work in progress: this repo was just made public and we are still working on integration
A python client for Ginkgo's AI model API, to run inference on public and Ginkgo-proprietary models. Learn more in the Model API announcement.
Register at https://models.ginkgobioworks.ai/ to get credits and an API KEY (of the form xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
).
Store the API KEY in the GINKGOAI_API_KEY
environment variable.
Install the python client with pip:
pip install ginkgo-ai-client
Note: This is an alpha version of the client and its interface may vary in the future.
Example : masked inference with Ginkgo's AA0 model
The client requires an API key (and defaults to os.environ.get("GINKGOAI_API_KEY")
if none is explicitly provided)
from ginkgo_ai_client import GinkgoAIClient, aa0_masked_inference_params
client = GinkgoAIClient()
prediction = client.query(aa0_masked_inference_params("MPK<mask><mask>RRL"))
# prediction["sequence"] == "MPKYLRRL"
predictions = client.batch_query([
aa0_masked_inference_params("MPK<mask><mask>RRL"),
aa0_masked_inference_params("M<mask>RL"),
aa0_masked_inference_params("MLLM<mask><mask>R"),
])
# predictions[0]["result"]["sequence"] == "MPKYLRRL"
Note that you can get esm predictions by using esm_masked_inference_params
in the example above.
Example : embedding computation with Ginkgo's 3'UTR language model
from ginkgo_ai_client import GinkgoAIClient, three_utr_mean_embedding_params
client = GinkgoAIClient()
prediction = client.query(three_utr_mean_embedding_params("ATTGCG"))
# prediction["embedding"] == [1.05, -2.34, ...]
predictions = client.batch_query([
three_utr_mean_embedding_params("ATTGCG"),
three_utr_mean_embedding_params("CAATGC"),
three_utr_mean_embedding_params("GCGCACATGT"),
])
# predictions[0]["result"]["embedding"] == [1.05, -2.34, ...]
See the example folder and reference docs for more details on usage and parameters.
Model | Description | Reference | Supported queries | Versions |
---|---|---|---|---|
ESM2 | Large Protein language model from Meta | Github | Embeddings, masked inference | 3B, 650M |
AA0 | Ginkgo's proprietary protein language model | Announcement | Embeddings, masked inference | 650M |
3UTR | Ginkgo's proprietary 3'UTR language model | Preprint | Embeddings, masked inference | v1 |
This project is licensed under the MIT License. See the LICENSE
file for details.
Make sure the changelog is up to date, increment the version in pyproject.toml, create a new tag, then create a release on Github (publication to PyPI is automated).