SmartLiving.ru

Обсуждение проекта
 
Текущее время: Вт окт 17, 2017 2:30 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Библиотека phpMorphy
СообщениеДобавлено: Вт май 17, 2016 5:00 pm 
Не в сети
Site Admin

Зарегистрирован: Пн сен 05, 2011 6:48 pm
Сообщения: 4094
Откуда: Минск, Беларусь
Благодарил (а): 66 раз.
Поблагодарили: 1086 раз.
В маркет дополнений добавился пакет поддержки библиотеки phpMorphy -- библиотека морфологического анализа (включены словари русского и английского языков).

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

Изображение

Как оно работает

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

Покажу на примере. Имеем шаблон: "закрыть дверь". В обычном случае от пользователя требуется точное совпадение формулировки (использование регулярных выражений для подмены окончаний здесь не рассматриваем). В случае же включения галочки использования морфологии, пользователь может сказать "закрой двери" и система всё равно найдёт совпадение по шаблону "закрыть дверь" (слово "закрой" преобразуется в базовую форму "закрыть", а "двери" в "дверь").

В качестве бонуса, при использовании морфологии в коде обработки шаблона на ряду с массивом $matches становится доступен массив $bases, который представляет собой базовые формы слов, входящих в $matches.

P.S. Базовые формы слов можно получить на демо-странице проекта phpMorphy

_________________

Сергей Джейгало, разработчик MajorDoMo
Профиль Connect -- информация, сотрудничество, услуги


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Ср май 18, 2016 10:08 pm 
Не в сети

Зарегистрирован: Вт апр 29, 2014 9:16 pm
Сообщения: 105
Благодарил (а): 7 раз.
Поблагодарили: 12 раз.
Сергей, не получается установить из маркета. После нажатия кнопки "Добавить" что то исполняется, но также остается кнопка "Добавить" и модуль отсутствует.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Ср май 18, 2016 10:24 pm 
Не в сети
Site Admin

Зарегистрирован: Пн сен 05, 2011 6:48 pm
Сообщения: 4094
Откуда: Минск, Беларусь
Благодарил (а): 66 раз.
Поблагодарили: 1086 раз.
Smolalex писал(а):
Сергей, не получается установить из маркета. После нажатия кнопки "Добавить" что то исполняется, но также остается кнопка "Добавить" и модуль отсутствует.


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

_________________

Сергей Джейгало, разработчик MajorDoMo
Профиль Connect -- информация, сотрудничество, услуги


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Чт май 19, 2016 1:45 am 
Не в сети
Аватара пользователя

Зарегистрирован: Чт фев 26, 2015 1:38 am
Сообщения: 300
Откуда: Санкт-Петербург
Благодарил (а): 16 раз.
Поблагодарили: 59 раз.
sergejey писал(а):
В качестве бонуса, при использовании морфологии в коде обработки шаблона на ряду с массивом $matches становится доступен массив $bases, который представляет собой базовые формы слов, входящих в $matches.

А можно чтоб в качестве бонуса $bases был доступен в
По истечении времени выполнить: ?
Вложение:
Снимок.PNG
Снимок.PNG [ 14.95 КБ | Просмотров: 3492 ]

_________________
http://connect.smartliving.ru/profile/572


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Чт май 19, 2016 10:33 am 
Не в сети
Аватара пользователя

Зарегистрирован: Чт фев 26, 2015 1:38 am
Сообщения: 300
Откуда: Санкт-Петербург
Благодарил (а): 16 раз.
Поблагодарили: 59 раз.
у меня в голове:
Хорошо бы проводить разбор при выходе в «неизвестная команда»
Упала фраза в «неизвестная команда»
Нашли глагол, «базовую форму» закинули в словарь схожих действий
Нашли существительное , закинули в словарь синонимов
Сравнили с шаблонами, нашли ветку где встречается «действие» и «существительное»

_________________
http://connect.smartliving.ru/profile/572


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Чт май 19, 2016 11:39 am 
Не в сети

Зарегистрирован: Вт апр 29, 2014 9:16 pm
Сообщения: 105
Благодарил (а): 7 раз.
Поблагодарили: 12 раз.
sergejey писал(а):
Smolalex писал(а):
Сергей, не получается установить из маркета. После нажатия кнопки "Добавить" что то исполняется, но также остается кнопка "Добавить" и модуль отсутствует.


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


Да , спасибо! всё установилось


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Сб май 21, 2016 10:20 am 
Не в сети

Зарегистрирован: Пт дек 14, 2012 12:24 pm
Сообщения: 1157
Откуда: Россия, Нижняя Тура
Благодарил (а): 339 раз.
Поблагодарили: 72 раз.
После установки phpMorphy перестали отрабатываться подобные шаблоны:
[Показать] Скрытый текст: позвони
Код:
if (preg_match('/позвони/is',$original)) {
 
$name explode(" "$original); $name $name[1];
 
$name mb_strtolower($name'UTF-8');
 
$objects getObjectsByClass("Peoples");
 foreach(
$objects as $obj) {
  
$n2c  mb_strtolower(gg($obj['TITLE'].".name"),  'UTF-8');
  
$n2c1 mb_strtolower(gg($obj['TITLE'].".name1"), 'UTF-8');
  
$n2c2 mb_strtolower(gg($obj['TITLE'].".name2"), 'UTF-8');
  if (
$n2c==$name or $n2c1==$name or $n2c2==$name) {
   
$skypename gg($obj['TITLE'].".Skype");
   
say($skypename);
  }
 }

Удаляю модуль - работают.

_________________
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Вс май 22, 2016 2:58 pm 
Не в сети

Зарегистрирован: Чт май 12, 2016 9:13 am
Сообщения: 5
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Если включить Use morphology и в коде использовать $original - на выходе получается примерно так: Что именно Включи@@@@ВКЛЮЧИТЬть?

_________________
Алиса живёт на Raspberry Pi 3
http://www.eeak.biz


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Вс май 22, 2016 3:45 pm 
Не в сети

Зарегистрирован: Пт дек 14, 2012 12:24 pm
Сообщения: 1157
Откуда: Россия, Нижняя Тура
Благодарил (а): 339 раз.
Поблагодарили: 72 раз.
Ага. :( Как исправить?

_________________
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека phpMorphy
СообщениеДобавлено: Вт май 31, 2016 3:55 pm 
Не в сети

Зарегистрирован: Пт дек 14, 2012 12:24 pm
Сообщения: 1157
Откуда: Россия, Нижняя Тура
Благодарил (а): 339 раз.
Поблагодарили: 72 раз.
up

_________________
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB