klg-asutk-app/docs/AI_AGENT_FEATURES.md
Yuriy 44b14cc4fd feat: все AI-функции переведены на Anthropic Claude API
- ai_service.py: единый AI-сервис (chat, chat_with_history, analyze_document)
- routes/ai.py: POST /api/v1/ai/chat (chat, summarize, extract_risks, classify, translate)
- config.py: ANTHROPIC_API_KEY, ANTHROPIC_MODEL
- requirements.txt: anthropic>=0.42.0
- api-client.ts: aiApi (chat, summarize, extractRisks)
- CSP: connect-src добавлен https://api.anthropic.com
- app/api/ai-chat: прокси на бэкенд /api/v1/ai/chat (Anthropic)
- legal_agents/llm_client.py: переведён на ai_service (Claude)
- AIAccessSettings: только Claude (Sonnet 4, 3 Sonnet, 3 Opus)
- k8s, .env.example: OPENAI → ANTHROPIC
- package.json: удалена зависимость openai
- Документация: OpenAI/GPT заменены на Claude/Anthropic

Провайдер: исключительно Anthropic Claude
Модель по умолчанию: claude-sonnet-4-20250514

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-15 15:51:59 +03:00

269 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Функции ИИ Агента
## Обзор
ИИ Агент системы контроля лётной годности теперь поддерживает:
1. Управление доступом операторов через настройки
2. Загрузку и обработку документов (PDF, JPEG, PNG, XLS, XLSX, CSV, TXT, DOC, DOCX)
3. Автоматическое внесение данных из документов в карточки ВС, аудитов и чек-листов
4. Форматы чек-листов и отчетов об аудите согласно требованиям АРМАК, ИКАО, FAA, EASA
## Управление доступом к ИИ агенту
### Настройка доступа
1. Откройте **Настройки** (кнопка в правом верхнем углу)
2. Перейдите на вкладку **"ИИ Агент"**
3. Выберите операторов, которым нужно предоставить доступ
4. Включите опции:
- **Полный доступ ИИ агенту** - разрешает автоматическое внесение данных
- **Автоматическая обработка документов** - включает автоматическое извлечение данных из файлов
### Функции доступа
- **Просмотр**: Оператор может использовать ИИ агента для поиска информации
- **Загрузка документов**: Оператор может загружать файлы для анализа
- **Автоматическое внесение данных**: ИИ агент может автоматически вносить данные в карточки (требует подтверждения)
## Загрузка документов
### Поддерживаемые форматы
- **PDF** - документы, сертификаты, отчеты
- **Изображения** - JPEG, JPG, PNG (требуется OCR для извлечения текста)
- **Таблицы** - XLS, XLSX, CSV
- **Текстовые** - TXT, DOC, DOCX
### Как использовать
1. Откройте **ИИ Агент** (кнопка на дашборде)
2. Нажмите кнопку **📎** для выбора файлов
3. Выберите один или несколько файлов
4. Введите команду, например:
- "Проанализируй эти документы и внеси данные о воздушных судах"
- "Извлеки информацию об аудитах из файлов"
- "Создай чек-лист на основе данных из CSV"
5. Нажмите **Отправить**
### Обработка документов
ИИ агент автоматически:
- Извлекает текст из документов
- Анализирует структурированные данные (CSV, Excel)
- Определяет тип информации (ВС, аудиты, чек-листы)
- Предлагает внести данные в соответствующие карточки
## Форматы чек-листов
### Соответствие стандартам
Система поддерживает форматы чек-листов согласно требованиям:
- **ICAO Annex 6** - Международная организация гражданской авиации
- **EASA Part-M** - Европейское агентство по безопасности авиации
- **FAA Part 91/135** - Федеральное управление гражданской авиации США
- **АРМАК** - Агентство по регулированию гражданской авиации РФ
### Структура чек-листа
```typescript
{
checklistNumber: string;
aircraftRegistration: string;
aircraftType: string;
operator: string;
date: string;
inspector: string;
checklistType: 'pre-flight' | 'post-flight' | 'maintenance' | 'annual' | 'special';
standards: {
icao?: boolean;
easa?: boolean;
faa?: boolean;
armak?: boolean;
};
items: ChecklistItem[];
summary: {
total: number;
compliant: number;
nonCompliant: number;
notApplicable: number;
pending: number;
};
conclusion: 'approved' | 'conditional' | 'rejected';
signatures: {
inspector: { name, license, date, signature };
operator?: { name, position, date, signature };
};
}
```
### Категории чек-листов
#### ICAO Annex 6
- Aircraft Airworthiness
- Flight Operations
- Maintenance
- Cabin Safety
#### EASA Part-M
- Все категории ICAO +
- Continuing Airworthiness
- Airworthiness Review Certificate (ARC)
- Continuing Airworthiness Management Exposition (CAME)
#### FAA Part 91/135
- Все категории ICAO +
- FAA Registration
- FAA Operating Certificate
- FAA Maintenance Program
#### АРМАК
- Все категории ICAO +
- Сертификат лётной годности
- Разрешение на эксплуатацию
- Программа технического обслуживания (ПТО)
- Соответствие ФАП
## Форматы отчетов об аудите
### Соответствие стандартам
Отчеты об аудите соответствуют требованиям:
- **ICAO** - стандарты международной гражданской авиации
- **EASA** - европейские стандарты безопасности
- **FAA** - стандарты США
- **АРМАК** - российские стандарты
### Структура отчета
```typescript
{
reportNumber: string;
reportType: 'scheduled' | 'unscheduled' | 'follow-up' | 'special';
auditDate: string;
auditLocation: string;
organization: {
name: string;
type: string;
certificate?: string;
address: string;
};
auditTeam: Array<{
name: string;
role: 'lead-auditor' | 'auditor' | 'observer';
license?: string;
organization: string;
}>;
auditScope: {
description: string;
standards: {
icao?: boolean;
easa?: boolean;
faa?: boolean;
armak?: boolean;
};
areas: string[];
};
findings: AuditFinding[];
summary: {
totalFindings: number;
critical: number;
major: number;
minor: number;
observations: number;
complianceRate: number;
};
conclusion: {
overall: 'compliant' | 'non-compliant' | 'conditional';
details: string;
recommendations: string[];
};
actionPlan?: Array<{
findingId: string;
action: string;
responsible: string;
deadline: string;
status: 'pending' | 'in-progress' | 'completed';
}>;
signatures: {
leadAuditor: { name, license, date, signature };
organizationRepresentative: { name, position, date, signature };
};
}
```
### Категории нарушений
#### ICAO
- Airworthiness
- Operations
- Maintenance
- Personnel
- Documentation
- Safety Management (SMS)
#### EASA
- Все категории ICAO +
- Continuing Airworthiness
- Airworthiness Review
- CAME Compliance
#### FAA
- Все категории ICAO +
- FAA Certification
- FAA Operations
- FAA Maintenance
#### АРМАК
- Все категории ICAO +
- АРМАК Сертификация
- Соответствие ФАП
- ПТО (Программа технического обслуживания)
## Примеры использования
### Пример 1: Загрузка CSV с данными о ВС
1. Загрузите CSV файл с колонками: registrationNumber, aircraftType, operator
2. Отправьте команду: "Проанализируй этот CSV и внеси данные о воздушных судах в базу"
3. ИИ агент извлечет данные и предложит создать карточки ВС
### Пример 2: Загрузка отчета об аудите
1. Загрузите PDF или Word документ с отчетом об аудите
2. Отправьте команду: "Извлеки информацию об аудите и создай отчет в формате АРМАК"
3. ИИ агент создаст структурированный отчет согласно требованиям АРМАК
### Пример 3: Создание чек-листа
1. Загрузите документ с требованиями проверки
2. Отправьте команду: "Создай чек-лист в формате ICAO Annex 6 на основе этого документа"
3. ИИ агент создаст структурированный чек-лист с соответствующими категориями
## Безопасность
- Все действия ИИ агента логируются в системе аудита
- Автоматическое внесение данных требует подтверждения пользователя
- Доступ к ИИ агенту контролируется через настройки
- Все загруженные файлы проверяются на безопасность
## Технические детали
### API Endpoints
- `POST /api/ai-chat` - Основной endpoint для общения с ИИ агентом
- Поддерживает FormData для загрузки файлов
- Обрабатывает JSON запросы без файлов
### Библиотеки
- `csv-parse` - для парсинга CSV файлов
- `ai` - для работы с Anthropic Claude API
- В будущем: `pdf-parse`, `xlsx`, `tesseract.js` для полной поддержки всех форматов
### Файлы
- `lib/ai/document-parser.ts` - парсер документов
- `lib/compliance/checklist-formats.ts` - форматы чек-листов
- `lib/compliance/audit-report-formats.ts` - форматы отчетов об аудите