К сожалению, LUIS связывает все возможные сущности, которые он может, и они не могут быть выборочно удалены - их можно только полностью удалить из приложения.
Однако вы можете справиться с этим в своем коде несколькими способами:
Игнорировать сущности
Когда результат возвращается из LUIS, вы можете выборочно посмотреть на объекты. Псевдокод может быть что-то вроде
// If turnContext.activity.Text doesn't contain "", do something with entities
Выборочно отправить текст в LUIS для распознавания
Если вы не хотите, чтобы LUIS вообще обрабатывал имена файлов, вы также можете игнорировать их в своем коде. Код будет что-то вроде:
var recognizerResult = {};
if (!turnContext.activity.Text.contains("/"))
{
recognizerResult = await _services.LuisServices[LuisKey].RecognizeAsync(turnContext, cancellationToken);
}
Игнорировать это в пользовательском интерфейсе
Переверните переключатель в верхнем правом углу от представления сущностей к представлению токенов
Добавить новую сущность RegEx с именем filepath, которая затмевает другие сущности
Регулярное выражение сущности: ^(.*/)([^/]*)$
До:
После (примечание: я только RegEx'd для "/", а не "\"):