/ Модель

Характеристики

Контекст
262 144 токена
Лицензия
MIT
Архитектура
qwen3_5 · dense
Базовая модель
Qwen3.8-27B
Библиотека
transformers
Опубликована
23 сен 2026

Eikos-27B

Классификация текстаТекст → label3 профессии

Eikos-27B — дообученная модель для классификации решений и оценки вероятностей при применении заданных правил в финансах, трейдинге и торговом финансировании.

755скачиваний за 30 дней37лайковвеса обновлены1 окт 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Eikos-27B — модель типизированного принятия решений, разработанная автором репозитория caiovicentino1 и дообученная на базе Qwen/Qwen3.8-27B. Она оценивает заданное состояние по критерию и выбирает ответ из ограниченного набора вариантов за один проход: да/нет, один из вариантов или порядковый балл. Вместе с ответом выдаёт распределение вероятностей и оценку уверенности, что позволяет приложению воздержаться от решения ниже заданного порога.

Модель предназначена прежде всего для применения правил и политик в финансах, трейдинге и торговом финансировании: проверки лимитов ордеров и платежей, маржи, KYC/AML, кредитных политик и документарных аккредитивов. Также заявлены финансовый сентимент, сверка ответов с финансовыми таблицами и числовые или временные проверки. Модель не прогнозирует цены. Архитектура — плотная Qwen3.5, 27 млрд параметров; доступен текстовый интерфейс решений, а изображения может обрабатывать через визуальный энкодер базовой модели в режиме сервинга v1.3. Обучалась на английском и португальском; испанский использовался как тестовый язык без обучения. В README описано обучение на досье до 12 тыс. токенов; точный предел сервинга зависит от конфигурации.

Сильная сторона модели — выдача вероятностей по заданным вариантам в одном проходе, в том числе для большого числа вариантов. Ограничения: она не выполняет многошаговые рассуждения, слаба в длинных цепочках арифметики и уступает крупным моделям в задачах на обширные общие знания; качество снижается за пределами обученного диапазона контекста. Модель не является юридической, налоговой или инвестиционной консультацией и не учитывает актуальное законодательство конкретной юрисдикции. Лицензия — MIT.

Сценарии применения

  • проверка ордеров на соответствие лимитам и ценовым диапазонам
  • оценка соблюдения KYC/AML и платежных правил
  • классификация случаев по кредитным политикам
  • проверка документов по правилам торгового финансирования
  • определение финансового сентимента для заданной сущности
  • сверка фактов и числовых условий с финансовыми таблицами

Ограничения

Модель не выполняет многошаговые рассуждения и слаба в длинных арифметических цепочках; точность на общемировых знаниях ограничена, а за пределами обученного контекста постепенно снижается. Она не прогнозирует цены и не заменяет юридическую, налоговую или инвестиционную консультацию.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Eikos-27B — open typed-decision model (System-1)

Eikos overview: JevBench hard accuracy, error when at least 90% confident and long context, against Jev and Laya

Eikos-27B answers typed decisions about a given state in a single forward pass, with calibrated probabilities over a bounded set of options. It does not generate text at decision time.

Try it in the browser: the Eikos-4B demo on Hugging Face Spaces runs the smaller model with the same readout (ZeroGPU).

  • Question types: noul / boolean (yes/no with probability), choice (one of N options) and score (ordinal levels).
  • Outputs: the full probability distribution plus a confidence value, so callers can abstain below a threshold.
  • Focus: global finance, trading and trade finance.
    • Apply a stated rule, policy or rulebook to a case: order limits, margin, wash sales, price bands, payments limits, KYC/AML, lending policies, documentary credits, Incoterms® stage mapping, VAT/GST.
    • Entity-level financial sentiment, answer verification over financial tables, temporal and numeric checks.
  • Scope limit: it applies rules to the facts it is given. It does not predict prices.
  • Languages: trained in English and Portuguese. Spanish was held out entirely and is used as a zero-shot test.
  • Runs anywhere: one self-contained checkpoint in the official Qwen layout, with no adapters, no external LLM and no API.
    • vLLM, with prefix caching for many questions over the same state and for agent sessions;
    • PyTorch / transformers;
    • Apple Silicon via MLX or MPS.
  • Images (serve v1.3): screenshots, charts, documents and photos, read zero-shot through the base model's vision encoder, with the same one-pass readout (GPU builds with vLLM). See Images (serve v1.3).

