AI-система відповідності стандартам харчової безпеки (HACCP AI)
HACCP (Hazard Analysis and Critical Control Points) – обов'язкова система управління харчовою безпекою (ТР ТС 021/2011). AI автоматизує моніторинг критичних контрольних точок та формування обов'язкової документації.
Моніторинг критичних контрольних точок (РСР)
Автоматизований моніторинг CCPs:
Кожна CCP має критичні межі (Critical Limits). AI контролює їх дотримання у реальному часі:
import pandas as pd
import numpy as np
from dataclasses import dataclass
from datetime import datetime
@dataclass
class CriticalControlPoint:
"""Описание критической контрольной точки HACCP"""
ccp_id: str
description: str
hazard: str # биологическая / химическая / физическая
critical_limit_min: float
critical_limit_max: float
monitoring_frequency_min: int # минимальная частота мониторинга (мин.)
corrective_action: str
class HACCPMonitor:
"""Мониторинг CCP с автоматической регистрацией отклонений"""
def __init__(self, ccps: list[CriticalControlPoint]):
self.ccps = {ccp.ccp_id: ccp for ccp in ccps}
self.monitoring_log = []
self.deviations = []
def record_measurement(self, ccp_id, value, operator_id, timestamp=None):
"""Зарегистрировать измерение CCP"""
ts = timestamp or datetime.now()
ccp = self.ccps[ccp_id]
is_compliant = ccp.critical_limit_min <= value <= ccp.critical_limit_max
record = {
'ccp_id': ccp_id,
'timestamp': ts.isoformat(),
'value': value,
'unit': 'celsius' if 'temp' in ccp_id.lower() else 'generic',
'operator_id': operator_id,
'is_compliant': is_compliant,
'critical_limit_min': ccp.critical_limit_min,
'critical_limit_max': ccp.critical_limit_max,
}
self.monitoring_log.append(record)
if not is_compliant:
deviation = {
**record,
'deviation_magnitude': abs(value - (ccp.critical_limit_max
if value > ccp.critical_limit_max
else ccp.critical_limit_min)),
'corrective_action_required': ccp.corrective_action,
'status': 'open',
'product_held': True # продукт задержан до устранения
}
self.deviations.append(deviation)
self._trigger_alert(deviation)
return is_compliant
def _trigger_alert(self, deviation):
"""Уведомление ответственного за HACCP"""
print(f"HACCP DEVIATION: CCP {deviation['ccp_id']} - "
f"value {deviation['value']} out of range "
f"[{deviation['critical_limit_min']}, {deviation['critical_limit_max']}]")
Типові CCP харчового виробництва
Термічна обробка (пастеризація/стерилізація): - CL: температура ≥72°C при HTST пастеризації молока ≥15 секунд - Моніторинг: термометр кожні 30 секунд - Коригуюча дія: повторна обробка або утилізація
Охолодження: - CL: охолодження з 60°C до 4°C за ≤6 годин - Моніторинг: безперервний температурний логер у продукті
Виявлення металів/рентгеноскопія: - CL: немає металевих включень ≥3мм (тест-зразки: Fe 2.0мм, NFe 2.5мм, SS 3.0мм) - Моніторинг: кожні 30 хвилин перевірочними тест-шматками
Автоматична документація
Генерація HACCP записів:
21 CFR Part 11 та ГОСТ ISO 22000 вимагають: - Electronically signed records - Неможливість зміни без audit trail
AI-автоматизація: - дані датчиків → автоматичне заповнення форм моніторингу CCP - якщо оператор не підтвердив за 30 хвилин → alert керівнику - кінець зміни → автоматична генерація HACCP-звіту за зміну
def generate_haccp_shift_report(monitoring_log, deviations, date, shift):
"""Формирование ежесменного HACCP-отчёта"""
total_measurements = len(monitoring_log)
compliant_pct = sum(1 for r in monitoring_log if r['is_compliant']) / total_measurements * 100
report = {
'date': str(date),
'shift': shift,
'generated_at': datetime.now().isoformat(),
'summary': {
'total_measurements': total_measurements,
'compliance_rate': f'{compliant_pct:.1f}%',
'deviations_count': len(deviations),
'open_deviations': sum(1 for d in deviations if d['status'] == 'open')
},
'ccp_summary': {},
'deviations': deviations
}
# CCP-детализация
for ccp_id in {r['ccp_id'] for r in monitoring_log}:
ccp_records = [r for r in monitoring_log if r['ccp_id'] == ccp_id]
values = [r['value'] for r in ccp_records]
report['ccp_summary'][ccp_id] = {
'measurements': len(ccp_records),
'min': min(values),
'max': max(values),
'mean': np.mean(values)
}
return report
Внутрішні аудити та верифікація
AI-асистент аудиту:
NLP-система для проведення внутрішніх HACCP-аудитів: - Чекліст за ISO 22000, FSSC 22000 - стандартизовані питання - Автоматична оцінка відповідей: відповідає / не відповідає / частково - Генерація звіту про невідповідності з рекомендованими коригуючими діями
Термін розробки: 2–4 місяці для системи HACCP AI з моніторингом CCP, автоматичною документацією та генерацією звітів.







