Методология оценок

Пульс публикует формулы открыто — чтобы каждый мог проверить, откуда берётся цифра. Ни одна оценка не рассчитывается «в чёрном ящике»: ниже точные определения, источники данных и честные оговорки о том, когда данных не хватает.

1. Честность (trust_rating)

Оценка честности субъекта отображается в диапазоне 0–10. Складывается из двух составляющих:

  • Пользовательские рейтинги — среднеарифметическое всех оценок, поданных через интерфейс. Каждая оценка хранится в Core::Rating и привязана к субъекту. Минимум для отображения — 3 независимые оценки; при меньшем числе показывается «мало данных».
  • Верификация — бонус за подтверждённые факты (документы, официальные источники). Верифицированная информация помечается флагом verified: true; каждый подтверждённый пункт незначительно повышает итоговый балл.
Почему такСреднее арифметическое выбрано намеренно — оно прозрачно и воспроизводимо. Медиана в будущем может заменить среднее при накоплении большой базы оценок, но пока данных слишком мало для её корректного использования.

2. Результативность (компетентность)

Оценка результативности — 0–10 или «не оценено». Вычисляется как среднее доступных осей, умноженное на 10. Если ни одна ось не имеет данных — показывается «не оценено» (не ноль).

ОсьЧто это
A — выполнение обещанийfulfilled / (fulfilled + broken + expired) из таблицы People::Promise. Считается только по обещаниям с финальным статусом; без зафиксированных обещаний ось не учитывается.
B — отработка инцидентовresolved / assigned — доля инцидентов, переведённых в статус «решено» из числа назначенных на субъекта. Ось отсутствует, если субъекту не назначалось ни одного инцидента.

Формула итогового значения (при наличии хотя бы одной оси):

результативность = среднее(доступные_оси) × 10
Честная оговоркаОсь не учитывается, а не берётся равной нулю — это ключевое решение. Субъект без зафиксированных обещаний не должен получать ноль за ось A: отсутствие данных не равно плохой работе. Алгоритм честно говорит «нет данных» вместо того, чтобы штрафовать за неполноту базы.

3. Двухосевой индекс

Итоговый индекс объединяет обе оценки в одну цифру и один квадрант:

индекс = √(честность × результативность)

Формула использует среднее геометрическоевместо арифметического — оно штрафует перекос между осями: субъект с честностью 8 и результативностью 2 получает индекс 4.0, а не 5.0. Простое среднее позволяло «спрятать» слабую ось; геометрическое это исключает. Индекс рассчитывается только когда обе оси оценены; при отсутствии хотя бы одной показывается «—».

Квадрант определяется по порогу 5.0 по каждой оси:

КвадрантЧто это
Честный × результативныйчестность ≥ 5 и результативность ≥ 5 — целевой профиль
Честный × нерезультативныйчестность ≥ 5, результативность < 5 — хорошие намерения, слабое исполнение
Нечестный × результативныйчестность < 5, результативность ≥ 5 — добивается результата ненадёжными методами
Нечестный × нерезультативныйобе оси < 5 — высокий риск
Почему такДвухосевая матрица позаимствована из практики оценки руководителей (по аналогии с моделями доверия × компетентности в организационной психологии). Один суммарный балл скрывает важную разницу: «честный, но беспомощный» и «эффективный, но непрозрачный» — принципиально разные профили риска.

4. Настроение территории

Метрики публикуются в territory_metrics и обновляются по скользящему окну 72 часа. Три показателя:

ПоказательЧто это
sentiment_scoreсредневзвешенная тональность публикаций в районе, диапазон −1..1 (−1 = крайне негативно, 0 = нейтрально, +1 = позитивно). Вес сообщения пропорционален его важности (severity).
intensity_scoreинтенсивность потока событий: нормированное число публикаций за 72 ч относительно базовой активности. Значение > 1 означает повышенную активность по сравнению со средним.
actor_densityплотность упомянутых субъектов (люди, организации) на единицу публикаций за окно. Косвенный сигнал «насыщенности» события ключевыми действующими лицами.
Честная оговоркаМетрики считаются по открытым публикациям в охваченных Пульсом источниках — не по всему городскому потоку. Если источники по конкретному микрорайону подключены слабо, показатели занижены. Окно 72 ч выбрано как компромисс между реактивностью и сглаживанием разовых всплесков.

5. ИИ-обогащение

Пульс использует языковые модели для сбора дополнительных сведений о субъектах: должность, аффилиации, ключевые события биографии, публичные заявления. Каждый факт в досье содержит:

  • Источник (source_url) — прямая ссылка на страницу, откуда взят факт. Нет ссылки — нет факта: ни один вывод не публикуется без верифицируемого источника.
  • Уверенность (confidence, 0–1) — оценка модели, насколько факт подкреплён источником. Значения ниже 0.6 помечаются как «предварительные» и выделяются визуально.
  • Модель — идентификатор языковой модели, которая извлекла факт (например, qwen3-14b). Позволяет воспроизвести вывод.
  • Дата сбора (fetched_at) — когда была получена информация. Факты устаревают; дата помогает оценить актуальность.
Почему такПринцип «нет ссылки — нет факта» введён специально против галлюцинаций. Агент-обогатитель использует веб-поиск как инструмент: сначала ищет страницы, затем извлекает из них фрагменты, и только если во фрагменте есть конкретное утверждение с адресом источника — пишет его в досье. Если информацию найти не удалось, агент честно возвращает пустой результат, а не придумывает данные.
Честная оговоркаИИ-обогащение — помощник исследователя, не автономный верификатор. Модель может ошибиться в интерпретации источника или перепутать однофамильцев. Данные досье рекомендуется перепроверять по ссылкам, особенно перед принятием значимых решений. Личные данные собираются только из открытых публичных источников.