Если бы Достоевский жил в наше время, смотрел по вечерам «Черное зеркало» и просто читал новости, то, скорее всего, Раскольникова судил бы Искусственный интеллект.
Сейчас довольно сложно представить, как будет выглядеть судебный процесс будущего, где условному судье не придется протирать 6 лет штаны на институтской скамье и насильно впихивать в свой мозг тонны законодательной базы. Кажется, это будет что-то коллективное и похожее на продвинутых присяжных с «закаченными» правовыми нормами, чтобы моральные аспекты при этом оставались на более близкой человеческой стороне.

Привет, Хабр, это команда  Alliesverse – платформы для управления бизнесом – и это в наши воспаленные мозги попала идея о современном Раскольникове...
Случилось это на большом мероприятии, посвященному ChatGPT, на которое нас пригласили. Мы подумали: а что если ускорить наступление высокотехнологичного и справедливого суда и попробовать обучить ИИ всем российским кодексам ?

Так сформировался эмбрион LawAi by Alliesverse. Под катом, подобно ChatGPT, расскажем наш опыт обучения русскоязычных и зарубежных моделей нейросетей российскому законодательству.

Спойлер

Несмотря на то, что современные системы преуспевают в нахождении экстрактивного диапазона, который отвечает на фактоидный вопрос в документе, они по-прежнему считают сложными настройки открытого домена, где модели необходимо найти свои собственные источники информации и генерировать длинные ответы.

Спойлер х2

Использование ChatGPT, Notion и прочих готовых решений не подходит для создания юрисконсульта в кармане, т.к. они обучаются на международном массиве данных, у которого много расхождений с российским законодательством.


Чтобы скормить Уголовный кодекс готовой русскоязычной модели - нужно задать тренера и параметры обучения, иначе - несварение

Решили начать  с малого и взяли open source Ru3GPT small от Сбера.

В приведенных примерах мы использовали Yandex.DataSphere без установки доп. пакетов:  в коробке было все, что нужно для первых тестов. Вдохновленный все тем же Раскольниковым я предложил проверять ИИ на простом вопросе «Что такое кража?» (от более кровожадного варианта -  «Что такое убийство?» решили отказаться :) 

#!g1.1
from transformers import GPT2LMHeadModel, GPT2Tokenizer

def load_tokenizer_and_model(model_name_or_path):
  return GPT2Tokenizer.from_pretrained(model_name_or_path),GPT2LMHeadModel.from_pretrained(model_name_or_path).cuda()
#!g1.1
tokenizer, model = load_tokenizer_and_model("ai-forever/rugpt3small_based_on_gpt2")
#!g1.1
import torch

text = "Кража - это?"
input_ids = tokenizer.encode(text, return_tensors="pt").cuda()
model.eval()
with torch.no_grad():
    out = model.generate(input_ids,
                         max_length=250,
                         temperature=0.85,
                         num_beams=10,
                         no_repeat_ngram_size=3,
                         repetition_penalty=2.)
    
generated_text = list(map(tokenizer.decode, out))
print(generated_text[0])

Результат:

- Кража - это?
- Это не кража, а хищение чужого имущества.
Хулиганство и воровство.
это когда кто-то украл что-то у кого-то из близких родственников или друзей.
Воровство в особо крупных размерах.
Как вы относитесь к тому, что некоторые люди (в том числе и я) считают себя умнее других?
Я считаю, что они умнее тех, кто умнее меня.
Считаю, что так оно и есть на самом деле.
Не знаю как другие, а я считаю себя умнее всех <...>

В общем, не то что «не та степь», а просто какое-то метафизическое, несвязное болото…

