Доктран и ЛЛМ Мощный дуэт для анализа жалоб потребителей
Доктран и ЛЛМ Мощный дуэт для анализа жалоб потребителей
Введение
На сегодняшнем конкурентном рынке компании стремятся эффективно понимать и разрешать жалобы потребителей. Жалобы потребителей могут осветить широкий спектр проблем, от дефектов товаров и плохого обслуживания клиентов до ошибок в выставлении счетов и проблем безопасности. Они играют важную роль в обратной связи (относительно продуктов, услуг или опыта) между компаниями и их клиентами. Анализ и понимание этих жалоб могут дать ценные понимания о улучшении продуктов или услуг, удовлетворенности клиентов и общем росте бизнеса. В этой статье мы рассмотрим, как использовать библиотеку Doctran Python для анализа жалоб потребителей, извлечения понимания и принятия решений на основе данных.
Цели обучения
В этой статье вы:
- Узнаете о библиотеке Doctran Python и ее ключевых возможностях
- Узнаете о роли Doctran и LLMs в трансформации и анализе документов
- Изучите шесть типов трансформации документов, поддерживаемых Doctran, включая извлечение, удаление, допрос, уточнение, суммирование и перевод
- Получите общее понимание преобразования сырых текстовых данных из жалоб потребителей в реальные понимания
- Поймете структуру данных документа Doctran, класс ExtractProperty для определения схемы извлечения свойств
Эта статья была опубликована в рамках блогона Data Science.
- Google Cloud обязуется защищать клиентов от обязанности возмещать ущерб за использование услуги генеративного искусственного интеллекта
- Зеленые ИИ 7 стратегий для создания более эко-устойчивых приложений
- Мощь передовых кодировщиков и декодировщиков в генеративном искусственном интеллекте
Doctran
Doctran – это современная библиотека на языке Python, предназначенная для трансформации и анализа документов. Она предоставляет набор функций для предварительной обработки текстовых данных, извлечения ключевой информации, категоризации/классификации, допроведения документа до вопросно-ответного формата, суммирования информации и перевода текста на другие языки. Doctran использует LLM (Large Language Models), такие как модели на основе OpenAI GPT и открытые библиотеки NLP, для анализа текстовых данных.
Она поддерживает следующие шесть типов трансформации документов:
- Извлечение: Извлечение полезных функций/свойств из документа.
- Удаление: Удаление лично идентифицируемой информации (ЛИИ), такой как имя, электронный адрес, номер телефона и т.д. из документа перед отправкой данных в OpenAI. При этом внутренне используется библиотека spaCy для удаления конфиденциальной информации.
- Допрос: Преобразование документа в формат вопросов и ответов.
- Уточнение: Устранение содержимого из документа, не относящегося к заранее определенному набору тем.
- Суммирование: Представление документа в виде краткого, полного и содержательного обзора.
- Перевод: Перевод документа на другие языки.
Интеграция также доступна в рамках платформы LangChain в модуле document_transformers. LangChain – это передовая платформа для создания приложений, основанных на LLM.
LangChain предоставляет гибкость для исследования и использования широкого спектра открытых и закрытых моделей LLM. Она позволяет без проблем подключаться к различным внешним источникам данных, таким как PDF-файлы, текстовые файлы, электронные таблицы Excel, PPT-файлы и т.д. Она также позволяет экспериментировать с различными подсказками, заниматься инжинирингом подсказок, использовать встроенные цепи и агенты и многое другое.
Внутри модуля document_transformers Langchain есть три реализации: DoctranPropertyExtractor, DoctranQATransformer и DoctranTextTranslator. Они используются для трансформаций Extract, Interrogate и Translate документов соответственно.
Установка
Установка Doctran может быть произведена с помощью команды pip.
pip install doctran
После ознакомления с библиотекой Doctran давайте рассмотрим различные типы трансформации документов, доступные в Doctran, используя заявление потребителя, приведенное ниже и заключенное в тройные обратные кавычки (“`).
“`
26 ноября 2021 г.
Менеджер
Отдел обслуживания клиентов
Магазин Taurus
Нью-Дели – 110023
Тема: Жалоба на неисправную стиральную машину бренда ‘VIP’
Уважаемый господин,
Я купил автоматическую стиральную машину модели G 24 15 июля 2022 года с инвойсом под номером 1598.
На прошлой неделе машина неожиданно перестала работать и с тех пор не работает, несмотря на все наши усилия. Машина перестает работать после завершения процесса ополаскивания, что вызывает много проблем. Более того, машина с последнего времени начала издавать громкие шумы, что вызывает неудобства для нас.
Пожалуйста, отправьте своего техника для ремонта и, если необходимо, замените ее в течение следующей недели.
С надеждой на скорый ответ,
Искренне ваш,
“`
Загрузка жалобы в качестве документа Doctran
Для выполнения преобразования документа с использованием doctran сначала нам нужно преобразовать неструктурированный текст в документ doctran. Документ doctran – это основной тип данных, оптимизированный для векторного поиска. Он представляет собой фрагмент неструктурированных данных. Он состоит из необработанного содержимого и связанных метаданных.
Создайте объект doctran, указав OPENAI_API_KEY в параметре open_ai_key. Затем разберите необработанное содержимое как документ doctran, вызвав метод parse() на объекте doctran.
sample_complain = """26 ноября 2021 г.МенеджерОтдел обслуживания клиентовМагазин TaurusНью-Дели - 110023Тема: Жалоба на неисправную стиральную машину бренда 'VIP'Уважаемый господин,Я купил автоматическую стиральную машину модели G 24 15 июля 2022 года с инвойсом под номером 1598.На прошлой неделе машина неожиданно перестала работать и с тех пор не работает, несмотря на все наши усилия. Машина перестает работать после завершения процесса ополаскивания, что вызывает много проблем. Более того, машина с последнего времени начала издавать громкие шумы, что вызывает неудобства для нас.Пожалуйста, отправьте своего техника для ремонта и, если необходимо, замените ее в течение следующей недели.С надеждой на скорый ответ,Искренне ваш."""doctran = Doctran(openai_api_key=OPENAI_API_KEY)document = doctran.parse(content=sample_complain)print(document.raw_content)
Результат:
DocTransformers
1. Извлечение
Одна из основных функций doctran – извлечение ключевых свойств из документа. Внутренне она использует функцию OpenAI для извлечения свойств (точек данных) из документа. Она использует модель GPT-4 OpenAI с лимитом токенов 8000.
GPT-4, сокращение от Generative Pre-trained Transformer 4, это многомодальная большая языковая модель, разработанная OpenAI. По сравнению с предшественниками, GPT-4 обладает улучшенной способностью справляться с сложными задачами. Кроме того, она может использовать визуальные данные (такие как изображения, графики, мемы и т. д.) вместе с текстом. Модель достигла производительности на уровне человека по различным профессиональным и академическим показателям, включая Uniform Bar Exam.
Нам нужно определить схему, создав экземпляр класса ExtractProperty для каждого свойства, которое нам нужно извлечь. Схема включает несколько ключевых элементов: имя свойства, описание, тип данных, список выбираемых значений и флаг обязательности, являющийся булевым индикатором.
Здесь мы указали четыре свойства – Категория, Отзыв, Агрессивность и Язык.
from doctran import ExtractPropertyproperties = [ ExtractProperty( name="Category", description="Какой тип жалобы это", type="string", enum=["Товар или услуга", "Время ожидания", "Доставка", "Проблемы с общением", "Персонал"], required=True ), ExtractProperty( name="Sentiment", description="Оценить полярность/настроение", type="string", enum=["Положительное", "Отрицательное", "Нейтральное"], required=True ), ExtractProperty( name="Aggressiveness", description="""описывает насколько настойчива жалоба, чем выше число, тем более настойчива""", type="number", enum=[1, 2, 3, 4, 5], required=True ), ExtractProperty( name="Language", type="string", description="исходный язык", enum=["Английский", "Хинди", "Испанский", "Итальянский", "Немецкий"], required=True ) ]
Для получения свойств мы можем вызвать функцию extract() на документе. Эта функция принимает свойства в качестве параметра.
extracted_doc = await document.extract(properties=properties).execute()
Операция извлечения возвращает новый документ с предоставленными свойствами в ключе extracted_properties.
print(extracted_doc.extracted_properties)
Вывод:
2. Допрос
Doctran позволяет нам преобразовывать содержимое документа в формат Вопрос-Ответ. Запросы пользователей обычно формулируются в виде вопросов. Поэтому, чтобы улучшить результаты поиска при использовании векторной базы данных, полезно преобразовывать информацию в вопросы. Создание индексов на основе этих вопросов позволяет более точно восстанавливать контекст в сравнении с индексированием исходного текста.
Для опроса документа используйте встроенную функцию interrogate(). Она возвращает новый документ, а сгенерированный набор Вопрос-Ответ доступен в атрибуте extracted_properties.
interrogated_doc = await document.interrogate().execute()print(interrogated_doc.extracted_properties['questions_and_answers'])
Вывод:
3. Суммирование
Используя doctran, мы также можем сгенерировать краткое и содержательное резюме исходного текста. Вызовите функцию summarize() для суммирования документа. Кроме того, укажите параметр token_limit для настройки размера резюме.
summarized_doc = await document.summarize(token_limit=30).execute()print(summarized_doc.transformed_content)
Вывод:
4. Перевод
Перевод документов на другие языки может быть полезен, особенно когда от пользователей ожидается поиск в базе знаний на разных языках, или когда не существует передовых моделей встраивания для определенного языка.
Языковой перевод для нашего случая использования жалоб потребителей может быть полезен для глобальных компаний с многоязычной клиентской базой. С помощью встроенной функции translate() мы можем перевести информацию на другие языки, такие как хинди, испанский, итальянский, немецкий и др.
translated_doc = await document.translate(language="hindi").execute()print(translated_doc.transformed_content)
Вывод:
Заключение
В эпоху основанных на данных принятия решений, анализ жалоб потребителей является важным процессом, который может привести к улучшению продуктов и услуг, и в конечном итоге привести к высокой удовлетворенности клиентов. Используя LLMs и продвинутые инструменты NLP, мы можем преобразовать сырые текстовые данные в действенные идеи, способствующие росту и улучшению бизнеса. В этой статье мы рассмотрели doctran, различные типы преобразования документов, поддерживаемые этой библиотекой с помощью жалоб потребителей.
Основные моменты
- Жалобы потребителей – это не только жалобы, но и ценные источники обратной связи, которые могут предоставить важные идеи для бизнеса.
- Библиотека Python doctran, вместе с моделями больших языковых моделей (LLMs), таких как GPT-4, предлагает мощный набор инструментов для преобразования и анализа документов. Она поддерживает различные преобразования, такие как извлечение, редактирование, допрос, суммирование и перевод.
- Возможности извлечения Doctran с использованием модели GPT-4 от OpenAI могут помочь бизнесу извлекать ключевые свойства из документов.
- Преобразование содержимого документа в формат вопросов и ответов с помощью функции допроса Doctran улучшает извлечение контекста. Этот подход ценен для создания эффективных поисковых индексов и облегчения получения лучших результатов поиска.
- Компании с глобальной клиентской базой могут воспользоваться возможностями перевода языка Doctran, чтобы сообщения были доступны на разных языках. Кроме того, он обеспечивает возможность генерации кратких и содержательных резюме текстового содержимого.
Часто задаваемые вопросы
Все изображения, показанные в этой статье, не принадлежат Analytics Vidhya и используются на усмотрение автора.