DocuInsight спростить підписання
Події
15 вересня 2025 року: DocuInsight був закритий, але тепер повністю відкритий з вихідним кодом на github.com/eandf/DocuInsight з документацією на eandf.github.io/DocuInsight. Оригінальний домен перенаправляє туди до 2027 року.
27 січня 2025 року: DocuInsight був створений Mehmet Yilmaz та Dylan Eck для DocuSign Hackathon Unlocked 2024-2025. Перегляньте www.docuinsight.ai або нашу живу демонстрацію. Ця публікація базується на нашій поданні на Devpost.
Про нас
DocuInsight - це платформа, яка спрощує юридичні контракти, підкреслюючи ключові положення, перекладаючи їх на зрозумілу англійську, та інтегруючись з DocuSign для електронних підписів, а також пропонує доступ до юридичних експертів.
DocuInsight був створений для вирішення проблеми “Пастка угоди”, коли важливі деталі контракту залишаються прихованими за юридичним жаргоном, що змушує людей підписувати без повного розуміння своїх прав або зобов’язань. Наша мета - допомогти обом сторонам будь-якої угоди, підписантам та відправникам, отримати повну ясність перед підписанням. Крім того, ми хотіли надати простий спосіб для користувачів зв’язатися з юридичними професіоналами, якщо їм потрібна персоналізована консультація.
Розроблений з грудня 2024 року по січень 2025 року для DocuSign Hackathon, DocuInsight інтегрується з технологією DocuSign для імпорту угод або шаблонів, використовує API OpenAI для аналізу тексту та пропонує інтерфейс чату, який може відповідати на запитання про контракт або надавати джерела для пошуку юристів. Ми вважаємо, що усунення цього розриву в знаннях зменшить плутанину, юридичні спори та втрачені можливості для всіх учасників.
Демонстрація
Натхнення
На початку 2024 року я спільно заснував стартап з близьким другом. Довіряючи йому, я підписав початкові контракти компанії, не переглянувши їх повністю. Після того, як я витратив значний час та експертизу на розробку MVP компанії без оплати, мій друг використав свою додаткову частку, щоб змусити мене або зменшити свої акції, або бути виключеним з компанії. Знайшовши юриста, я виявив, що ненавмисно підписав важливі права і не міг ефективно захистити себе або компанію. Через егоїстичну та безвідповідальну поведінку мого колишнього близького друга, суперечка завдала мені особистих страждань і коштувала компанії цінного часу. Цей досвід навчив мене критичної важливості розуміння кожної деталі в юридичних угодах для захисту особистих прав та забезпечення стабільності організації.
Що це робить
Особливості та функціональність:
-
Чіткі резюме контрактів: DocuInsight використовує передові моделі ШІ для аналізу юридичних документів та створення стиснених резюме. Ці резюме підкреслюють ключові положення, незвичайні терміни, потенційні ризики та основні зобов’язання, надаючи користувачам чіткий та зрозумілий огляд контракту.
-
Інтерактивний чат-інтерфейс: Функція чату на базі ШІ дозволяє користувачам “спілкуватися” зі своїм контрактом. Вони можуть ставити запитання про конкретні положення, загальну мету угоди або пов’язані юридичні концепції. Чат-бот також може переглядати веб, щоб надавати добре обґрунтовану, точну та актуальну інформацію, забезпечуючи надійні відповіді.
-
Рекомендації юристів: Для користувачів, які шукають додаткову юридичну допомогу, DocuInsight генерує оптимізовані запити для пошуку юристів на основі місцезнаходження користувача та типу контракту, який вони переглядають. Результати пошуку включають контактні дані та відгуки про юридичних професіоналів, надаючи користувачам дієвий спосіб зв’язатися з експертами.
-
Покращений процес підписання: DocuInsight безперешкодно інтегрується з існуючим робочим процесом підписання DocuSign. Користувачі входять за допомогою своєї електронної пошти, підключають свій обліковий запис DocuSign для доступу до шаблонів і надсилають документи на підпис. Після відправлення отримувач може переглянути документ, взаємодіяти з генерованими ШІ інсайтами та підписати так, як вони б це зробили в стандартній платформі DocuSign.
-
Доступ після підписання: Після підписання користувачі можуть знову відвідати свій документ через оригінальне посилання, щоб переглянути підписану угоду, отримати доступ до інсайтів ШІ та продовжити взаємодію з інтерфейсом чату для подальших запитань. Це забезпечує, щоб підписанти мали постійну ясність щодо своїх угод.
Ці функції роблять DocuInsight потужним інструментом для спрощення складностей юридичних контрактів. Поєднуючи інсайти на основі ШІ, інтерактивну підтримку та безперебійну інтеграцію з DocuSign, DocuInsight надає можливість підписантам приймати обґрунтовані рішення, допомагає відправникам будувати довіру до угод, які вони розповсюджують, і надає юридичним професіоналам можливості зв’язатися з користувачами, які шукають подальшу допомогу. Наша мета - сприяти прозорості, довірі та доступності в процесі укладання угод, роблячи юридичний текст легшим для розуміння та справедливішим для всіх.
Якщо ви хочете побачити чітке відео, на якому ми використовуємо DocuInsight і демонструємо його функції, перегляньте це додаткове відео, яке ми зробили з DocuInsight в дії (це НЕ наше демонстраційне відео, просто додатковий ресурс, якщо люди хочуть більше деталей):
Як ми це побудували
DocuInsight складається з трьох основних частин:
- База даних: Зберігає всі роботи, звіти, дані користувачів тощо. Вона містить необхідні дані проекту.
- Фронтенд: UI для проекту, що бачать і з чим взаємодіють користувачі.
- Аналізатор: Сервіс на бекенді, відповідальний за аналіз юридичних контрактів та надсилання електронних листів.
Для цього проекту використовувалася база даних. База даних була PostgreSQL, і вона була розміщена на Supabase. Як фронтенд, так і Аналізатор отримували доступ до бази даних за допомогою API Supabase через їхні SDK. Налаштування бази даних складалося з трьох таблиць: одна для користувачів, одна для робіт і одна для звітів. Таблиця користувачів використовується для аутентифікації та відстеження облікових записів. Таблиця робіт відстежує контракти, які потрібно проаналізувати. Таблиця звітів зберігає всі звіти про контракти, згенеровані Аналізатором.
Фронтенд був побудований за допомогою фронтенд-фреймворку під назвою Next.js. У цьому фреймворку ми використовували HTML, Tailwind CSS, JavaScript, TypeScript та React. Ці технології дозволили фронтенду функціонувати та динамічно і адаптивно відображати контент. Крім того, ми використовували кілька API на фронтенді:
- API OpenAI: Для хостингу та запуску чат-бота для кожної сесії підписання.
- API DocuSign: Зокрема, API eSignature використовувався для обробки всіх процесів підписання та надання легкого доступу до шаблонів користувачів з їхніх облікових записів DocuSign на DocuInsight.
- API Tavily: Спеціалізований API пошукової системи, розроблений для LLM, що дозволяє чат-боту переглядати веб і отримувати останні новини або оновлення.
- API Resend: Використовувався для обробки всіх завдань, пов’язаних з електронною поштою, в основному для процесів входу на фронтенді.
- API Supabase: Отримав доступ до бази даних проекту, розміщеної на Supabase, для виконання CRUD-операцій.
Фронтенд повністю розміщений на Vercel, хостинговій службі, розробленій творцями фреймворку Next.js.
Аналізатор був побудований за допомогою Python. Він використовує API OpenAI для аналізу юридичних контрактів, використовуючи одну з найсучасніших моделей OpenAI, o1-preview. Він також використовує API Resend для надсилання електронних листів, в основному для надсилання чека або електронного листа, необхідного для підписання контракту на DocuInsight. Аналізатор підтримує вебхуки Discord, що дозволяє користувачам отримувати сповіщення, якщо щось критичне ламається або відбувається під час роботи Аналізатора. Як і решта проекту, Аналізатор використовував Supabase для доступу до бази даних проекту.
Код для Аналізатора включає пакети, такі як:
- PyMuPDF, openpyxl, python-docx та модель o1-preview OpenAI: Для завантаження вмісту різних типів файлів, включаючи PDF, DOCX, DOC, JPG та PNG.
Аналізатор розміщений на екземплярі Linode з принаймні 4 ГБ оперативної пам’яті, що працює на Ubuntu як операційна система.
Виклики, з якими ми зіткнулися
Створення DocuInsight було сповнене технічних та практичних викликів. Нам потрібно було зрозуміти, як реалізувати безпечну аутентифікацію, яка безперешкодно підключалася б до нашої бази даних, забезпечуючи при цьому захист даних користувачів. Розуміння, які частини API DocuSign використовувати для функціональності, яку ми хотіли, вимагало багато проб і помилок. Структурування фронтенду для забезпечення хорошого користувацького досвіду та інтеграція таких розширених функцій, як функціональність LLM, в існуючий процес підписання DocuSign також було важко реалізувати. Потокове передавання даних у реальному часі з сервера на клієнт для інтерфейсу чату було складним, як і пошук способу рекомендувати юристів, оскільки немає легко доступного або доступного набору даних для юридичних професіоналів через API. Нам потрібно було побудувати логіку веб-перегляду для чат-бота, щоб мінімізувати галюцинації та зробити його відповіді більш надійними. Нарешті, підготовка проекту до виробництва була найскладнішою частиною. Це одне - побудувати та запустити щось локально для демонстрації, але зовсім інша проблема - розгорнути його в Інтернеті з високою доступністю та надійністю, щоб будь-хто міг отримати до нього доступ. Одна помилка в продукції могла залишити погане враження, тому забезпечення стабільності було критично важливим і надзвичайно складним.
Досягнення, якими ми пишаємося
Ми пишаємося успішним впровадженням DocuInsight і зробленням його доступним для всіх. Створення програми, готової до виробництва, яка безперешкодно інтегрується з DocuSign, обробляє реальне використання та надає надійні інсайти на основі штучного інтелекту, стало значним досягненням. Одне діло - створити локально для демонстрації, але забезпечити, щоб усе працювало в реальному середовищі з високим часом безвідмовної роботи, було викликом, яким ми пишаємося, що подолали.
Що ми дізналися
Протягом цього проєкту ми усвідомили, що створення рішення на кшталт DocuInsight було набагато складнішим, ніж ми спочатку очікували. Парсинг юридичних документів, забезпечення точності та балансування можливостей штучного інтелекту з доступністю вимагали ретельного обмірковування та постійної ітерації. Ми також дізналися про важливість належного відеовиробництва. Щоб забезпечити, щоб наша демонстрація ефективно передавала цінність нашого проєкту, ми почали працювати над відео за два тижні до терміну, використовуючи професійне кінематографічне обладнання для створення відшліфованого фінального продукту. Крім того, масштабування таких проєктів ставило унікальні виклики. Викликання розвинених моделей штучного інтелекту для аналізу контенту є обчислювально витратним, тому нам довелося ретельно балансувати між використанням найінтелектуальніших моделей і забезпеченням економічності рішення. Нарешті, ми провели базове дослідження ринку, переглядаючи веб, спілкуючись з потенційними користувачами та консультуючись з юристами, щоб забезпечити, що DocuInsight може надати реальну цінність. Цей процес навчив нас, що створення чогось значущого вимагає перевірки його впливу, а не просто створення рішення заради цього.
Що далі для DocuInsight
Ми плануємо розширити DocuInsight, розробивши більш розвинені агенти штучного інтелекту для глибшого аналізу контрактів, вдосконаливши векторизовані набори даних для кращих інсайтів і створивши більш комплексний каталог юристів, щоб з’єднати підписантів і бізнеси з юридичними професіоналами у їхній місцевості. Майбутні функції включають інструменти, такі як пошук справ SEC для посилання на юридичні прецеденти. Наша мета - надати ще більше цінності підписантам, відправникам і бізнесам, одночасно сприяючи довірі та прозорості в угодах.