Продукти · У продакшені з 2025
XBuilder
AI-платформа обмірів для кошторисів у будівництві. Вона читає PDF-план поверху й повертає структуровані обсяги — приміщення з площами та периметрами, отвори з шириною й висотою, розмірні ланцюжки та секції будівлі — які кошторисник експортує у CSV чи JSON і рахує з них тендерну пропозицію, замість вимірювати креслення вручну.
Що було технічно складним
Мовна модель повертає правдоподібний JSON, а не схему. Плани по-різному називають поверхи, подають розміри в тих одиницях, які обрав кресляр, і взагалі пропускають поля — тому нічому від моделі не довіряють напряму: кожне число приводиться до типу, перш ніж стати рядком, поверхи виводяться з карти приміщень, а не зчитуються з підписів, і кожне приміщення та отвір несуть власну оцінку впевненості. Кошторисник рахує ціну за цими цифрами, тож хибне число, яке виглядає точним, значно гірше за позначене як непевне.
Як це побудовано
Django і DRF на PostgreSQL, Celery виконує вилучення, Redis тримає чергу. PDF іде в OpenAI файлом, а відповідь розбирається за шаблоном промпту, обраним під конкретну модель, із трьома повторами й експоненційною затримкою. Прогрес пишеться в запис плану й надсилається у браузер через Centrifugo, тож довге опрацювання показує рух, а не спінер. Кожен план обмежений своєю організацією на рівні запиту й дозволів.
Одне рішення, і чому
Ми надсилаємо моделі PDF файлом, а не растеризуємо його заздалегідь. Перетворення на зображення дало б нам контроль над роздільною здатністю, але кожен крок конвертації коштує деталей, від яких залежить креслення — тонких ліній, розмірного тексту, штрихування, — а саме їх і має прочитати вилучення.
$ розкажіть, що ви будуєте і де застрягли
Забронювати 30-хв дзвінок
Відповідаємо протягом одного робочого дня.