Skip to main content

Visual Prompting for Large Multimodal Models (LMMs)

Project description

multimodal-maestro


version license python-version Gradio Colab

👋 hello

Multimodal-Maestro gives you more control over large multimodal models to get the outputs you want. With more effective prompting tactics, you can get multimodal models to do tasks you didn't know (or think!) were possible. Curious how it works? Try our HF space!

🚧 The project is still under construction and the API is prone to change.

💻 install

⚠️ Our package has been renamed to maestro. Install package in a 3.11>=Python>=3.8 environment.

pip install maestro

🚀 examples

GPT-4 Vision

Find dog.

>>> The dog is prominently featured in the center of the image with the label [9].
👉 read more
  • load image

    import cv2
    
    image = cv2.imread("...")
    
  • create and refine marks

    import maestro as mm
    
    generator = mm.SegmentAnythingMarkGenerator(device='cuda')
    marks = generator.generate(image=image)
    marks = mm.refine_marks(marks=marks)
    
  • visualize marks

    mark_visualizer = mm.MarkVisualizer()
    marked_image = mark_visualizer.visualize(image=image, marks=marks)
    

    image-vs-marked-image

  • prompt

    prompt = "Find dog."
    
    response = mm.prompt_image(api_key=api_key, image=marked_image, prompt=prompt)
    
    >>> "The dog is prominently featured in the center of the image with the label [9]."
    
  • extract related marks

    masks = mm.extract_relevant_masks(text=response, detections=refined_marks)
    
    >>> {'6': array([
    ...     [False, False, False, ..., False, False, False],
    ...     [False, False, False, ..., False, False, False],
    ...     [False, False, False, ..., False, False, False],
    ...     ...,
    ...     [ True,  True,  True, ..., False, False, False],
    ...     [ True,  True,  True, ..., False, False, False],
    ...     [ True,  True,  True, ..., False, False, False]])
    ... }
    

multimodal-maestro

🚧 roadmap

  • Documentation page.
  • Segment Anything guided marks generation.
  • Non-Max Suppression marks refinement.
  • LLaVA demo.

💜 acknowledgement

🦸 contribution

We would love your help in making this repository even better! If you noticed any bug, or if you have any suggestions for improvement, feel free to open an issue or submit a pull request.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

maestro-0.1.0-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file maestro-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: maestro-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.13 Darwin/23.0.0

File hashes

Hashes for maestro-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d75ea40d74480dcc39b26f91134792ea1103b84cd72ab2ec629d533a70484c0
MD5 8b4094f305c72c17bdead11be56658e5
BLAKE2b-256 6453f518cd396659d3a3b564d4653adaa6c0bf6285cda54d6920e5c08195139a

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