Skip to content
 
 

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

README.md

Compliance Compiler

Compliance Compiler (Open-Core)

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

Не является юридическим заключением
Не оценивает законность или правомерность
Используется исключительно для предварительного анализа

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


Ключевая идея

Compliance Compiler — это проверка, а не совет.

Система:

  • не интерпретирует нормы «по смыслу»,
  • не заменяет эксперта,
  • не делает вероятностных выводов,

а фиксирует проверяемые несоответствия, которые затем оцениваются специалистом.


Архитектура

Проект ��остроен по канонической open-core модели: ядро + приложение + профили.

core/ — ядро (open-source, AGPL-3.0)

  • Детерминированный движок анализа
  • Контексты документов
  • Rule-engine (applies / check)
  • Проверка полномочий и иерархий
  • Реестр нормативных источников
  • Генерация нейтральных отчетов
  • AST-проверка правил (безопасность)

Ядро не знает о доменах и не содержит клиентской логики.

app/ — приложение

  • Ingestion (нормализация, извлечение)
  • Classification (типы документов, органы, действия)
  • Registry (источники норм)
  • Report (формирование отчётов)
  • Utils

Этот слой связывает ядро с прикладными сценариями.

profiles/ — доменные профили

  • legal/ — правовые документы
  • healthcare/ — приказы медучреждений
  • YAML-конфигурации + Python-правила
  • Собственные источники и ограничения

Профили расширяют систему без изменения ядра.


Интерфейсы

  • CLI — автоматизация и скрипты
  • Web — демонстрация и API
  • Telegram-bot — быстрый анализ текста

Все интерфейсы вызывают одно и то же API ядра.


AI-парсинг (опционально)

Система может использовать LLM (OpenAI / Grok) для:

  • извлечения дат,
  • действий,
  • цитат нормативных актов.

AI используется только как вспомогательный парсер, не влияя на логику проверки.

Включается флагом:

AI_PARSING_ENABLED = true

## Интерфейсы
- CLI: Для автоматизации и скриптов.
- Web: Для демонстрации.
- Telegram-bot: Для быстрого доступа.

## Новое: AI-парсинг
- Использует LLM (OpenAI/Grok) для семантического извлечения дат, действий, цитат норм (улучшает точность по сравнению с regex).
- Включено опционально (флаг AI_PARSING_ENABLED в config.py).

## Тесты
- Unit-тесты в tests/ (pytest tests/ для за��уска).

## Установка

1. Клонируйте репозиторий
2. Установите зависимости:
```bash
pip install -r requirements.txt
# или
poetry install
  1. Настройте переменные окружения (скопируйте .env.example в .env):
cp .env.example .env
  1. Отредактируйте .env и добавьте API ключи при необходимости

Использование

CLI

python interfaces/cli.py analyze examples/service_check_example.txt
python interfaces/cli.py analyze examples/service_check_example.txt --format pretty

Web

python interfaces/web.py
# Откройте http://localhost:5000

Telegram Bot

# Добавьте TELEGRAM_TOKEN в .env
python interfaces/telegram_bot.py

Структура проекта

compliance-compiler/
├── core/               # Основная логика анализа
├── interfaces/         # CLI, Web, Telegram
├── app/               # Модули приложения
│   ├── ingestion/     # Парсинг и нормализация
│   ├── classification/# Классификация документов
│   ├── rules/         # Правила проверки
│   ├── engine/        # Движки анализа
│   ├── registry/      # Реестр норм
│   ├── report/        # Генерация отчетов
│   └── utils/         # Утилиты
├── knowledge/         # Базы данных норм
├── tests/             # Unit-тесты
└── examples/          # Примеры документов

Open-core модель

Данный репозиторий содержит open-core ядро: детерминированный анализ, правила и профили, локальный запуск. Коммерческая / enterprise-версия (по запросу): интеграции с официальными источниками, SLA и сопровождение, on-premise поставка, расширенные профили.

Вклад в проект

PR и обсуждения приветствуются. Хотите помочь? См. CONTRIBUTING.md

Лицензия

AGPL-3.0 - см. LICENSE Любое сетевое использование модифицированной версии требует публикации исходного кода.

About

Open-core ядро для анализа формальных несоответствий в документах. Enterprise-версия с интеграциями (в т.ч. pravo.gov.ru) и договорным SLA доступна для заказчиков. AGPL-3.0.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors