Skip to main content

Cream🍦: Visually-Situated Natural Language Understanding with Contrastive Reading Model and Frozen Large Language Models

Paper Conference

Official Implementation of Cream | Paper | Slide | Poster

Introduction

Cream (Contrastive Reading Model) is a language-image understanding module designed to enhance the visually-situated natural language understanding capability in Large Language Models (LLMs). The primary goal of Cream is to effectively capture intricate details in images (e.g., texts), ensuring accurate responses in various visual langauge precessing applications.

Our academic paper, which describes our method in detail and provides full experimental results and analyses, can be found here:

Visually-Situated Natural Language Understanding with Contrastive Reading Model and Frozen Large Language Models.
Geewook Kim, Hodong Lee, Daehee Kim, Haeji Jung, Sanghee Park, Yoonsik Kim, Sangdoo Yun, Taeho Kil, Bado Lee, Seunghyun Park. In EMNLP 2023.

Updates

2024-01-16 Fix minor errors/typos. Release the PyPi package (pip install cream-python). Further updates will follow shortly.

2024-01-02 Fix minor errors/typos. Further updates will follow shortly.

2023-12-06 First commit with a codebase.

Software Installation

pip install cream-python

or clone this repository and install the dependencies:

git clone https://github.com/naver-ai/cream.git
cd cream/
conda create -n cream_official python=3.8
conda activate cream_official
pip install .

If you want to run train.py or test.py, please also install other dependencies:

pip install -r requirements.txt

Citation

If you find our work useful in your work, please consider citing our paper:

@inproceedings{kim2023cream,
      title={Visually-Situated Natural Language Understanding with Contrastive Reading Model and Frozen Large Language Models}, 
      author={Geewook Kim and Hodong Lee and Daehee Kim and Haeji Jung and Sanghee Park and Yoonsik Kim and Sangdoo Yun and Taeho Kil and Bado Lee and Seunghyun Park},
      booktitle = {Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing},
      year={2023},
}

License

MIT license

Copyright (c) 2023-present NAVER Cloud Corp.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

Metadata

Release files for cream-python 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cream-python 1.0.2
File Size Uploaded
cream-python-1.0.2.tar.gz 24.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cream-python 1.0.2
File Interpreter ABI Platform
cream_python-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 48.4 kB

Release files / cream-python-1.0.2.tar.gz

Download URL cream-python-1.0.2.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
55dd23887b52b81c698c40261617bf773d93dca737c048d20147f39d12f02e98
BLAKE2b-256 checksum
How to use checksums
c48516df50d92d7ff6fe6ef49ebacf66ebd66bef05acfca00d2ea4610fbe4647
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Release files / cream_python-1.0.2-py3-none-any.whl

Download URL cream_python-1.0.2-py3-none-any.whl
Size 24.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3f1c7662322c0c34a1c3d714e39e856785b4dc43c5812bd3e1aa0f42731419e3
BLAKE2b-256 checksum
How to use checksums
228a7475e389756f2c2ed0b28d36bf2990117a3b4bfeb21b300cccd3c575fc1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page