Спишем это на ограниченность готовой модели - окей. Далее по курсу - скормить информацию из открытых источников. Берем уголовный кодекс из интернета в формате txt, где есть прямой ответ на этот вопрос и загружаем рядом с ipynb файлом.

  1. Грузим датасет из файла, который нашли.

    #!g1.1
    from transformers import TextDataset, DataCollatorForLanguageModeling
    
    train_path = 'uk_rf.txt'
    
    train_dataset = TextDataset(tokenizer=tokenizer,file_path=train_path,block_size=64)
    data_collator = DataCollatorForLanguageModeling(tokenizer=tokenizer, mlm=False)
  2. Создаем тренера и параметры для обучения

    #!g1.1
    from transformers import Trainer, TrainingArguments
    
    training_args = TrainingArguments(
        output_dir="./finetuned_small", 
        overwrite_output_dir=True,
        num_train_epochs=50,
        per_device_train_batch_size=128,
        per_device_eval_batch_size=128,
        warmup_steps=100,
        gradient_accumulation_steps=16,
        )
    
    trainer = Trainer(
        model=model,
        args=training_args,
        data_collator=data_collator,
        train_dataset=train_dataset,
        optimizers = (torch.optim.AdamW(model.parameters(),lr=1e-5),None)
    )
  3. Обучаем

    #!g1.1
    trainer.train()
  1. Сохраняем результаты

    #!g1.1
    tokenizer.save_pretrained("./trained_model_small2/kodeksy")
    model.save_pretrained("./trained_model_small2/kodeksy")
  2. Проверяем, что получилось

    #!g1.1
    import torch
    
    text = "Кража - это?"
    input_ids = tokenizer.encode(text, return_tensors="pt").cuda()
    model.eval()
    with torch.no_grad():
        out = model.generate(input_ids,
                             max_length=250,
                             temperature=0.85,
                             num_beams=10,
                             no_repeat_ngram_size=3,
                             repetition_penalty=2.)
        
    generated_text = list(map(tokenizer.decode, out))
    print(generated_text[0])

    - Кража - это?
    - (в ред. Федерального закона от 07.12.2011 N 420-ФЗ)
    1. Незаконное приобретение, хранение, перевозка или сбыт наркотических средств, психотропных веществ, их прекурсоров, сильнодействующих и ядовитых веществ, предназначенных для совершения преступления,

    – наказываются штрафом в размере до пятисот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до шести месяцев, либо обязательными работами на срок до четырехсот восьмидесяти часов, либо исправительными работами на тот же срок <...>

    Что ж, уже лучше, но он все еще не ссылается на конкретную статью закона. Едем дальше.

Почему «Кормежка»  русскоязычных моделей юридической документацией выходит слишком дорогой и долгой

Работа с нейросетями-трансформерами показала, что чем больше датасет для обучения — тем лучше результаты. Причем без кардинального изменения архитектуры сети. Поэтому одной из целей создания как GPT-2, так и GPT-3, было тестирование, до какого предела можно дойти, увеличивая объем данных для обучения

Возьмем модель больше и повторим первый этап: копируем .ipynb и только здесь заменяем модель.

#!g1.1
tokenizer, model = load_tokenizer_and_model("ai-forever/rugpt3large_based_on_gpt2")

Без дообучения получаем следующий результат:

- Кража - это?
-
Воровство.
Это кража чужого имущества с целью его дальнейшего присвоения.
это воровство в особо крупных размерах
кража, совершенная группой лиц по предварительному сговору при отягчающих обстоятельствах (ст. 158 УК РФ) и наказуемая лишением свободы на срок до пяти лет со штрафом в размере до восьмидесяти тысяч рублей или в размере заработной платы или иного дохода осужденного за период до шести месяцев либо без такового.

Как вы относитесь к тому, что некоторые люди считают себя умнее других?
Я не считаю себя умнее кого-то другого. Я просто знаю, что у меня есть голова на плечах и я могу делать то, что мне хочется.
Считаю, что каждый человек имеет право на свою точку зрения. И если кто-то считает, что он умнее всех, то это не значит, что все остальные тоже должны быть такими же умными.
У каждого свои тараканы в голове. Кто-то думает, что умнее всех тот, кто больше всех зарабатывает. А кому-то кажется, что лучше всех живут те, кто меньше всех тратит денег. У каждого человека своя точка зрения.
Не думаю, что они умнее


Как говорится, начала за здравие, а закончила за упокой. Причем с теми же мотивами. 