Eikos (εἰκός, "the probable") comes in two sizes: Eikos-4B and Eikos-27B (this model), each with FP8 and INT4 builds for GPUs and MLX builds for Apple Silicon (4B: 8-bit and 4-bit; 27B: 4-bit). Training data: caiovicentino1/eikos-decisions. Code: https://github.com/caiovicentino/eikos.

Numbers below are from our own evaluation harness (see Evaluation). Official JevBench runs are requested, for Eikos-27B-FP8 (this model's FP8 build) and for Eikos-4B. The organizers run the models themselves.

How it works

  1. Prompt. The state (evidence), the question (criterion) and the lettered options go into a structured prompt, following the SemIf format.

  2. Readout. The model reads the next-token logits only over the option letters. A softmax with a fixed temperature gives the distribution. Options are labelled A–Z and then AA, AB, … (each label a single token): up to 160 options are read in the same forward pass (serve v1.2, max_one_pass in decision_config.json), more through a tournament whose final round is one pass.

  3. Calibration. Temperature T = 1 ships by default (see Calibration).

  4. Training. Distillation from a strong teacher (GLM-5.3-Flash, maximum reasoning effort) on:

    • generated and blindly labeled decision items;
    • exact programmatic items;
    • compositional rules;
    • long-context dossiers (6k–12k tokens).

    Training-only signals, all switched off at inference:

    • soft cross-entropy to the teacher's probabilities, with option-order permutation;
    • an auxiliary loss on the item's short rationale (written with the item, explaining the gold answer).

    Eikos-27B is a single LoRA fine-tune of Qwen3.8-27B (rank 64, one epoch) on the same data as Eikos-4B, with long-context dossiers up to 12k tokens and without the EN↔PT view objective.

Quick start

vLLM (production: batching + prefix cache)

Requires vLLM ≥ 0.30.0. Older builds return wrong answers when several long requests are batched together on this hybrid (Gated DeltaNet) architecture; we measured drops of 3–6 points on long, shared-document items with vLLM 0.11. With 0.30 the batched results match the PyTorch reference.

bash serve_vllm.sh <MODEL_DIR> 8001      # vLLM engine: letter readout + hybrid prefix cache (checks vLLM >= 0.30)
python serve.py --model <MODEL_DIR> --vllm-url http://127.0.0.1:8001 --port 8000   # TypeSafe-compatible API on :8000

serve_vllm.sh runs vllm serve with the flags the readout needs: --served-model-name decider, --enable-prefix-caching --mamba-cache-mode align, --logprobs-mode processed_logprobs --max-logprobs 600, --dtype bfloat16 and --max-model-len 16384 (change it with MAX_MODEL_LEN). It also sets --max-num-seqs 64 (change it with MAX_NUM_SEQS): each request in flight holds one hybrid cache block, and vLLM's default of 1024 needs more blocks than a 27B build leaves free on one 80–96 GB GPU.

HTTP API (TypeSafe-compatible)

curl -s localhost:8000/v1/systemone -d '{
  "state": "Order ticket #A-2231. Retail client, moderate risk. BUY 1,500 XYZ at market. Equity USD 48,000. Last price USD 41.20. Rule 4.2: a single order may not exceed 50% of equity without written supervisor approval. Approvals on file: none.",
  "questions": {
    "allowed": {"type": "noul", "instructions": "Under rule 4.2, can this order be executed as submitted?",
                "criteria": {"true": "complies with rule 4.2", "false": "breaches rule 4.2"}},
    "action":  {"type": "choice", "instructions": "What should the desk do?",
                "criteria": {"execute": "send as submitted", "request_approval": "hold and ask a supervisor",
                             "reduce_size": "cut the order to the allowed size", "reject": "refuse the order"}},
    "risk":    {"type": "score", "instructions": "How risky is this ticket for the firm?",
                "criteria": ["low", "moderate", "high", "critical"]}
  }}'
  • One pass for the whole request: all questions are answered together, and the shared state is processed once through the prefix cache.
  • Response per question:
    • noul: probability (of "yes"), value and confidence;
    • choice: choice, probabilities and confidence;
    • score: score, probabilities, expected and confidence.

Agent sessions (incremental state + cache)

POST /v1/sessions                 {"state": "..."}          -> {"session_id"}
POST /v1/sessions/<id>/append     {"text": "..."}           -> grows the state
POST /v1/sessions/<id>/systemone  {"questions": {...}}      -> answers over the current state
DELETE /v1/sessions/<id>

On a hybrid (linear-attention) model the state is cached at the end of the context and forked for every question. In our tests a 15-step agent session gave answers identical to sending the full request each time.

Local (Apple Silicon)

python mlx_decide.py <MODEL_DIR>       # MLX backend: same readout and calibration as PyTorch
python local_demo.py <MODEL_DIR> mps   # PyTorch MPS

Images (serve v1.3)

Eikos also decides about images: screenshots, charts, documents and photos. Our training was text only and left the base model's vision encoder untouched; serve.py v1.3 passes the images to it and reads the answer with the same one-pass letter readout, so every option still gets a probability and no text is generated. This needs the vLLM backend (serve_vllm.sh) and works with all six GPU builds; the MLX builds are text only.

import base64, requests

img = "data:image/png;base64," + base64.b64encode(open("screen.png", "rb").read()).decode()
r = requests.post("http://127.0.0.1:8000/v1/systemone", json={
    "state": "",
    "images": [img],
    "questions": {
        "done": {"type": "noul", "instructions": "The upload finished without errors."},
        "next": {"type": "choice", "instructions": "Which button saves the file?",
                 "criteria": {"save": "the Save button", "cancel": "the Cancel button", "none": "no such button"}},
    },
})
print(r.json()["answers"])
  • Formats: "images" takes data URIs or base64 strings. multipart/form-data works too (the JSON in a request field and the images as image files), and so do image data URIs inside the state, in a string, a dict or list value, or chat-style content parts: they are taken out in order and replaced with [image N].
  • Limits: up to 4 images per request; images above 3840×2160 pixels are scaled down; image URLs only with serve.py --allow-image-urls. A 4K screenshot is about 8,300 tokens, within the 16k window serve_vllm.sh sets by default (MAX_MODEL_LEN changes it).
  • Every question in a request reads the same images. Sessions stay text only.

Zero-shot accuracy on public sets, used for evaluation only. GUI grounding is asked as "which part of the screen holds the element for this action?": a 3×3 grid described in words (no marks), or a labelled 4×4 grid drawn on the screenshot.

SetItemsChanceEikos-27B-FP8Eikos-4B
MME (yes/no)2,37450%89.8%87.6%
MMStar1,49325%72.3%66.9%
SEED-Bench-2-Plus (charts, maps, web pages)2,27725%74.5%72.5%
ScreenSpot-v2, no marks1,27211%73.7%57.5%
ScreenSpot-v2, 4×4 grid drawn1,2726%60.9%53.9%
ScreenSpot-Pro, no marks (500 of 1,581)50011%65.0%51.8%
  • Against the base model: in the same one-pass format, Eikos-27B-FP8 is better than Qwen3.8-27B (the bf16 base model) on all six sets (300 items each) and better calibrated: MME 90.0% vs 73.7%, MMStar 70.7% vs 65.3%, ScreenSpot-Pro 65.7% vs 59.0%. The text-only decision training carried over to images. This compares both models in this format, not the base model at its best with generated answers.
  • Every GPU build on the same 300 items per set (the FP8 and INT4 builds keep the vision tower in bf16):
300 items per setEikos-27BEikos-27B-FP8Eikos-27B-INT4
MME (yes/no)89.0%90.0%89.7%
MMStar70.7%70.7%70.7%
SEED-Bench-2-Plus74.0%74.3%73.3%
ScreenSpot-v2, no marks70.7%71.3%69.0%
ScreenSpot-v2, 4×4 grid drawn61.0%60.0%58.7%
ScreenSpot-Pro, no marks66.0%65.7%61.7%
Same answer as bf16: all / confident (≥0.9)—97.6% / 100.0%94.8% / 100.0%
  • Limits: these are multiple-choice and yes/no decisions about a visible screen or picture. Pointing at an exact element without a grid or marks, multi-step reasoning about a screen and very small text were not measured. Calibration on images was not fitted separately: ECE is 0.03–0.10 per set, and both sizes are too confident on text-rich images (SEED-Bench-2-Plus: the 27B is 84% confident on average for 74.5% accuracy).

Evaluation

All numbers are our own measurements with a single harness. We never trained on any evaluation set. Spanish, one task family (trade-offs) and one topic (healthcare administration) were held out of training entirely.

Benchmark (our harness)4B final27B finalJev (reference)
JevBench public — original / hard91.7 / 72.1100.0 / 82.998.6 / 73.0 (official leaderboard)
JevBench hard — ECE (lower is better)0.0490.051—
DecisionBench (OOD) — medium / hard77.1 / 66.988.4 / 78.589.1 / 69.3
General battery (9 human-labeled tasks)76.082.584.1
Finance (CUAD, financial sentiment, FinQA-judge)74.785.379.9
Financial sentiment (Twitter Financial News)79.387.768.3
Central-bank stance (WCB, balanced acc.)38.444.558.6
FinDVer (claim verification)74.078.073.3
Trade rules — seen templates / unseen rules73.4 / 76.085.1 / 88.078.2 / 79.4
Compositional rules — same type / new domain / rulebooks*95.8 / 91.7 / 91.795.8 / 94.3 / 95.383.4 / 84.3 / 88.0
Held-out Spanish (never trained), internal90.9——
Long context: decision hidden in 64k tokens of text (mean of 3 positions)74.288.3— (API limit 32k)
Robustness: same answer after option reversal / paraphrase89.9 / 89.994.9 / 97.5—
RuleArena NBA (balanced acc.)0.500.50—

* generated by the same rule generator family used in training (different rules and cases); see notes.

Same items, same scoring: accuracy per benchmark for Eikos-27B, Eikos-4B, Jev and Laya

Confidence you can act on: error among the decisions each system takes on its own as its confidence threshold drops

How to read the table:

  • JevBench: public items only, not the official leaderboard run.
  • Jev: measured through its API on our batteries, not distilled from.
  • Laya (charts only): run with its official package; its JevBench scores are within one item of its official leaderboard results.
  • Charts: 7,140 items common to all four systems. The confidence chart shows, for every confidence threshold, how many decisions a system would take on its own and how often those decisions are wrong.
  • WCB (central-bank stance): reported as balanced accuracy, because the classes are imbalanced.
  • Rules suites: "rules / new domain / rulebooks" come from the same generator family used in training, so they measure learning of that generator. Transfer to rules the model never saw is measured by "Trade (unseen rules)" (Incoterms®, documentary-credit presentation, EU VAT) and by RuleArena.
    • "New domain" has two parts. 492 items come from a domain absent from training (insurance): 27B 95.1, 4B 91.5. The other 108 items use a rule combination held out of training (an exception over a business-day window): 27B 91.7, 4B 90.7. That combination appears in only 6 of the ~6,000 rule rows used in training.

Long context

The case file is hidden inside unrelated text at the start, middle or end of the prompt (80 public JevBench decisions per point; released checkpoints served with vLLM 0.30).

Decisions buried in long context: accuracy from about 1k to 64k tokens

Release builds

