Bc-AI's picture
Publish Orion T2 Mini SFT Transformers release
45b6ae4 verified
Raw History Blame Contribute Delete
1.94 kB
import os
import torch
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
REPO = os.environ.get("ORION_REPO_ID", "Project-Prism/Orion-Flagship")
tokenizer = AutoTokenizer.from_pretrained(REPO, trust_remote_code=True)
dtype = torch.bfloat16 if torch.cuda.is_available() else torch.float32
kwargs = {
"trust_remote_code": True,
"dtype": dtype,
}
if torch.cuda.is_available():
kwargs["device_map"] = "auto"
model = AutoModelForCausalLM.from_pretrained(REPO, **kwargs)
model.eval()
def generate(prompt, max_new_tokens, temperature, top_p):
inputs = tokenizer(prompt, return_tensors="pt")
inputs = {k: v.to(model.device) for k, v in inputs.items()}
with torch.inference_mode():
ids = model.generate(
**inputs,
max_new_tokens=int(max_new_tokens),
do_sample=float(temperature) > 0,
temperature=max(float(temperature), 1e-5),
top_p=float(top_p),
use_cache=False,
)
return tokenizer.decode(ids[0], skip_special_tokens=True)
with gr.Blocks(title="Orion Flagship — Project Prism") as demo:
gr.Markdown(
"# 🔺 Orion Flagship\n"
"Experimental **Project Prism / Orion T2** pretraining checkpoint. "
"This is not an instruction-tuned assistant."
)
prompt = gr.Textbox(
value="The most important reason the sky appears blue is",
label="Prompt",
lines=5,
)
with gr.Row():
max_tokens = gr.Slider(1, 128, value=48, step=1, label="New tokens")
temperature = gr.Slider(0, 1.5, value=0.8, step=0.05, label="Temperature")
top_p = gr.Slider(0.1, 1.0, value=0.95, step=0.01, label="Top-p")
go = gr.Button("Generate")
output = gr.Textbox(label="Output", lines=10)
go.click(generate, [prompt, max_tokens, temperature, top_p], output)
demo.launch()