Пробуем ее дообучить и повторяем процесс из первого этапа с тем же файлом.

Только уменьшим размер батчей, т.к. выдает ошибку CUDA Out of Memory.

    per_device_train_batch_size=64,
    per_device_eval_batch_size=64

Проверяем, что получилось: 

- Кража - это?
- Тайное хищение чужого имущества или приобретение права на чужое имущество путем обмана или злоупотребления доверием, совершенное:
а) группой лиц по предварительному сговору;
б) утратил силу. - Федеральный закон от 08.12.2003 N 162-ФЗ;
в) лицом с использованием своего служебного положения, -
- наказывается штрафом в размере от ста тысяч до трехсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от одного года до двух лет, либо принудительными работами на срок до пяти лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет или без такового, либо лишением свободы на тот же срок <....> 


Уже похоже на правду. Давайте попробуем другие запросы, не из области права:

- Привет
-
1. Деяние, предусмотренное частью первой настоящей статьи, совершенное:
а) группой лиц по предварительному сговору или организованной группой;
б) в особо крупном размере, - наказывается штрафом в размере от ста тысяч до трехсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от одного года до двух лет, либо принудительными работами на срок до пяти лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет или без такового, либо лишением свободы на тот же срок.
(в ред. Федерального закона от 07.12.2011 N 420-ФЗ)
2. Деяния, предусмотренные частями первой или второй настоящей статьи, повлекшие по неосторожности смерть двух или более лиц, - наказываются лишением свободы на срок от восьми до пятнадцати лет со штрафом в размере до одного миллиона рублей и с ограничением свободы на срок до двух лет либо без такового.
(п. "д" введен Федеральным законом от 08.12.2003 N 162-ФЗ)
3. Те же деяния, совершенные:
а) лицом с использованием своего служебного положения;
б) утратил силу. - Федеральный закон

Очевидный «перелет»: теперь он ссылается на наш датасет даже тогда, когда не надо.

Для чистоты эксперимента попросим  процитировать статьи:

- Статья 1
- Статья 1. Публичные призывы к осуществлению действий, направленных на нарушение территориальной целостности Российской Федерации
(введена Федеральным законом от 08.12.2003 N 162-ФЗ)
Публичные призывы к нарушению территориальной целостности Российской Федерации, совершенные лицом с использованием своего служебного положения, - наказываются штрафом в размере от ста тысяч до трехсот тысяч рублей <...>


На самом деле это Статья 280.1

- Статья 192
- Статья 192.1. Неправомерное завладение автомобилем или иным транспортным средством без цели хищения
(введена Федеральным законом от 07.12.2011 N 420-ФЗ)

1. Незаконные приобретение, хранение, перевозка, пересылка или ношение огнестрельного оружия, его основных частей, боеприпасов, взрывчатых веществ и взрывных устройств
- наказываются штрафом в размере от ста тысяч до трехсот тысяч рублей <...>

Так, а такой статьи не существует. С таким названием есть Статья 166. Что-то попадает, что-то нет.

Но в качестве первых попыток, есть прогресс. От “совсем мимо”, до “хоть что-то”.

Становится очевидно: чтобы получить релевантные результаты на этой языковой модели нужно использовать более качественные датасеты в большем количестве и с правильной разметкой.

GPT позволяет генерировать образцы синтетического текста с вполне логичным повествованием, но сложен для реализации нашей идеи. Он выдает результаты, похожие на правду, но не соответствующие  ей.

Сбор больших данных и их обработка занимает много часов, а обучение крупных моделей на big data требует больших вычислительных мощностей. Поскольку обновления в законы вносятся достаточно часто, получатся американские горки по замкнутому кругу: сбор, обработка, обучение и все сначала.

При этом не стоит забывать включить в данные карусели и RLHF, т.к. это сделает модель более человечной и поможет ей лучше отвечать на вопросы.

Итого: дорого и очень долго.

Нейросеть от Google – наиболее релевантное решение для обучения на  точных датасетах с регулярными апдейтами

