Исследовательский прототип для изучения и организации множества вариантов письма с помощью моделей большого языка. Подробнее о проекте читайте в статье CHI2024.
Чтобы похвалить эту систему, процитируйте нашу статью CHI'24 «ABScribe: Rapid Exploration & Organization of Multiple Letter Variations in Human-AI Co-Writing Tasks using Large Language Models»: Мохи Реза, Натан Лаундри, Илья Мусабиров, Питер Душнику, Чжи Юань «Майкл» Ю, Кашиш Миттал, Тови Гроссман, Майкл Лют, Анастасия Кузьминых и Джозеф Джей Уильямс. 2024 год
@inproceedings { reza2024abscribe ,
title = { ABScribe: Rapid Exploration & Organization of Multiple Writing Variations in Human-AI Co-Writing Tasks using Large Language Models } ,
author = { Mohi Reza, Nathan Laundry, Ilya Musabirov, Peter Dushniku, Zhi Yuan "Michael" Yu, Kashish Mittal, Tovi Grossman, Michael Liut, Anastasia Kuzminykh, Joseph Jay Williams } ,
booktitle = { Proceedings of the 2024 CHI Conference on Human Factors in Computing Systems } ,
pages = { 1-18 } ,
organization = { Association for Computing Machinery } ,
doi = { https://doi.org/10.1145/3613904.3641899 } ,
year = { 2024 }
}
Изучение альтернативных идей путем переписывания текста является неотъемлемой частью процесса написания. Современные модели больших языков (LLM) могут упростить создание вариантов написания. Однако текущие интерфейсы создают проблемы для одновременного рассмотрения нескольких вариантов: создание новых версий без перезаписи текста может быть затруднено, а их последовательная вставка может загромождать документы, увеличивая рабочую нагрузку и нарушая поток авторов. Чтобы решить эту проблему, мы представляем ABScribe, интерфейс, который поддерживает быстрое, но визуально структурированное исследование вариантов письма в задачах совместного письма человека и ИИ. С помощью ABScribe пользователи могут быстро создавать несколько вариантов, используя подсказки LLM, которые автоматически преобразуются в кнопки многократного использования. Варианты хранятся рядом в текстовых сегментах для быстрого сравнения на месте с помощью взаимодействия с наведением мыши на контекстной панели инструментов. Наше исследование с участием 12 авторов показывает, что ABScribe значительно снижает рабочую нагрузку (d = 1,20, p < 0,001), улучшает восприятие пользователем процесса редактирования (d = 2,41, p < 0,001) по сравнению с популярным базовым рабочим процессом и дает представление о как писатели исследуют варианты с помощью LLM.
Чтобы начать работу с ABScribe, посетите ABScribe.ca или выполните настройку локально, следуя инструкциям в файле CONTRIBUTING.md.
Проект организован в следующие каталоги:
/abscribe_backend
Бэкэнд-приложение предоставляет набор инструментов для управления документами, частями и версиями. Приложение позволяет пользователям создавать документы, содержащие форматированный текст, и манипулировать ими. Бэкэнд построен с использованием Python и MongoDB и использует ODM MongoEngine для операций с базой данных.
/abscribe_backend/models
Каталог моделей содержит следующие модели данных, используемые в приложении:
Document
: метаданные документа и список фрагментов, содержащих контент.Chunk
: фактическое содержимое документа.Version
: различные версии содержимого внутри фрагмента.Feedback
: комментарии и отзывы по каждой части документа.Recipe
: набор инструкций по изменению содержимого документа. /abscribe_backend/services
Каталог сервисов содержит следующие сервисы, используемые в приложении:
document_service.py
: обеспечивает операции CRUD для документов.chunk_service.py
: предоставляет операции CRUD для фрагментов документа.version_service.py
: предоставляет операции CRUD для версий внутри фрагмента.recipe_service.py
: предоставляет операции CRUD для рецептов.feedback_item_*_service.py
: предоставляет операции CRUD для обратной связи с различными компонентами документа. /abscribe_backend/tests
Каталог тестов содержит набор тестов для серверного приложения.
/abscribe_backend/app.py
Содержит все маршруты и конечные точки API, описанные в службах приложения.
/abscribe_frontend
Интерфейсное приложение предоставляет удобный интерфейс редактирования на базе больших языковых моделей.
/abscribe_frontend/src/services
Функции для взаимодействия с API бэкенда.
/abscribe_frontend/src/components
Многоразовые компоненты для внешнего приложения. Вот компоненты, которые в настоящее время используются в приложении:
PopupToolbar.jsx
: компонент панели инструментов, облегчающий взаимодействие с документом. Основные утилиты текстового редактора, такие как форматирование, импорт и т. д.
Editor.jsx
: компонент редактора расширенного текста для создания и редактирования документов.
VariationSidebar.jsx
: компонент боковой панели для хранения и управления вариантами написания.
AIModifiers.jsx
: компонент боковой панели для управления и применения корректировок/рецептов LLM.
DocumentContainer.jsx
: основной интерфейс взаимодействия с пользователем. Объединяет компоненты Editor и ABToolbar.
Пожалуйста, ознакомьтесь с файлом вклада, чтобы узнать, как внести свой вклад в этот проект.
Этот проект лицензируется по лицензии MIT. Подробности смотрите в файле ЛИЦЕНЗИИ.