Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

jevos-1b

Yes/no decisions on a laptop CPU in 50–220 ms. Send a text and a yes/no question, get back P(yes).

jevos-1b playing a Chrome Dino-style game on the CPU, answering two yes/no questions per step (recording at 2× speed)

Benchmarks

Latency on a short request: jevos-1b 54 ms, Jev 344 ms, Laya 104 ms. On a long request: jevos-1b 220 ms, Jev 345 ms, Laya 449 ms. Accuracy on 2,000 yes/no questions from unseen policies: jevos-1b 0.815, Jev 0.927, Laya 0.489

What each one does

jevos-1bJevLaya
Yes/no questions✓✓✓
Multiple choiceSoon✓✓
ScoresSoon✓✓
Runs onyour machinecloudyour machine
Costfreeper tokenfree
Context8,192 tokensnot stated512 tokens

Quickstart

Download jevos-1b-q4_k_m.gguf from the release, then:

uv sync
uv run jev download --only runtime        # llama.cpp for this machine
uv run jev serve --gguf jevos-1b-q4_k_m.gguf --device cpu --threads 16
curl http://127.0.0.1:8017/v1/systemone -H 'Content-Type: application/json' -d '{
  "model": "jev-latest",
  "state": "I was charged twice for the same order.",
  "questions": {"billing": {"type": "noul", "instructions": "Is this a billing problem?"}}}'
{
  "model": "jevos-1b-q4_k_m",
  "answers": {"billing": {"type": "noul", "noul": 0.9}},
  "usage": {"input_tokens": 27, "output_tokens": 0}
}

Then open http://127.0.0.1:8017/dino to watch it play.

API

The server speaks TypeSafe Jev's wire format, so code written for Jev's SDK works unchanged for yes/no questions.

POST /v1/systemone

FieldWhat it is
modeljev-latest (any jev-* name works) or the served model's name
statethe text to decide on: a string, or any JSON object or array
questionsone or more named questions, each {"type": "noul", "instructions": "…?"}

Every answer is noul, the probability that the answer is yes (0 to 1). Questions in the same request share the state, which is read once: the three questions below take about 165 ms together, against 103 ms for one of them alone.

{
  "model": "jev-latest",
  "state": {
    "item": "wireless mouse",
    "delivered": "5 days ago",
    "customer_message": "The box arrived empty. This is the second time!"
  },
  "questions": {
    "refund": {
      "type": "noul",
      "instructions": "Our policy refunds items reported missing within 30 days of delivery. Should this customer get a refund?"
    },
    "upset": {"type": "noul", "instructions": "Is the customer upset?"},
    "wrong_item": {"type": "noul", "instructions": "Does the customer say they received the wrong item?"}
  }
}
{
  "model": "jevos-1b-q4_k_m",
  "answers": {
    "refund": {"type": "noul", "noul": 0.78},
    "upset": {"type": "noul", "noul": 0.73},
    "wrong_item": {"type": "noul", "noul": 0.1}
  },
  "usage": {"input_tokens": 95, "output_tokens": 0}
}
  • Put the rule in the question. If the decision depends on a policy, write it into instructions, as in refund above. Jev's optional criteria field is accepted but not read.
  • Yes/no only. choice and score questions are refused with a 422.
  • Timing. Every response carries a Server-Timing header with the inference time.

Other endpoints

EndpointReturns
GET /v1/modelsthe served model and its jev-latest alias
GET /health{"status": "ready", …} once the model is loaded

From Python

import requests

answer = requests.post("http://127.0.0.1:8017/v1/systemone", json={
    "model": "jev-latest",
    "state": "I was charged twice for the same order.",
    "questions": {"billing": {"type": "noul", "instructions": "Is this a billing problem?"}},
}).json()

if answer["answers"]["billing"]["noul"] > 0.5:
    print("send to billing")

Server options

OptionDefault
--ggufpath to the model file
--deviceautocpu to stay on the CPU
--threads4CPU threads; set it to your core count, fewer if other heavy apps are running
--host, --port127.0.0.1, 8017where the server listens

Credits

Built together with Loris Salsi (@LosaLosSantos).

关于 About

jevos is an open-source alternative to Jev for yes/no decisions that runs on your laptop.
binary-classificationclassificationcpu-inferencedecision-modeledge-aifastapiggufjevllama-cppllmllm-inferencelocal-llmminicpmnlpofflineon-device-aipythonself-hostedtext-classificationyes-no

语言 Languages

Python89.8%
HTML10.2%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
1
Total Commits
峰值: 1次/周
Less
More

核心贡献者 Contributors