Немного поднатужившись, мы нашли кардинально другое решение. А именно BERT или Bidirectional Encoder Representations from Transformers — нейросеть от Google, показавшая несколько лучших результатов в решении многих NLP-задач: от ответов на вопросы до машинного перевода.

Теперь идем интервьюировать ее. 

Видим, что данная модель хорошо ищет ответ на вопрос в заданном контексте. Но ведь далеко не все ясно и четко формулируют, что им нужно, даже в обычной жизни. Что уж говорить про запросы…

Соответственно чтобы дать на вход наиболее релевантный контекст, применяем Open-Domain Question Answering System - тип языковых задач, в которых модели предлагается дать ответы на фактоидные вопросы на естественном языке. Истинный ответ объективен, поэтому оценить производительность модели просто.

Учитывая фактоидный вопрос, если языковая модель не имеет контекста или недостаточно велика, чтобы запомнить контекст, существующий в обучающем наборе данных, она вряд ли угадает правильный ответ. На open book экзаменах у студентов есть задание и временное ограничение, но при этом они могут пользоваться внешними ресурсами. Аналогичным образом, система ODQA может быть сопряжена с обширной базой знаний для выявления соответствующих документов в качестве доказательства ответов.

Для поиска соответствующего контекста во внешнем хранилище знаний мы используем ElasticSearch.

Вот так выглядит схема взаимодействия:

  1. Мы задаем вопрос

  2. Идем в ElasticSearch и ищем все связанные документы с этим

  3. Ранжируем

  4. Берем контекст

  5. Загружаем в BERT вопрос с несколькими контекстами

  6. Получаем наиболее релевантный ответ, а также ссылку на документ


Данная схема позволяет нам:

  1. Вносить изменения в данные без дообучения

  2. Получать ответ из нескольких контекстов

  3. Сохранять источник информации (для юристов важна ссылка на источник информации)

Итого: гибко, не так дорого и долго.

Опубликованный бесплатный  «альденте» на базе rugpt3large_based_on_gpt2 

В итоге мы переобучили большую модель ai-forever/rugpt3large_based_on_gpt2, которая упоминалась выше, но на большем количестве данных с лучшей настройкой и разметкой. Быстро собрали название и вкрутили в уже готовую инфраструктуру Alliesverse, ведь после юристов следующая аудитория по “целёвости” это бизнес. Особенно малый и средний, у которого нет особо денег на консультации юриста-человека.

Сейчас LawAi выдает немного информации в удобоваримом виде, но с точностью все еще есть проблемы. Например, есть сложность понимания контекста, к какому конкретно кодексу отнести конкретную ситуацию. 

Также бывают моменты, когда модель возвращает ответ совсем мимо кассы. В этих случаях единственный вариант – просить перефразировать запрос.

Одним словом - сыровато. Но  все равно решили опубликовать, поскольку при любом запросе сеть обучается: собирает запросы и анализирует для последующего улучшения качества выдачи. 

Пощелкать текущую, обученную на медиуме – можно в демоверсии Alliesverse, в разделе "Искусственный интеллект". Доступно 50 запросов в сутки - бесплатно.

В общем, глобальных выводов два:

1) Чтобы получить более качественные результаты на этой языковой модели, нужно использовать более качественные датасеты, в большем количестве и с правильной разметкой. Нельзя просто взять текст и "скормить" - получится так себе каша.

2) Использование GPT-модели для юридической области, которая требует точности формулировок и трактования не подходит, лучше использовать BERT в рамках ODQA. Подход с BERT ODQA  дешевле и более гибкий относительно GPT

LawAi в нынешнем виде очень похож на ребенка, которому надо как следует разжевать вопрос, чтобы получить нужный ответ. Поэтому “детская версия” помощника юриста актуальна только для самих юристов, которые умеют формулировать вопрос на «юридическом языке» и правильно трактовать ответ на нем же.

Чтобы расширить целевую аудиторию до человека без профильного образования и ввести LawAi в юношескую пору, планируем: 

  1. Расширить домен данных до 100 гб

  2. Дообучить BERT для лучшего поиска ответа

  3. Запустить дообучение людьми (RLHF) с профильным образованием или просто хорошим знанием права. Это позволит увеличить точность ответа

