QED-Base-v1 / infer.py
Qarvexium's picture
Upload 3 files
ac276b6 verified
Raw
History Blame Contribute Delete
719 Bytes
import torch
from model import load_qed, Qdevice, encode, sp
model = load_qed("qed-base-300m.pt")
@torch.no_grad()
def generate(model, prompt, max_tokens=100):
tokens = encode(prompt)
x = torch.tensor(tokens,dtype=torch.long,device=Qdevice)[None, :]
for _ in range(max_tokens):
logits = model(x)
next_token = torch.argmax(logits[:, -1],dim=-1)
x = torch.cat([x, next_token[:, None]],dim=1)
return sp.decode(x[0].tolist())
if __name__ == "__main__":
while True:
prompt = input("\nPrompt: ")
propmt = f"""User:
{prompt}
Assistant:"""
if prompt == "exit":
break
print(generate(model, prompt))