|
|
--- |
|
|
license: apache-2.0 |
|
|
--- |
|
|
how to use this shit : |
|
|
```python |
|
|
from transformers import AutoTokenizer, AutoModelForCausalLM |
|
|
import torch |
|
|
|
|
|
repo_id = "iko-01/iko_im3" |
|
|
|
|
|
# بدل REPO_BASE باللي درّبت عليه أول مرة (مثلاً gpt2 أو iko-01/iko-v5e-1) |
|
|
base_repo = "iko-01/iko-v5e-1" |
|
|
|
|
|
tokenizer = AutoTokenizer.from_pretrained(base_repo) |
|
|
model = AutoModelForCausalLM.from_pretrained(repo_id) |
|
|
model.to("cpu") |
|
|
|
|
|
def ask_model(question, max_new_tokens=1000): |
|
|
prompt = f"### User:\n{question.strip()}\n\n### Assistant:\n" |
|
|
inputs = tokenizer(prompt, return_tensors="pt", truncation=True, padding=True, max_length=1024) |
|
|
with torch.no_grad(): |
|
|
gen = model.generate( |
|
|
inputs.input_ids, |
|
|
attention_mask=inputs.attention_mask, |
|
|
max_new_tokens=max_new_tokens, |
|
|
do_sample=True, |
|
|
top_p=0.95, |
|
|
temperature=0.9, |
|
|
pad_token_id=tokenizer.pad_token_id, |
|
|
eos_token_id=tokenizer.eos_token_id, |
|
|
) |
|
|
out = tokenizer.decode(gen[0], skip_special_tokens=True) |
|
|
if "### Assistant:" in out: |
|
|
return out.split("### Assistant:")[-1].strip() |
|
|
return out |
|
|
|
|
|
print(ask_model("what is API")) |
|
|
``` |