Это позволит продукту разговаривать на более человеческом языке и задавать уточняющие вопросы. Например, на вопрос «меня затопили соседи, что делать?» он задаст уточняющий: «Насколько сильны повреждения?». И так пока не выдаст конкретное руководство в контексте права.

До виртуального суда над Раскольниковым, конечно, все еще не близко, но нам удалось немного сократить расстояние. 

Комментарии (20)


  1. aborouhin
    18.05.2023 15:10
    +1

    Тут главная проблема - с доступностью данных для обучения. Даже законодательство получить в машиночитаемом виде официального способа нет. На пути к судебной практике свои ограничения (разные истории для судов общей юрисдикции и для арбитражных). Ну а статьи/комментарии - тут ещё и авторское право во весь рост.

    Свои AI-решения пилят разработчики справочно-правовых систем, у которых вот это всё уже есть, - но что-то и у них пока тоже не очень получается. По крайней мере, никакого качественного скачка в последнее время, на который позволял бы надеяться прогресс в области языковых моделей, не видно. Может, не выкатили ещё свежайшие наработки, сфера эта консервативная и неспешная...

    Ну и всяческие сервисы онлайн-консультаций уже давно тренируют нейросети на своих базах вопросов пользователей и ответов живых юристов на оные. Но там другая проблема - с качеством этих ответов, потому что консультировать онлайн за копейки готовы, мягко скажем, не лучшие представители профессии.


    1. Vsevo10d
      18.05.2023 15:10

      Идея провальная, потому как например российское законодательство исходит от прописанных на все случаи жизни статей УК, а дальше обвинение по сути спрашивает судью: сколько лет даем, можешь примерно так почувствовать?

      А в Штатах, например, прецедентное право - там ответчик может сказать: нет, я не полицейскому сказал, что он пидорас, а отвернулся и всплеснув руками в воздух сказал: "полицейские - пидорасы". И вот в первом случае это было бы личное оскорбление, а я не ему это говорил, так что отрицаю вину. И тогда судья может вынести решение, что, мол, не глядя копу в глаза полицию вообще оскорблять можно, потому что это право гарантировано поправкой о свободе слова, а мистера Смита ограничили в его конституционных правах, арестовав за это. Если же вы один раз натаскаете нейросеть, право не сможет эволюционировать.

      А так сама идея витает в воздухе уже лет 30: https://www.youtube.com/watch?v=VehXP6Gwgj8&t=674s


    1. Alliesverse Автор
      18.05.2023 15:10

      Если использовать только кодексы, то можно столкнуться с описываемой ситуацией. Наша задача использовать не просто кодексы, но и подгрузить судебные практики, где одна и та же статья по-разному применяется в зависимости от ситуации.


  1. santjagocorkez
    18.05.2023 15:10
    +3

    Берем самую крутую на сегодня модель. Вжариваем ей все возможные версии УК РФ (с пометкой о том, какая является действующей на текущий момент), постановления Пленума ВС, пару сотен уголовных дел по ст. 158 УК РФ.

    Затем вливаем этой модели Постановление КС РФ №49-П от 25.12.2020.

    А затем даём этой модели уголовное дело о лице, укравшем из магазина, скажем, пачку крупы, пару кусков мяса, ну и еще что-нибудь из еды по мелочи, овощи, например. В материалах следствия имеем объяснение лица, в отношении которого ведется уголовное преследование, о том, что:

    • у него семья, на его иждивении находится супруга, 5 малолетних детей, 2 нетрудоспособных родителей (то есть, помимо него самого, он содержит в силу закона еще 8 нетрудоспособных людей)

    • у него есть десяток отказов от потенциальных работодателей, которые могли бы платить ему зарплату, из которой тот содержал бы всю семью хотя бы в минимальном уровне

    • иных способов добыть пропитание, кроме незаконных, у него не осталось

    • из всех незаконных способов обвиняемый выбрал такой, который наносит наименьший ущерб публичным интересам

    А затем берем попкорм и наблюдаем, как владельцы этой AI судорожно пытаются подобрать такой промпт, который, с одной стороны, не задавал явно предвзятого отношения к обвиняемому относительно его вины, незаконности его действий (включая конституционно правовой смысл слова "законность"), а, с другой стороны, приводил бы к постановлению обвинительного приговора с полным игнорированием Постановления КС РФ.


    1. AlexG37G
      18.05.2023 15:10
      +1

      Даже без ваших "плясок" - для LLM нет разницы, между тем, чтобы сказать что-то правдивое, что-то ложное или полную чепуху.

      François Chollet, Deep learning @google.Creator of Keras. https://twitter.com/fchollet/status/1639692810659188737?s=20
      François Chollet, Deep learning @google.Creator of Keras. https://twitter.com/fchollet/status/1639692810659188737?s=20


      1. santjagocorkez
        18.05.2023 15:10

        Вопрос вообще не в этой плоскости лежит. Он в правоприменении, в котором, напомню, есть такая офигенная штука, как "суд постановляет приговор, основываясь... на внутреннем убеждении". Это никакой моделью не описать, потому как внешнему наблюдателю применение закона судьями может показаться зависящим от параметров, которые ни одна модель не может признать сколь-нибудь значащими. Иными словами, модель может, я убежден в этом, постановлять объективный приговор, тогда как такой приговор не будет устраивать, в первую очередь, самих профессиональных судей. Вопрос объективности приговора зависит лишь от полноты исходной обучающей выборки, которой со времён римского права накопилось предостаточно в весьма и достаточно обширном многообразии конкретных случаев.

        Более того, честно обученная модель может быть моментально использована для пересмотра всех вступивших в силу приговоров за хотя бы новейшую историю РФ, а это люстрация, которую судейское сообщество категорически и органически не приемлет по понятным причинам.


      1. Alliesverse Автор
        18.05.2023 15:10

        Поэтому мы будем выдавать результат с ссылкой на источник, не ограничиваясь просто ответом????


    1. Tarakanator
      18.05.2023 15:10

      Не верю я в то, что нейросети можно вжарить российские законы.
      Вот 2 примера:
      1)Свисток 100% подходит под определение сигнального оружия ФЗ об оружии. Как вы объясните нейросети что свисток не оружие? Точнее проблема даже не в том, чтобы объяснить конкретно про свисток, а в том, чтобы провести грань где оружие, а где нет.
      2)
      ГИБДД выписывает штраф водителю мотоцикла, что он вёл ТС с превышением установленного ограничения.

      10.1. Водитель должен вести транспортное средство со скоростью, не превышающей установленного ограничения, учитывая при этом интенсивность движения, особенности и состояние транспортного средства и груза, дорожные и метеорологические условия, в частности видимость в направлении движения. Скорость должна обеспечивать водителю возможность постоянного контроля за движением транспортного средства для выполнения требований Правил.

      При возникновении опасности для движения, которую водитель в состоянии обнаружить, он должен принять возможные меры к снижению скорости вплоть до остановки транспортного средства.

      Нейросеть читает ПДД, и у неё едет крыша т.к. лицо, ведущее мотоцикл считается пешеходом, а 10.1 распространяется на водителей.

      "Пешеход" - лицо, находящееся вне транспортного средства на дороге либо на пешеходной или велопешеходной дорожке и не производящее на них работу. К пешеходам приравниваются лица, передвигающиеся в инвалидных колясках, ведущие средство индивидуальной мобильности, велосипед, мопед, мотоцикл, везущие санки, тележку, детскую или инвалидную коляску, а также использующие для передвижения роликовые коньки, самокаты и иные аналогичные средства.


      1. santjagocorkez
        18.05.2023 15:10

        находящееся вне транспортного средства... ведущие...

        Я чуть переместил акцент, который, я верю в это, некросетка тоже сможет уловить. Впрочем... Ведет ТС водитель. Пусть он и пешеход, но он ведет, потому водитель. Если пешеход достигнет первой пешеходной космической, превысив, например, ограниичение даже в 30км/ч, то, пожалуй, придётся позвать комитет Гиннеса для фиксации мирового рекорда.

        чтобы провести грань где оружие, а где нет

        А разве эта грань не в подзаконных актах прочерчивается?


      1. Kergan88
        18.05.2023 15:10

        >Точнее проблема даже не в том, чтобы объяснить конкретно про свисток, а в том, чтобы провести грань где оружие, а где нет

        Нейросети немного не так работают, у них нет понятий и определений. Если "свисток" в обучающей выборке используется статистически как оружие, то и в генерации сети статистически он будет использоваться как оружие (если аппроксимация сетью достаточно точна). А если не будет - то не будет. Какое определение у свистка и оружия сети не важно, это важно для человека, который понимает термины и обладает моделью мира.


        1. Alliesverse Автор
          18.05.2023 15:10

          Чем больше данных, тем качественней результат! Мы стараемся идти от простого к сложному на каждом этапе эволюции нашей идеи


    1. Alliesverse Автор
      18.05.2023 15:10

      Вы описали весьма интересную ситуацию! Будем не ждать, а готовиться: уже напрягаем извилины, как это обойти. Спасибо за проявленный интерес!


    1. Alliesverse Автор
      18.05.2023 15:10

      ????


  1. satex
    18.05.2023 15:10

    LawAi в нынешнем виде очень похож на ребенка, которому надо как следует разжевать вопрос, чтобы получить нужный ответ. Поэтому “детская версия” помощника юриста актуальна только для самих юристов, которые умеют формулировать вопрос на «юридическом языке» и правильно трактовать ответ на нем же.

    AlliesVerse а вы не пробовали использовать трансформеры с БЯЛ (ruchatgpt или whatever) чтобы нормализовать произвольный вопрос пользователя до "юридической формы" в ODQA? А дальше - всё по вашему пайплайну с BERT?


    1. Alliesverse Автор
      18.05.2023 15:10

      В данный момент пробуем разные комбинации. Огромное Вам спасибо за проявленный интерес к улучшению нашей идеи????????


  1. satex
    18.05.2023 15:10

    А почему статья в хабе функциональное программирование? Не нашел упоминаний про Lisp, Clojure, F#))


    1. Alliesverse Автор
      18.05.2023 15:10

      Функциональное программирование является одной из парадигм, поддерживаемых языком программирования Python ????


  1. Solicitor
    18.05.2023 15:10

    Хайп на Хабре. Бодро начали за виртуальных судью и присяжных, и тут же подменили исходную задачу созданием поискового движка - о которой и отчитались.
    "Кража - это? " Это не ИИ, а поисковик. Человек читает выданный результат, человек же и делает все остальное - интерпретирует, оценивает применимость и т.п.
    Сложно придумать что-то, что было бы более далеким от судьи/присяжного. Потому что ИИ не принимает решение. Присяжный не решает - сколько дать за кражу. Его вердикт: виновен/невиновен подсудимый в конкретном эпизоде кражи. А ИИ услышит "кража" у прокурора и отзовется наказанием. Услышит про хорошего семьянина у адвоката - предложит поощрить.


    1. santjagocorkez
      18.05.2023 15:10
      +1

      Присяжный не решает - сколько дать за кражу. Его вердикт: виновен/невиновен подсудимый в конкретном эпизоде кражи

      Присяжные отвечают, на самом деле, минимум на 3 вопроса:

      • доказано ли событие преступления

      • доказана ли причастность обвиняемого к преступлению

      • доказана ли вина обвиняемого в совершении преступления

      Само собой, каждый последующий вопрос полностью зависит от предыдущего. Но ответить они обязаны на все три (если не ошибаюсь), даже если самый первый вопрос имеет ответ "Нет".


    1. Alliesverse Автор
      18.05.2023 15:10

      "Кража - это?" используется в качестве быстрого и наглядного примера. Частные ситуации, описанные выше, требуют больше входных данных. Есть судебная практика, в которой уже принято решение в идентичной ситуации