by mesolitica
Open source · 223k downloads · 2 likes
The *Llama2 Embedding 1B 8K* model is a specialized version of Llama2 designed to generate text embeddings from Malay-language inputs. Trained on truncated sequences of 8,000 tokens, it can process contexts up to 32,000 tokens during inference, providing significant flexibility for long documents. Its primary capabilities lie in creating precise and contextualized vector representations, well-suited for semantic search, classification, or similarity analysis tasks in Malay. Ideal for applications requiring nuanced text understanding—such as intelligent search engines, recommendation systems, or sentiment analysis—it stands out for its balance between performance and efficiency, while remaining accessible due to its compact size of 1 billion parameters.
Trained on truncated 8k context length, but infer able to scale up to 32k context length.
README at https://github.com/mesolitica/llama2-embedding#finetune
WandB, https://wandb.ai/mesolitica/llama2-embedding-1b?workspace=user-husein-mesolitica
from transformers import AutoModel, AutoTokenizer
from sklearn.metrics.pairwise import cosine_similarity
model = AutoModel.from_pretrained('mesolitica/llama2-embedding-1b-8k', trust_remote_code = True)
tokenizer = AutoTokenizer.from_pretrained('mesolitica/llama2-embedding-1b-8k')
input_ids = tokenizer(
[
'tak suka ayam',
'Isu perkauman: Kerajaan didakwa terdesak kaitkan pemimpin PN',
'nasi ayam tu sedap',
'suka ikan goreng?',
'Kerajaan tidak akan berkompromi dengan isu perkauman dan agama yang dimanipulasi pihak tertentu untuk mengganggu-gugat kestabilan negara serta ketenteraman rakyat.',
'rasis bodo mamat tu',
'kerajaan sekarang xde otak',
'aku nak sukan olimpik ni',
'malaysia dapat x pingat kt sukan asia?',
'pingat gangsa menerusi terjun dan olahraga pada hari ke-10',
'Kerajaan negeri kini dibenarkan melaksanakan penerokaan awal unsur nadir bumi (REE) berdasarkan prosedur operasi standard (SOP) sedia ada untuk perlombongan nadir bumi dan mineral.',
'KONTINJEN Malaysia mendekati sasaran 27 pingat di Sukan Asia kali ini esok, selepas menuai dua lagi pingat gangsa menerusi terjun dan olahraga pada hari ke-10 pertandingan, pada Selasa.'
],
return_tensors = 'pt',
padding = True
)
v = model.encode(input_ids).detach().numpy()
v.shape
(12, 1536)