1. Контекст і проблема
Цільовий користувач: фахівець, який працює з великим масивом текстових документів та має приймати рішення на основі прецедентів.
Суть проблеми: робота з відкритим реєстром документів забирає надмірно багато часу:
- пошук вимагає ручного підбору ключових слів і фільтрів, перегляду десятків-сотень документів;
- щоб оцінити релевантність документа, фахівцю доводиться вручну вчитуватись у зміст та зіставляти його з конкретним кейсом;
- реєстр не дає статистики результатів за конкретними обставинами — все оцінюється “на око”;
- потрібен окремий аналіз масової практики (типові кейси нижчого рівня) і практики вищого/контролюючого органу (прецедентний рівень).
2. Мета проєкту
Розробити AI-агента на базі Claude, який за описом ситуації природною мовою самостійно знаходить релевантні документи в реєстрі, аналізує їхню суть, формує статистику результатів та видає користувачу готовий аналітичний звіт із посиланнями на першоджерела.
3. Архітектура рішення
Оскільки Claude не має нативного доступу до зовнішнього реєстру, рішення будується за принципом RAG (Retrieval-Augmented Generation):
- Запит — користувач описує ситуацію вільним текстом (напр.: “Сталася подія X за обставин Y, які типові результати розгляду подібних кейсів?”).
- Пошук (Retrieval) — система звертається до бази документів (зовнішнє API або власна векторна база на відкритих даних) і дістає топ-50/100 найбільш релевантних документів.
- Аналіз (Claude) — агент обробляє знайдені тексти, класифікує їх, виокремлює суть і формує підсумок.
4. Функціональні вимоги
4.1. Модуль інтеграції з даними
- Джерело даних: зовнішнє API реєстру або відкриті дані (OpenData).
- Векторизація текстів через embeddings і зберігання у векторній БД (Pinecone, Milvus, Qdrant) — для семантичного пошуку за змістом, а не лише за точними словами.
- Фільтрація бази за рівнем органу (первинний / проміжний / вищий), періодом, категорією кейсів.
4.2. Модуль AI-аналітики (на базі Claude)
Через системні промпти агент має:
- Екстракцію фактів — перевіряти збіг обставин знайденого документа з запитом користувача; нерелевантні відкидати.
- Визначення результату — однозначно класифікувати підсумкову частину: задоволено повністю / частково / відмовлено (або відповідний еквівалент для конкретного домену).
- Саммаризацію — короткий (1-2 речення) опис позиції чи причини результату для кожного релевантного документа.
4.3. Статистичний модуль
На основі відфільтрованих та проаналізованих документів система виводить:
- загальну кількість релевантних кейсів;
- відсоток результатів: % “задоволено” / % “частково” / % “відмовлено”;
- розподіл результатів за рівнями органу (напр., “на первинному рівні задовольняють 80%, але вищий орган у 90% випадків скасовує”).
4.4. Інтерфейс користувача
Мінімалістичний UI:
- поле введення опису ситуації;
- панель фільтрів (дати, рівень органу);
- дашборд результатів:
- діаграма/графік відсотка позитивних і негативних результатів;
- текстовий висновок (executive summary) від Claude;
- таблиця проаналізованих документів: [Номер документа] | [Суть в одному реченні] | [Результат] | [Лінк на джерело].
5. Етапи реалізації (MVP)
- Дослідження даних — налаштування витягування документів з реєстру (тестова вибірка, напр. 10 000 документів за обраною категорією).
- Розробка RAG-пайплайну — налаштування векторної бази й семантичного пошуку.
- Інтеграція Claude API — написання та тестування системних промптів, щоб модель без галюцинацій визначала статус кейсу та писала резюме.
- Збірка інтерфейсу — базовий веб-додаток (або бот-інтерфейс на старті) для тестування користувачем.