77a8919349
* UV+DTR model * DTR model.. again. * fix naviGPS * fix radar... * fix.. * test * fix.. * carrot serv * fix.. * fix.. fleet * fix.. radar * fix atc * Steam Powered model.. * fix.. radarLatFactor range.. 200->500 * fix.. dbc.. * side * SP v2 * brake light * fix brakelight * fix.. * add datetime... * fix.. * fix.. * fix.. * fix.. * blind spot * fix tz * fix.. * ff * radarLatFactor * fix.. bsd * Revert "fix.. bsd" This reverts commit 1d0d1434470e1b92c65eaffaeb8dd7cd779f85ee. * fix.. bsd side.. * test * fix.. e2e conditions * Revert "test" This reverts commit 0ce791dbd66c17260366ed1a4df2626c602dbb7d. * TR16 * fix cut-in detect threshold 3.4 -> 2.6 * fix.. jerk_l limit 5->10 * fix.. * fix.. gm * fix.. OPTIMA_H mass * fix.. radar.. * fix radar.. * fix.. * Radar... * fix.. * fix.. * fix.. * fix.. radartrack 3 * fix.. * fix.. * fix.. * merge.. * fix.. canfd * fix.. * fix.. * fix.. * fix.. radard * new cut_in * Revert "new cut_in" This reverts commit b9b6e9b33318fe1ce7d626468139b17848efcdcd. * fix.. * new cut_in detect... * fix.. disp.. * fix.. * fix.. * fix.. center radar.. * fix.. radar y_sane.. * fix.. * fix.. * hkg jerk 10 -> 5 * fix.. * fix.. * fix.. radar dbc.. * fix.. * fix.. jLead filter.. * test new radar interface.. * fix.. * fix.. * test time... * Revert "test time..." This reverts commit 63e9187736985c4dc4b4f3736674ba7cda6adc3f. * fix radar.. * fix.. * FireHose model.. * tinygrad * Update interface.py * fix.. * fix.. nff toyota corolla_tss2 * fix.. * fix.. * fix.. radar * fix.. * fix.. radar, y_gate * fix.. radar.. * fix.. for clone.. * scc radar enable at low speed.. * fix.. settings.. * fix. * fix.. * fix.. radarTimeStep. * TR16 model again.. * RELEASE.md * fix cut-in detection... * fix.. registeration timeout 15sec.. * fix.. * fix.. radar processing. * fix.. * fix.. * fix.. * fix.. * fix.. * fix..
36 lines
1.6 KiB
Python
36 lines
1.6 KiB
Python
# eval for tinygrad.apps.llm
|
|
import pyarrow.parquet as pq
|
|
from tinygrad.helpers import fetch, colored
|
|
from tinygrad.apps.llm import Transformer, SimpleTokenizer, models
|
|
from tinygrad import Tensor
|
|
|
|
if __name__ == "__main__":
|
|
dat = fetch("https://huggingface.co/datasets/allenai/ai2_arc/resolve/main/ARC-Challenge/test-00000-of-00001.parquet")
|
|
table = pq.read_table(dat)
|
|
|
|
model, kv = Transformer.from_gguf(Tensor.from_url(models["1B"]), max_context=4096)
|
|
|
|
tok = SimpleTokenizer.from_gguf_kv(kv)
|
|
bos_id: int = kv['tokenizer.ggml.bos_token_id']
|
|
eos_id: int = kv['tokenizer.ggml.eos_token_id']
|
|
|
|
num_correct, num_answered = 0, 0
|
|
total_questions = len(table["question"])
|
|
for question, choices, answer in zip(table["question"], table["choices"], table["answerKey"]):
|
|
phrasing = f"Question: {question}\n\n" + \
|
|
'\n'.join([f"{k}) {v}" for k,v in zip(choices['label'], choices['text'])]) +\
|
|
"\n\nReply with the letter of the correct answer only."
|
|
try:
|
|
ids = [bos_id] + tok.role("user") + tok.encode(phrasing) + [eos_id] + tok.role("assistant") + tok.encode("Answer: ")
|
|
except RuntimeError:
|
|
# TODO: fix the tokenizer
|
|
pass
|
|
next_id = next(model.generate(ids))
|
|
correct, given = answer.as_py().strip(), tok.decode([next_id]).strip()
|
|
num_correct += correct == given
|
|
num_answered += 1
|
|
print(f"{num_answered:4d}/{total_questions:4d} "+\
|
|
f"Correct Answer: {correct} "+\
|
|
f"Given Answer: {colored(given, 'green' if correct==given else 'red')} "+\
|
|
f"Percent: {num_correct*100.0/num_answered:.2f}%")
|