Autodistill Gemini Module
This repository contains the code supporting the Gemini base model for use with Autodistill.
Gemini, developed by Google, is a multimodal computer vision model that allows you to ask questions about images. You can use Gemini with Autodistill for image classification.
You can combine Gemini with other base models to label regions of an object. For example, you can use Grounding DINO to identify abstract objects (i.e. a vinyl record) then Gemini to classify the object (i.e. say which of five vinyl records the region represents). Read the Autodistill Combine Models guide for more information.
[!NOTE] Using this project will incur billing charges for API calls to the Gemini API. Refer to the Google Cloud pricing page for more information and to calculate your expected pricing. This package makes one API call per image you want to label.
Read the full Autodistill documentation.
Installation
To use Gemini with autodistill, you need to install the following dependency:
pip3 install autodistill-gemini
Quickstart
from autodistill_gemini import Gemini
# define an ontology to map class names to our Gemini prompt
# the ontology dictionary has the format {caption: class}
# where caption is the prompt sent to the base model, and class is the label that will
# be saved for that caption in the generated annotations
# then, load the model
base_model = Gemini(
ontology=CaptionOntology(
{
"person": "person",
"a forklift": "forklift"
}
),
gcp_region="us-central1",
gcp_project="project-name",
)
# run inference on an image
result = base_model.predict("image.jpg")
print(result)
# label a folder of images
base_model.label("./context_images", extension=".jpeg")
License
This project is licensed under an MIT license.
🏆 Contributing
We love your input! Please see the core Autodistill contributing guide to get started. Thank you 🙏 to all our contributors!
Release files for autodistill-gemini 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| autodistill-gemini-0.1.0.tar.gz | 4.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autodistill_gemini-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.8 kB
Release files / autodistill-gemini-0.1.0.tar.gz
| Download URL | autodistill-gemini-0.1.0.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d56c4fce0a01718eccc3bd35e8c243aade2e777cf40ed74ff90d0b92b7823b4b
|
|
BLAKE2b-256 checksum How to use checksums |
7d1964178760bd2e19641c76b2fc764ee2e05bbc3baa8cf44d46389d0e7d6259
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / autodistill_gemini-0.1.0-py3-none-any.whl
| Download URL | autodistill_gemini-0.1.0-py3-none-any.whl |
|---|---|
| Size | 4.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
70b9754dfc8d19749a7f49fd4cfbe00a698902428ab0f1e3a2cc4e60acd743c0
|
|
BLAKE2b-256 checksum How to use checksums |
919dec48d70bd928d0473644bdc9829e9c956452558050ff87914b26d73b0a04
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|