Штучний інтелект у наших проєктах
Ми впроваджуємо AI там, де він додає реальну цінність: автоматизація повторюваних процесів, вилучення інформації з документів, генерація контекстного контенту та інтелектуальна допомога користувачам. Рішення щодо впровадження ухвалюємо на основі ROI, а не трендів.
Інтеграція LLM — Claude API та OpenAI
Як основну модель для задач складного міркування, аналізу документів і генерації довгого контенту ми використовуємо Claude (Anthropic) — контекстне вікно у 200k токенів дає змогу обробити цілу юридичну справу чи фінансовий звіт за один виклик. GPT-4o обираємо для мультимодальних задач (зображення + текст) і коли потрібна екосистема OpenAI (Whisper, DALL-E).
Tool use (function calling) дозволяє LLM взаємодіяти з внутрішніми API: шукати в базі даних, запускати дії в наявних системах, повертати структуровані дані, перевірені за допомогою Pydantic. Потокові відповіді (streaming) зменшують відчутну затримку в чат-інтерфейсах — користувач бачить, як текст з'являється поступово, а не чекає, поки відповідь завершиться.
- Prompt caching (Anthropic) знижує вартість на 90% для контексту, що повторюється (системні промпти, довідкові документи)
- Structured outputs (режим JSON) для типобезпечних відповідей без регулярних виразів над довільним текстом
- Автоматичний fallback Claude → GPT-4o → Gemini у разі збоїв доступності
- Облік вартості за користувачем і за функцією — використання LLM видно в адмін-панелі
RAG — AI зі знаннями з даних клієнта
Retrieval-Augmented Generation (RAG) дає змогу LLM відповідати на основі конкретних документів клієнта (договори, інструкції, законодавство, листи) без перенавчання. Документи розбиваються на чанки, перетворюються на ембедингі за допомогою text-embedding-3-large (OpenAI) або embed-english-v3 (Cohere), зберігаються в pgvector (розширення PostgreSQL) і добуваються за косинусною подібністю.
Пайплайн RAG включає: завантаження документів (PDF, DOCX, HTML), розумне розбиття на чанки (з перекриттям для збереження контексту), повторне ранжування через Cohere Rerank для вищої релевантності, додавання в контекст LLM і цитування джерел із номером сторінки. Результат — чат-бот, який відповідає на основі реальних документів і показує перевірювані джерела.
- pgvector для векторного пошуку за подібністю безпосередньо в PostgreSQL — без Pinecone/Weaviate
- Гібридний пошук: щільні вектори + розріджений BM25 (за ключовими словами) → злиття RRF
- Оцінювання RAG за допомогою RAGAS — precision, recall, faithfulness вимірюються автоматично
- Фільтрація за метаданими для мультиорендності: користувач A не бачить документів користувача B
Комп'ютерний зір і обробка документів
Для вилучення даних зі сканованих або сфотографованих документів (рахунки, договори, посвідчення особи) ми використовуємо комбінований пайплайн: попередня обробка зображення (випрямлення нахилу, зменшення шуму з OpenCV), OCR через Google Document AI або Amazon Textract (структурований, а не сирий OCR), постобробка за допомогою LLM для нормалізації та валідації.
Класифікація зображень (товари, категорії, виявлення NSFW) виконується моделями, донавченими на основі CLIP або EfficientNet, і розгортається як мікросервіси FastAPI з опційним GPU-інференсом (CUDA). Для проєктів без бюджету на GPU хмарні API (Google Vision, AWS Rekognition) не потребують власного GPU-сервера.
- Автоматичне вилучення даних із рахунків PDF/зображень → структурована база даних
- Перевірка особи: OCR документа + selfie liveness detection
- Модерація користувацького контенту через хмарні API + резервний LLM
- Speech-to-text на Whisper large-v3 для транскрибування аудіо зустрічей
Переваги та обмеження
Переваги
- Автоматизує повторювані процеси: вилучення даних, класифікація, підтримка.
- RAG відповідає на документах клієнта з перевірюваними джерелами.
- Prompt caching знижує вартість до 90% на контексті, що повторюється.
- Резервування між моделями (Claude → GPT-4o → Gemini) для доступності.
Обмеження
- LLM можуть галюцинувати — будь-який критичний результат потребує валідації та джерел.
- Вартість за токен швидко зростає за великого обсягу без ретельного кешування.
- Чутливі дані, що надсилаються до сторонніх API, порушують питання конфіденційності.
- Затримка згенерованої відповіді може сягати кількох секунд.
Короткий висновок
Інтегруйте AI там, де він дає реальний ROI: автоматизація, RAG на документах, вилучення даних. Уникайте AI заради AI у задачах, де достатньо простого правила чи класичного пошуку.
Таблиця специфікацій
| Можливість | Обмеження / поріг | Типове використання | |
|---|---|---|---|
| Контекст LLM | До 200k токенів (Claude) | Великий контекст збільшує вартість і затримку | Аналіз довгих документів, звітів |
| RAG | pgvector, гібридний пошук, повторне ранжування | Якість залежить від розбиття на чанки та джерел | Чат-бот на власних документах |
| Комп'ютерний зір | Структурований OCR | GPU-інференс збільшує вартість | Вилучення даних із рахунків, перевірка посвідчень |
| Типова вартість | Тарифікація за токен / за виклик API | Зростає з обсягом без кешування | Від чат-бота до повного пайплайна |
RAG проти fine-tuning
| Критерій | RAG | Fine-tuning |
|---|---|---|
| Оновлення знань | Після додавання документів | Потребує перенавчання |
| Перевірювані джерела | Так, із цитуванням | Ні |
| Початкова вартість | Низька | Висока (дані + GPU) |
Поширені запитання
Що таке RAG і коли його використовувати?
RAG (Retrieval-Augmented Generation) дає змогу AI відповідати на ваших документах (договори, інструкції, законодавство) без перенавчання. Його використовують, коли потрібні відповіді з джерелами на основі власних даних.
RAG чи fine-tuning?
RAG — для знань, що часто змінюються, та для перевірюваних джерел: ви оновлюєте його, додаючи документи. Fine-tuning — для фіксованого стилю чи формату, з вищою початковою вартістю. Для більшості бізнес-випадків вибір — RAG.
Як ви контролюєте галюцинації AI?
Ми використовуємо RAG із цитуванням джерел, structured outputs (JSON), перевірені через Pydantic, та людську валідацію для критичних результатів. AI відповідає на основі реальних документів, а не з пам'яті, а відповіді супроводжуються посиланнями на джерела.
Чи залишаються мої дані конфіденційними?
Чутливі дані можна ізолювати для кожного орендаря та, за потреби, обробляти на self-hosted моделях або через API з умовами заборони навчання. Для регульованих випадків обираємо провайдерів, які не використовують дані для навчання.