Как следует тестировать искусственный интеллект? (7) Тестирование системы обслуживания клиентов крупной модели.
Как следует тестировать искусственный интеллект? (7) Тестирование системы обслуживания клиентов крупной модели.

двигатель знаний

Мы должны были в какой-то степени сталкиваться с разговорными роботами в своей жизни. Например, мы все знаем, что многие роботы службы поддержки клиентов сначала отвечают на вопросы пользователей. Некоторые роботы обладают значительными запасами знаний, Например, если вы покупаете машину, Затем я хочу узнать в службе поддержки подробности страховки автомобиля. Вы спросите: Сколько стоит годовая страховка автомобиля? Но во многих случаях размер страховой премии зависит от разных моделей, годов выпуска и других деталей. В это время роботу необходимо собрать эту информацию в форме запросов (мы называем это информационными слотами), поэтому робот должен сначала определить намерение пользователя. Затем определите, какие ключевые слова (то есть, информация) отсутствуют для ответа на этот вопрос, а затем соберите эту информацию путем повторных вопросов и разъяснений. чтобы ответить на вопрос. Или пользователь задает роботу очень профессиональный вопрос: Например, вопрос «Как поменять тормозную жидкость определенной модели» требует от робота значительных запасов знаний. Во многих случаях этот ответ не может быть найден ни одной поисковой системой, а уточняется на основе строгого руководства по эксплуатации компании клиента. Итак, все знают, да? Разговорный робот корпоративного уровня — это не просто случайный робот, как GPT Просто добавьте такую ​​модель (GPT могу только столкнуться C Чтобы конечные пользователи могли использовать разговорный робот компании или робот службы поддержки клиентов, он должен обладать профессиональными знаниями компании). Поэтому нам нужен двигатель со значительным опытом в этой области. Можно только создавать знания.

