Skip to main content

Python client library for moondream

Project description

Moondream Python Client Library

Python client library for moondream. This library is an alpha preview -- it is in an early stage of development, and backward compatibility is not yet guaranteed. If you are using this in production, please pin the revision you are using.

This library currently offers optimized CPU inference, but will be slower than the PyTorch implementation for CUDA and MPS backends. If you are running on a Mac with M1/M2/M3 etc. chips, or if you have a GPU available, this library is not recommended yet.

Setup

Install the library using pip:

pip install moondream==0.0.2

Then download the model weights:

# int8 weights (recommended):
wget "https://huggingface.co/vikhyatk/moondream2/resolve/client/moondream-latest-int8.bin.gz?download=true" -O - | gunzip > moondream-latest-int8.bin
# ...or, for fp16 weights (full precision):
wget "https://huggingface.co/vikhyatk/moondream2/resolve/client/moondream-latest-f16.bin.gz?download=true" -O - | gunzip > moondream-latest-f16.bin
# ...or, for int4 weights (resource constrained environments):
wget "https://huggingface.co/vikhyatk/moondream2/resolve/client/moondream-latest-int4.bin.gz?download=true" -O - | gunzip > moondream-latest-int4.bin

Usage

import moondream as md
from PIL import Image

model = md.VL("moondream-latest-int8.bin")
image = Image.open("path/to/image.jpg")

# Optional -- encode the image to efficiently run multiple queries on the same
# image. This is not mandatory, since the model will automatically encode the
# image if it is not already encoded.
encoded_image = model.encode_image(image)

# Caption the image.
caption = model.caption(encoded_image)

# ...or, if you want to stream the output:
for t in model.caption(encoded_image, stream=True)["caption"]:
    print(t, end="", flush=True)

# Ask a question about the image.
question = "How many people are in this image?"
answer = model.query(encoded_image, question)["answer"]

# ...or again, if you want to stream the output:
for t in model.query(encoded_image, question, stream=True)["answer"]:
    print(t, end="", flush=True)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moondream-0.0.2.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

moondream-0.0.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file moondream-0.0.2.tar.gz.

File metadata

  • Download URL: moondream-0.0.2.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for moondream-0.0.2.tar.gz
Algorithm Hash digest
SHA256 cf93239317f953e4a55623aaca628b67d7fc7bb0855c3872b27b40caff8b18cc
MD5 99abeed95eb82193193e666103400178
BLAKE2b-256 06a8847cb8ca63ae04dc6424f5a03558fefdbd513e85d15f8dc3c606ca7ab707

See more details on using hashes here.

File details

Details for the file moondream-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: moondream-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for moondream-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 725c5e25f45bac26d0941ea5299134bc399df14972cc481faa614244deabde43
MD5 bb3bbb918d3954b3373ca05d64dcac8e
BLAKE2b-256 5d86a01f9206a9627f616530bd05a6f574944b2b7d38d03801b6308f1d0da4b7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page