1from transformers import AutoModelForCausalLM
2from transformers import AutoTokenizer
3
4tokenizer = AutoTokenizer.from_pretrained(
5 pretrained_model_name_or_path="universeTBD/astrollama"
6)
7model = AutoModelForCausalLM.from_pretrained(
8 pretrained_model_name_or_path="universeTBD/astrollama",
9 device_map="auto",
10)
1import torch
2from transformers import pipeline
3
4generator = pipeline(
5 task="text-generation",
6 model=model,
7 tokenizer=tokenizer,
8 device_map="auto"
9)
10
11# Taken from https://arxiv.org/abs/2308.12823
12prompt = "In this letter, we report the discovery of the highest redshift, " \
13 "heavily obscured, radio-loud QSO candidate selected using JWST NIRCam/MIRI, " \
14 "mid-IR, sub-mm, and radio imaging in the COSMOS-Web field. "
15
16# For reproducibility
17torch.manual_seed(42)
18
19generated_text = generator(
20 prompt,
21 do_sample=True,
22 max_length=512
23)
1texts = [
2 "Abstract 1",
3 "Abstract 2"
4]
5inputs = tokenizer(
6 texts,
7 return_tensors="pt",
8 return_token_type_ids=False,
9 padding=True,
10 truncation=True,
11 max_length=4096
12)
13inputs.to(model.device)
14outputs = model(**inputs, output_hidden_states=True)
15
16# Last layer of the hidden states. Get average embedding of all tokens
17embeddings = outputs["hidden_states"][-1][:, 1:, ...].mean(1).detach().cpu().numpy()