Как построить двигатель знаний

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

  • Загрузка документов: вообще говоря, этот вид продукта должен предоставлять клиентам функцию загрузки документов. Эти документы содержат профессиональные знания этой компании. Заказчик загружает в систему знания, которые должен знать робот, в виде документов.
  • Парсинг документов: Это очень тяжелый шаг, Даже этот Возможности документов могут вырасти до размера компании, потому что Типы и форматы документов обслуживания клиентов разнообразны и появляются бесконечно. Этот индивидуальный документ может быть word,excel,pdf。 нравиться pdf Разобрать будет сложнее, потому что pdf В нем слишком много форматов данных, иметькартина, иметьхарактер, Иметь таблицы в различных форматах, иметь смешанные изображения и тексты и т. д. Автоматически анализировать содержимое этих документов очень сложно. Некоторые студенты могут спросить, почему бы не указать индивидуальный формат и не разрешить пользователям загружать документы в этом формате. Такая индивидуальная форма практически невозможна, эти документы — это знания, накопленные заказчиками за многие годы развития. Его количество очень огромно, Вы просите клиента переписать такой огромный документ под ваш формат, Это неработоспособно. Итак, одининдивидуальныйдвигатель Как строятся знания, Способность парсинга документов играет решающую роль,И это также является целью тестирования.
  • Разделение документа. Также называется разделением документа. Документ необходимо разделить на разные параграфы в соответствии с семантикой с помощью правил или моделей. потому что в документе много контента, Конечно, дело не только в чем-то одном. Например, когда пользователь спрашивает: «Я хочу знать, как заменить жидкость для стекла в этой машине», Отвечать на индивидуальный вопрос можно в виде документа, аналогичного «Руководству по эксплуатации автомобилей различных моделей». Тогда, когда пользователь задает вопрос об индивидуальном вопросе, Вы не можете отправить этот документ объемом почти 10 000 слов всем пользователям одновременно, верно? Мы ожидаем отправлять пользователю только информацию о смене стакана воды. Поэтому отдельный документ необходимо разделить семантически.
  • Функции/векторы слов. Векторы слов часто называют слоями внедрения (внедрениями). NLP Очень важная особенность инженерного метода в данной области (обработка естественного языка). Он может преобразовать индивидуальное слово в индивидуальное. N размерные собственные векторы (например, 512 измерение). Я использую следующий пример, чтобы объяснить, что такое векторы слов: Предположим, у нас есть набор информации: пол, класс, школа. Чтобы иметь дело с такими дискретными функциями, мы обычно используем one-hot (горячее кодирование). Например, у нас есть группа студентов, они могут пройти 3 индивидуальные характеристики для описания, это: Пол: «Мужской», «Женский». Оценка: «Первый сорт», «Второй сорт», «Третий сорт». Школы: «Средняя школа №1», «Вторая средняя школа», «Третья средняя школа», «Четвертая средняя школа». Мы используем принятие N регистр состояния бита N индивидуальный статус закодирован. В приведенном выше примере это: [

Поэтому, когда мы описываем ученика (мальчика первого класса, средней школы №1), для его выражения мы можем использовать форму 1 0 1 0 0 0 1 0 0. Это также один из методов реализации комбинации функций. Или мы также можем использовать метод, подобный растровому изображению, чтобы создать горячий вектор для представления дискретных функций. Мы можем выразить это в форме, подобной следующей:

Предположим, что в столбце профессий имеется в общей сложностииметь 100 ценить, Предположим, учитель считает 6 В этом положении число 6 расположение ide Значение 1, все остальные значения 0, мы используем этот вектор для представления характеристики учителя. По аналогии, если номер студенческого представителя 10, затем

10 Стоимость в этом месте составляет 1. Значения в остальных позициях 0, используя векторы слов для представления студентов. Таким образом, в конце концов мы 100 индивидуальный 100 размерные векторы для представления этих функций.

Вышеупомянутые два метода являются очень распространенными методами, используемыми для выражения особенностей текста.,Но их вопрос в том, что слова независимы друг от друга.,Нет друг другаиметьассоциация。 Например, в наших данных обучения предложение иметь-индивидуальный this is apple сок, мы ожидаем появления, когда this is orange __ , модель может сделать для нас вывод, что пустое пространство этого человека также должно быть заполнено словами. juice。 То есть мы надеемся, что модель сможет найти связь между словами посредством предыдущего обучения первому индивидуальному предложению, и модель сможет узнать apple и orange слова со схожим значением, поэтому можно сделать вывод, что orange Вы также можете заполнить его позже juice。 И это именно то, что делают векторы слов.

Как показано выше,Векторы слов вращаются вокруг этих центральных слов (гендер,вещь,Дворянская степень), вычисляют степень корреляции между каждым отдельным словом и этими центральными словами. Таким образом, мы можем вычислить связь между словами по степени ассоциации каждого слова по отношению к этим центральным словам. Например, яблоки и апельсины имеют относительно высокие и близкие значения в центральных словах «еда».,Таким образом, модель может знать, что яблоки и апельсины в определенных сценариях похожи на одни и те же король и королева. Таким образом, модель также знает, что в некоторых сценариях король и королева похожи. Итак, вернемся к вопросу о заполнении пропусков, о котором мы упоминали выше: Когда мы тренировались раньше, мы apple Забрал позже juice Это индивидуальное слово, которое мы знаем на основе слова-вектора. apple и orange похожи, поэтому apple Забрал позже сок, затем orange Позже велика вероятность, что за ним последует juice из. Объяснив таким образом роль векторов слов, каждый поймет. Фактически, принцип этой похожей на блокировку модели (или генеративной модели, которая представляет собой модель, генерирующую «Отвечать» для пользователей, например, разговорного робота), заключается в обходе всех слов в словаре на основе слов, которые пользователь уже использовал. сгенерированное слово, Вычислите вероятность того, что каждое индивидуальное слово появится в следующей индивидуальной позиции, а затем вставьте индивидуальное слово с наибольшей вероятностью в следующую индивидуальную позицию. Итак, все видят, Однажды я сказал, что почти все модельные сценарии не могут избежать бинарной классификации, мультиклассификации и регрессии. Наша генеративная модель на самом деле представляет собой очень большую модель с несколькими классификациями (возьмите вероятность каждой классификации, а затем выберите ту, которая имеет наибольшую вероятность). дивидуальный классифицируется как Отвечать, и здесь каждая индивидуальная классификация — это каждое индивидуальное слово в словаре).

  • Хранение: При парсинге документов, после шардинга и уточнения характеристик, Затем функции могут быть сохранены в базе данных. Таким образом, после того, как пользователь позже задаст вопрос, Соответствующий ответ будет получен из базы данных по вопросу.

Как получить ответы

Во-первых, нам нужно прояснить общую базовую логику разговорного робота.,Когда пользователь предлагает вопрос,Сама система сначалавопрос Послеиндивидуальный Модель мультиклассификации, используемая для идентификации пользователейнамерение,потому чтопо мнению разных пользователей, нам нужно дать разным подсистемам ответить, Например, если это общий тип чата, его можно отправить непосредственно в большую модель для ответа. И если это тип вопроса и ответа на знания, Вам нужно отправить его двигателю знания для поиска связанных Отвечать. Или это общий тип поиска, Например, если пользователь спрашивает, какова текущая цена акций Apple, очевидно, что этот вопрос нельзя отправить напрямую в двигатель. знания большая модель, но вызовите поисковик API наводить справки, Конечно, результаты запроса часто проходят через вторичную упаковку больших моделей, о чем мы поговорим позже. Здесь мы просто говорим об базовой логике разговорных роботов.

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

  • Модель семантического поиска. Это модель, специально используемая для поиска документов. Мы также часто используем из в поисковых системах. Его суть заключается в обработке документа с вопросами пользователя в векторы слов (встраивание). Также называется слоем внедрения), преобразуйте их в векторы признаков, а затем вычисляйте сходство между двумя отдельными векторами признаков. Например, мы часто проводим некоторую проверку, вычисляя сходство текста во время тестирования. Сходство текста заключается в вычислении косинусного сходства двух отдельных векторов признаков для решения из. Просто эта индивидуальная модель семантического поиска/сопоставления будет более сложной. Этот индивидуальный метод в настоящее время более распространен.
  • Модель вопросов и ответов: есть модель, которая специально генерирует вопросы и ответы из отдельного документа.,Учитывая индивидуальный документ,Извлеките его содержимое и сгенерируйте вопрос Отвечать. Таким образом, вы также можете использовать эту индивидуальную модель, чтобы заранее извлечь вопрос Отвечать, а затем сохранить ее в библиотеке.,Таким образом, когда пользователи задают вопросы, можно сопоставить вопросивопрос для достижения цели поиска.,Мы часто используем эту модель для генерации тестовых данных.
  • Пользователи напрямую загружают данные в форме вопросов и ответов. Пользователи могут напрямую загружать данные в форме вопросов и ответов, что устраняет необходимость использования модели вопросов и ответов. Но людей, использующих этот метод, еще меньше.

Подводя итог, можно сказать, что существует множество сценариев, в которых используется модель семантического поиска/сопоставления.

Как протестировать эти модели

Видно, что разговорный робот состоит из N Система, объединяющая несколько моделей. двигатель Знания также представляют собой поиск контента, выполняемый путем объединения нескольких индивидуальных моделей. Итак, давайте посмотрим, как протестировать эти модели.

Парсинг документов

Парсинг документов. Важно протестировать различные типы документов, которые могут использовать ваши клиенты (execl, word, pdf). и т. д.) и различные форматы в нем (текст, изображения, Смешанный текст и картинки, таблицы разных форматов, гиперссылки и т.д.). Поэтому важно подготовить разнообразные тестовые данные, Затем посчитайте соответствующие показатели. Например: Сходство текстовой последовательности: как правило, статистика включает частоту ошибок вставки = ошибка типа вставки/длина выходной последовательности алгоритма, частота ошибок замены = ошибка типа замены/длина выходной последовательности алгоритма, частота ошибок удаления = ошибка типа удаления/длина выходной последовательности алгоритма. , точная скорость = количество правильных символов/общая длина выходной последовательности алгоритма. Это то, что я писал раньше ASR Индивидуальные показатели в системе очень похожи на из.

Конечно, самое главное, чтобы тестовые данные охватывали разные сценарии:

Например, охватывая сценарии в разных отраслях:

  • государственные дела
  • машина
  • финансы
  • обучать
  • Культурный туризм ритейл
  • Прочее (транспорт и т.д.)

Например, охватывая документы разных форматов:

документ в формате docx:

  • простой текст
  • текст + изображение
  • текст + изображение + Стол (Стандартный key-value форма)
  • характер + Таблица (таблица заголовков с одинарной косой чертой)
  • характер + Таблица (таблица заголовков с несколькими косыми чертами)
  • характер + Таблица (таблица заголовков многострочных правил)
  • характер + Таблица (многострочная нерегулярная таблица заголовков)
  • Водяной знак/верхний/нижний колонтитул/номер страницы

Документ в формате pdf:

  • простой текст
  • текст + изображение
  • текст + изображение + Стол (Стандартный key-value форма)

Документация: вопросы и ответы

Цель исследования: на основе данного текста или диалога выделить один или несколько индивидуальных вопросов. + Ответ правильный. Фокус проверки: модель извлекает ключевую информацию из текста и преобразует ее в вопросы. + Способность «Отвечать» требует от модели определенной способности понимать текст, а модель должна правильно ответить на загаданный ею вопрос. Индекс оценки: степень точности. Измеряет долю правильных пар вопрос-ответ среди сгенерированных пар вопрос-ответ. Чем выше точность, тем точнее пары вопрос-ответ, генерируемые моделью, отражают ключевую информацию в тексте.

Например: Джордж Оруэлл (1903-1950).,Родившийся Эрик Артур Блэр,британский писатель、Журналист и критик. Его произведения основаны на критике тоталитаризма и социальной несправедливости. на славится. Два самых известных романа Оруэлла — «Скотный двор» и «1984», оба из которых считаются 20 Одно из важнейших литературных произведений века. в его жизни,Оруэлл также написал большое количество эссе, репортажей и критических статей.,К ним относятся «Низшие классы Парижа и Лондона» и «Посвящение Каталонии».

Тогда согласно предположению модели нам нужно извлечь 5 индивидуальный Вопросы и ответы:

  • Вопрос 1: Каково было настоящее имя Джорджа Оруэлла? Ответ 1: Эрик Артур Блэр.
  • вопрос 2: Какие два романа Оруэлла считаются 20 Одно из самых важных литературных произведений века? Отвечать 2:《животноводческая ферма》и《1984 г.》。
  • вопрос 3: Работы Оруэлла в основном посвящены на каких аспектах? Отвечать 3: сосредоточиться на тоталитаризме и критике социальной несправедливости. на。
  • вопрос 4. К каким произведениям Оруэлла относятся «Низшие классы Парижа и Лондона» и «Посвящение Каталонии»? Отвечать 4: Очерки, репортажи и критические статьи.
  • вопрос 5: В какой период жил Джордж Оруэлл? Отвечать 5:1903-1950

Поэтому тестировщикам необходимо оценить эффективность этой индивидуальной модели. Фактически, это оценка правильности вопроса Отвечать, который он генерирует. Самое трудоемкое здесь то, что генерация этого вопроса и ответа может каждый раз быть разной. И корректны ли эти сгенерированные вопросы и ответы – это тоже относительно субъективное суждение, которое сложно проверить в автоматизированной форме. Так что на самом деле мне очень не нравится проверять эффект этой модели. Потому что это чисто физическая работа. Что касается того, как бороться с субъективными проблемами. Вы можете сослаться на средний балл нескольких людей, которых я публиковал ранее, и 3 система персонального арбитража.

Нарезка документов/семантическая нарезка

Тоже очень субъективная сцена,Модель необходима для определения различной семантики в относительно большом документе., Затем разрежьте текст с одинаковой семантикой на один индивидуальный сегмент и embedding После обработки он сохраняется в базе данных. Таким образом Поиск/сопоставление В игру вступит модель документов. Здесь от тестировщиков требуется убедиться, что каждый вырезанный моделью индивидуальный фрагмент документа соответствует одной и той же индивидуальной семантике, а фрагменты документа под этой индивидуальной семантикой являются полноценными.

Поиск/сопоставление документов

Эта индивидуальная модель предназначена для извлечения фрагментов документа через вопрос пользователя, Первоначально это тоже была классическая сцена поисковой системы. Но поисковые системы могут возвращать несколько результатов и сортировать их по рейтингу. А диалоговые боты часто не могут вернуть несколько отдельных фрагментов документа. Вместо этого нам нужно выбрать тот Отвечать, который индивидуальная модель считает оптимальным. Поэтому некоторые индикаторы, изначально использовавшиеся поисковыми системами, такие как MAP и NDCG Большую часть времени его можно не использовать. Конечно, если мы тестируем возможности самой индивидуальной модели, это не имеет ничего общего с реальными бизнес-сценариями. Это все еще можно использовать MAP и NDCG из. Но если мы тестируем сквозной эффект, то точность может быть наиболее часто используемым показателем.

В дополнение к данным, охватывающим различные отраслевые сценарии, необходимо предоставить данные испытаний. Также при тестировании необходимо обратить внимание на статистику индикатора для длинного текста и короткого текста вопроса. Потому что в области сопоставления документов Мы делаем это, разбивая документ вопросов на embedding Наконец, определенный алгоритм сходства используется для расчета степени совпадения фрагментов интересующего документа, а затем ближайшие документы возвращаются пользователю после сортировки по степени совпадения. Итак, в этом поле существует два классических сценария: сопоставление короткого текста и сопоставление длинного текста.То есть, каков эффект модели, когда вопрос, заданный пользователем, очень короткий? А когда пользователь использует длинный абзац текста для описания своих требований,Как выглядит эффект сопоставления, возвращаемый моделью?

Модель распознавания намерений

Как мы сказали выше,Системе необходимо сначала использовать модель мультиклассификации, чтобы определить, какой тип индивидуального вопроса задал пользователь.,Какую индивидуальную подсистему следует отправить для ответа. Только если иметь принадлежит разделу викторины индивидуальноенамерение, оно будет отправлено двигателю. знаний Делать Поиск/сопоставление документов。 И как оценивать модели мультиклассификации, Как рассчитать матрицу путаницы,Также рекомендуется прочитать мой первый пост в серии «Индивидуальные».,Показатели оценки общепринятой научно-популярной модели.

Подвести итог

Вы можете видеть, что текущий диалоговый робот N Сочетание индивидуальных ИИ моделей, В сочетании с некоторыми инженерными методами для завершения составной сцены. На этот раз я сначала представлю двигатель в этой индивидуальной системе. Какую роль играют знания и с какими сценариями тестирования обычно сталкиваются тестировщики. На самом деле вы можете обнаружить, что большая часть работы по тестированию здесь утомительна и выполняется вручную, а большая часть — чисто физическая работа. Многие люди, которые не понимают искусственный интеллект, подсознательно думают, что тестирование искусственного интеллекта — это очень загадочная, очень техническая и очень высокоуровневая работа. Но на самом деле зачастую это не то, что все думают.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose