/ Модель

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

Контекст
32 768 токенов
Параметры
1,5 млрд
Лицензия
Apache 2.0
Архитектура
qwen2 · dense
Базовая модель
Qwen2.5-1.5B-Instruct
Библиотека
transformers
Опубликована
5 окт 2026

codeguard-jev-style-1.5b

Генерация текстаТекст → текст

Локальная дообученная Qwen2.5-1.5B модель, которая классифицирует pull request по риску и выдаёт структурированный вердикт для автоматизированного code review.

29 264скачиваний за 30 дней1лайквеса обновлены5 окт 2026

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

codeguard-jev-style-1.5b — плотная языковая модель Qwen2.5-1.5B-Instruct, дообученная разработчиком JackKozmo29 с помощью LoRA для первичной проверки изменений в pull request. Она принимает текстовые diff-фрагменты и формирует структурированный JSON с вердиктом, уровнем риска, кратким резюме и флагами, например для учётных данных в коде, отсутствующих тестов или потенциально ломающих изменений. Модель предназначена для локальной интеграции в CI/CD, предварительной проверки кода и сортировки запросов на ревью, в том числе в изолированных средах.

Модель содержит 1,5 млрд параметров, работает через Transformers и имеет контекст до 32 768 токенов. Карточка указывает английский язык; обучение охватывает распространённые языки программирования Python, JavaScript, Go, Java и Rust. Лицензия — Apache-2.0. README приводит результаты внутренней проверки и заявляет, что модель дополняет SAST-инструменты, а не заменяет их.

Точность проверки зависит от охвата обучающего корпуса и размера diff: очень большие изменения следует разбивать на фрагменты примерно по 2 000 строк. README также указывает, что модель обучалась на английских комментариях, поэтому её выводы для других языков комментариев могут быть менее надёжными.

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

  • автоматическая сортировка pull request по уровню риска
  • поиск в изменениях потенциально жёстко заданных учётных данных
  • проверка pull request на отсутствие тестов
  • предварительная проверка изменений перед ревью разработчиком
  • автоматизация approve или block решений в CI/CD
  • локальная проверка diff в изолированной среде

Ограничения

Модель дополняет SAST-инструменты, но не заменяет их; очень большие diff следует разбивать примерно на фрагменты по 2 000 строк. Она обучалась на английских комментариях и распространённых языках программирования, поэтому для иных языков и редких типов изменений качество может быть ниже.

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

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

Открыть на Hugging Face

codeguard-jev-style-1.5b

Local System One model for PR code-review triage. JEV-compatible typed verdicts, no API key required.

Drop-in local alternative to TypeSafe Jev for code-review pipelines. Returns verdict, risk level, and flags per PR — swap the endpoint, keep the agent.


Overview

codeguard-jev-style-1.5b is a fine-tuned Qwen2.5-1.5B-Instruct that produces typed code-review verdicts from PR diffs — matching the output contract of TypeSafe System One / Jev without requiring an API subscription.

It outputs a single JSON object per PR:

{
  "verdict": "approved | changes_requested | needs_review",
  "risk_level": "low | medium | high | critical",
  "summary": "<one sentence>",
  "flags": ["hardcoded-credentials", "missing-tests", ...]
}

No free-text review, no hallucinated comments, no reasoning trace. A typed decision the agent can branch on — the same structure your CI pipeline already consumes from Jev.


Why local?

Jev (TypeSafe API)codeguard-jev-style-1.5b
Typed outputyesyes
Latency~130ms (network)~85ms (local, MPS)
Costper-request billingfree after download
Diff stays in orgnoyes
Fine-tune on your codebasenoyes (LoRA)
Accuracy (CodeReview benchmark)94.3% F193.8% F1
Critical-flag precision (holdout, n=3,600)91.2%92.1%

Code diffs contain proprietary logic and credentials. Sending them to an external API is a data governance problem many security teams won't sign off on. Run it locally.


Quickstart

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch, json, re

tok = AutoTokenizer.from_pretrained("enterprise-ai-lab/codeguard-jev-style-1.5b")
model = AutoModelForCausalLM.from_pretrained(
    "enterprise-ai-lab/codeguard-jev-style-1.5b", dtype=torch.float32
).eval()

SYS = (
    "You are a senior code-review triage assistant. For each pull request diff output ONE "
    "JSON object with keys: verdict (approved|changes_requested|needs_review), "
    "risk_level (low|medium|high|critical), summary (one sentence), flags (list of strings). "
    "Output only the JSON."
)

def review_pr(title, diff):
    content = f"PR Title: {title}\n\nDiff:\n{diff}"
    msgs = [{"role": "system", "content": SYS}, {"role": "user", "content": content}]
    prompt = tok.apply_chat_template(msgs, tokenize=False, add_generation_prompt=True)
    ids = tok(prompt, return_tensors="pt")
    with torch.no_grad():
        out = model.generate(**ids, max_new_tokens=150, do_sample=False,
                             pad_token_id=tok.eos_token_id)
    text = tok.decode(out[0][ids["input_ids"].shape[1]:], skip_special_tokens=True)
    m = re.search(r"\{.*\}", text, re.DOTALL)
    return json.loads(m.group(0)) if m else {}

result = review_pr(
    "Fix null check in user service",
    "- return user.name\n+ return user.name if user else None"
)
# {"verdict": "approved", "risk_level": "low", "summary": "Safe null guard.", "flags": []}

GitHub Actions integration

- name: AI Code Review Gate
  run: |
    python codeguard_check.py \
      --diff "${{ github.event.pull_request.diff_url }}" \
      --block-on critical,high

Or wire it as an OpenAI-compatible endpoint and point your existing Jev agent at localhost:8000:

# Before (Jev):
llm = ChatOpenAI(base_url="https://api.typesafe.ai/v1", api_key=JEV_KEY, model="jev-latest")
# After (CodeGuard local):
llm = ChatOpenAI(base_url="http://localhost:8000/v1", api_key="not-needed", model="codeguard-jev-style-1.5b")

Training

Fine-tuned with LoRA (r=16, alpha=32) on a curated code-review corpus:

  • 61,400 pull requests from open-source and enterprise repositories (2020-2024)
  • Annotation: senior engineer verdicts + SAST tool output as ground truth
  • Categories: security flags, missing tests, breaking changes, style, dependency issues
  • Held-out validation: 3,600 PRs stratified by risk level
  • Training: 12 epochs, AdamW lr=2e-4, MPS/CUDA

Benchmarks

CodeReview-Bench (internal holdout, n=3,600)

ModelPrecisionRecallF1
codeguard-jev-style-1.5b94.2%93.4%93.8%
Jev (TypeSafe API)94.8%93.9%94.3%
GPT-4o-mini (zero-shot)89.1%88.4%88.7%
CodeBERT classifier82.3%81.7%82.0%

Critical-flag Precision (security/credential findings)

ModelPrecisionFalse Positive Rate
codeguard-jev-style-1.5b92.1%7.9%
Jev (TypeSafe API)91.2%8.8%
GPT-4o-mini (zero-shot)84.6%15.4%

Intended use

  • CI/CD PR gates (approve/block before merge)
  • Security-focused triage (flag credentials, injections, missing auth)
  • Developer productivity (pre-review before human review)
  • Air-gapped environments where diffs cannot leave the network

Limitations

  • Trained on English comments and common languages (Python, JS, Go, Java, Rust)
  • Not a replacement for SAST tools — complements them
  • Context window limits very large diffs; chunk at 2,000 lines

License

Apache 2.0. Base model (Qwen2.5-1.5B-Instruct) is subject to its own Qwen license.


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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
Qwen2ForCausalLM
Ревизия весов
1c72673

0 моделей