OSCAR is a context compression model to be used for efficient inference when doing Retrieval Augmented Generation (RAG), particularly optimized for question answering.
OSCAR contains a (fast and light) compressor LLM, used to compress documents, and a LoRA-adapted decoder LLM (here Qwen2-7B-Instruct) able to work from this representation.
In a RAG pipeline compressing the documents enable 3x-5x faster inference. Final pipeline is as performant as the base decoder model.
Compression rate
: x16: each document (of size up to 128 tokens) is converted into 8 embedding vectors.
Usage
from transformers import AutoModel
oscar = AutoModel.from_pretrained('naver/oscar-qwen2-7B', trust_remote_code=True).to('cuda')
# Example documents and question:
documents = [
[
"Weldenia is a monotypic genus of flowering plant in the family Commelinaceae, first describ ed in 1829. It has one single species: Weldenia candida, which grows originally in Mexico and Guatemala.",
"Hagsatera is a genus of flowering plants from the orchid family, Orchidaceae. There are two known species, native to Mexico and Guatemala",
"Alsobia is a genus of flowering plants in the family Gesneriaceae, native to Mexico, Guatemala and Costa Rica. The two species are succulent, stoloniferous herbs and were previously included in the genus \"Episcia\". Recent molecular studies have supported the separation of \"Alsobia\" from \"Episcia\""
]
]
questions = ["Which genus of plant grows originally in Mexico and Guatemala, Phylica or Weldenia?"]
# End-to-end usage
out = oscar.generate_from_text(questions=questions, documents=documents, max_new_tokens=64, query_dependent=True)
print('Generated answer', out)
# Document compression:
embeddings = oscar.compress_documents(documents=documents[0], questions=questions * len(documents[0])) # compression is query-dependent, one question per doc here# Generation from compressed documents:
out = oscar.generate_from_compressed_documents_and_questions(questions=questions, compressed_documents=embeddings)
The recommended usage is to provide documents cropped to about 128 tokens, which is common practice when doing RAG.
Model features
OSCAR enables high accuracy responses from the compressed documents
OSCAR is robust to various domains
We tested its compression/decoding abilities on various sets of data.
OSCAR enables up to x5 faster generation
depending on the number of retrieved documents and various context sizes.
oscar-qwen2-7B huggingface.co is an AI model on huggingface.co that provides oscar-qwen2-7B's model effect (), which can be used instantly with this naver oscar-qwen2-7B model. huggingface.co supports a free trial of the oscar-qwen2-7B model, and also provides paid use of the oscar-qwen2-7B. Support call oscar-qwen2-7B model through api, including Node.js, Python, http.
oscar-qwen2-7B huggingface.co is an online trial and call api platform, which integrates oscar-qwen2-7B's modeling effects, including api services, and provides a free online trial of oscar-qwen2-7B, you can try oscar-qwen2-7B online for free by clicking the link below.
naver oscar-qwen2-7B online free url in huggingface.co:
oscar-qwen2-7B is an open source model from GitHub that offers a free installation service, and any user can find oscar-qwen2-7B on GitHub to install. At the same time, huggingface.co provides the effect of oscar-qwen2-7B install, users can directly use oscar-qwen2-7B installed effect in huggingface.co for debugging and trial. It also supports api for free installation.