Final evaluation of every published build, run on the exact files in these repos: 7 suites, 7,371 items, vLLM 0.30 with batching and prefix cache on (MLX builds: MLX's CUDA backend on Linux). Batched vLLM is not bit-for-bit deterministic across runs (1–2 items per suite can change), so the bf16 rows differ slightly from the Evaluation table above, which uses our reference harness. "≥0.90" = share of decisions the model would take on its own at ≥90% confidence, and the real error rate among them.

BuildSizeJevBench orig / hardDecisionBench med / hardGeneralFinanceUnseen trade rulesECE≥0.90: decides / errorGate vs bf16
Eikos-27B55.6 GB100.0 / 82.089.1 / 78.282.685.487.40.04344.1% / 2.5%reference
Eikos-27B-FP831.2 GB100.0 / 83.888.7 / 78.882.885.386.90.04244.2% / 2.6%pass
Eikos-27B-INT419.4 GB100.0 / 82.988.4 / 78.582.584.988.60.04143.6% / 2.4%pass
Eikos-27B-MLX-4bit15.1 GB100.0 / 83.888.4 / 78.281.884.985.70.04142.9% / 1.9%pass except agreement
Eikos-4B9.3 GB91.7 / 73.977.1 / 66.675.774.776.00.03334.7% / 2.5%reference
Eikos-4B-FP85.8 GB90.3 / 73.078.5 / 66.675.875.276.00.03134.8% / 2.5%pass
Eikos-4B-INT44.0 GB91.7 / 72.177.1 / 66.275.675.776.00.03332.9% / 2.0%pass except agreement
Eikos-4B-MLX-8bit4.5 GB91.7 / 72.178.2 / 66.976.074.476.60.03334.6% / 2.5%pass
Eikos-4B-MLX-4bit2.4 GB95.8 / 73.078.8 / 64.875.376.076.00.02132.5% / 2.7%pass except agreement

Release gate, fixed before looking at results: accuracy within 1 point of bf16, ECE within 0.01, and at least 97% of answers unchanged.

BuildAccuracy (bf16)Same answer as bf16: all / confident (≥0.9)ECE (bf16)Changed answers on items where bf16 was unsure (<0.7)Gate
Eikos-27B-FP883.4 (83.4)98.8% / 100.0%0.042 (0.043)99%pass
Eikos-27B-INT483.3 (83.4)97.8% / 100.0%0.041 (0.043)96%pass
Eikos-27B-MLX-4bit83.1 (83.4)96.6% / 99.9%0.041 (0.043)92%pass except agreement
Eikos-4B-FP876.9 (76.7)97.3% / 100.0%0.031 (0.033)99%pass
Eikos-4B-INT476.6 (76.7)95.5% / 100.0%0.033 (0.033)94%pass except agreement
Eikos-4B-MLX-8bit76.8 (76.7)98.7% / 100.0%0.033 (0.033)99%pass
Eikos-4B-MLX-4bit76.4 (76.7)92.5% / 99.8%0.020 (0.033)93%pass except agreement
  • Quantization cost: no build loses more than 2 points on any metric of any suite, and calibration (ECE) stays within 0.01 of bf16 or better.
  • Eikos-4B-INT4 keeps accuracy and calibration but changes 4.5% of answers, above the 3% the gate allows. Almost all of them (94%) are on items where bf16 itself was unsure (confidence below 0.7); on decisions bf16 takes with confidence ≥0.9, it gives the same answer on 100% of items. We publish it with this note.
  • Mac builds (MLX): Eikos-4B-MLX-8bit passes the gate. Eikos-27B-MLX-4bit and Eikos-4B-MLX-4bit keep accuracy and calibration but change 3.4% and 7.5% of answers. Most of those changes (92% and 93%) are on items where bf16 itself was unsure; on decisions bf16 takes with confidence ≥0.9, they agree on 99.9% and 99.8% of items. We publish them with this note. The small JevBench-original split (72 items) moves by a few items between builds.

Calibration

  • Why T = 1: our held-out calibration sets turned out easier than real hard data. Every temperature fitted on them was below 1 and made the model over-confident on hard items. Absent a realistic calibration set, we ship T = 1.
  • Changing it: calib.json holds the temperature, and callers can re-fit it on their own data.

Probabilities you can trust: reliability diagram and expected calibration error on 7,140 items

Parallelism and speed

  • Same state, many questions: the hybrid prefix cache processes the state once.
    • 200 questions over a 3.3k-token state ran 21× faster with vLLM prefix caching than without it.
  • Throughput: batched decisions reach ~51 decisions/s on a shared GPU, with results identical to PyTorch.
  • Full GPU (RTX PRO 6000, vLLM, hybrid prefix cache), 200 questions over one state:
    • 4B: 161 decisions/s on a 751-token state and 197 decisions/s on a 3.3k-token state;
    • 27B: 44 decisions/s on a 3.3k-token state.
  • Our own PyTorch cache path: 1,500 questions over one state in 8.7 s (4B).
  • Apple M4 16 GB, MLX bf16: ~0.4–0.8 s per decision, and 3 questions over one state in ~1.1 s.

Limitations

  • Single pass means no multi-step reasoning. Long chains of arithmetic across many rules are out of reach; on RuleArena (NBA salary-cap rulebooks, ~25k tokens) the model does not discriminate. An optional "verify" mode (a short reasoning budget before the letter) exists in the server; it is off by default and not part of any reported number.
  • General world knowledge is bounded by model size. Both sizes trail large frontier systems on knowledge-heavy tasks such as MMLU-Pro.
  • Monetary-policy stance (hawkish/dovish) is a known weakness of both sizes: balanced accuracy 38.4 (4B) and 44.5 (27B), against 58.6 for Jev.
  • Context: trained on inputs up to 32k tokens (4B) or 12k (27B). The base supports longer inputs, but accuracy beyond the trained range degrades gradually.
  • Not advice: it is not legal, tax or investment advice. It applies the rules it is given and does not know your jurisdiction's current law.

Training data and licenses

See NOTICE.

  • Model and code: MIT for our contributions. The base model is Apache-2.0 (LICENSE-Qwen).
  • Third-party data, with attribution: FinEntity (ODC-BY 1.0), TAT-QA (CC BY 4.0), GSM8K train (MIT).
  • Prompt format: SemIf (MIT).
  • Trademark: Incoterms® is a trademark of the ICC. No ICC or regulator text was used.

Citation

@misc{eikos2026,
  title  = {Eikos: open, calibrated, single-pass typed-decision models for finance and trading},
  author = {Caio Vicentino},
  year   = {2026},
  url    = {https://github.com/caiovicentino/eikos}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
Qwen3_5ForConditionalGeneration
Ревизия весов
f44903e

0 моделей