This is an automated email from the ASF dual-hosted git repository.
sergeykamov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git
The following commit(s) were added to refs/heads/master by this push:
new 79ca3c2 NCSuggestSynonymManager fixed (examples usage)
79ca3c2 is described below
commit 79ca3c2091ae2eb55eca4a441621d6525fe7026e
Author: Sergey Kamov <[email protected]>
AuthorDate: Thu Oct 15 07:59:59 2020 +0300
NCSuggestSynonymManager fixed (examples usage)
---
nlpcraft/pom.xml | 8 ++++++++
.../org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala | 2 +-
.../apache/nlpcraft/server/sugsyn/NCSuggestSynonymManager.scala | 4 +++-
.../scala/org/apache/nlpcraft/server/rest/NCRestModelSpec.scala | 5 +++--
4 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/nlpcraft/pom.xml b/nlpcraft/pom.xml
index 5608abb..a4b8cda 100644
--- a/nlpcraft/pom.xml
+++ b/nlpcraft/pom.xml
@@ -371,8 +371,16 @@
<include>**/*.*</include>
</includes>
<excludes>
+ <!--
+ Some tests skipped on maven `verify` phase.
+ ===========================================
+ -->
+ <!-- Reason: weather service is not stable
enough and can be used for local tests only. -->
<exclude>**/NCConversationSpec.*</exclude>
+ <!-- Reason: output is to big. -->
<exclude>**/NCDateGeneratorSpec.*</exclude>
+ <!-- Reason: 'contextWordServer' should be
started. -->
+ <exclude>**/NCRestModelSpec.*</exclude>
</excludes>
</configuration>
</execution>
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
index 7742287..eaa2557 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
@@ -112,7 +112,7 @@ object NCCommandManager extends NCService {
val macros =
mdlData.model.getMacros.asInstanceOf[Serializable]
val syns = mdlData.model.getElements.asScala.map(p ⇒
p.getId → p.getSynonyms).toMap.asJava.asInstanceOf[Serializable]
- val samples = mdlData.samples.map(p ⇒ p._1 →
p._2.asJava).asJava.asInstanceOf[Serializable]
+ val samples = mdlData.samples.map(p ⇒ p._1 →
p._2.map(_.asJava).asJava).asJava.asInstanceOf[Serializable]
NCConnectionManager.send(
NCProbeMessage(
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/server/sugsyn/NCSuggestSynonymManager.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/server/sugsyn/NCSuggestSynonymManager.scala
index f17892a..e9c97dc 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/server/sugsyn/NCSuggestSynonymManager.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/server/sugsyn/NCSuggestSynonymManager.scala
@@ -186,7 +186,8 @@ object NCSuggestSynonymManager extends NCService {
val mdlSyns = m.get("synonyms").
asInstanceOf[util.Map[String,
util.List[String]]].asScala.map(p ⇒ p._1 → p._2.asScala)
val mdlExs = m.get("samples").
- asInstanceOf[util.Map[String,
util.List[String]]].asScala.map(p ⇒ p._1 → p._2.asScala)
+ asInstanceOf[util.Map[String,
util.List[util.List[String]]]].asScala.
+ map(p ⇒ p._1 →
p._2.asScala.flatMap(_.asScala.toSeq).distinct)
val minScore = minScoreOpt.getOrElse(DFLT_MIN_SCORE)
@@ -237,6 +238,7 @@ object NCSuggestSynonymManager extends NCService {
// Note that we don't use system tokenizer,
because 'ctxword' module' doesn't have this tokenizer.
// We split examples words by spaces. We also
treat separator as separate words.
+
val exs = mdlExs.
flatMap { case (_, samples) ⇒ samples }.
map(ex ⇒ SEPARATORS.foldLeft(ex)((s, ch) ⇒
s.replaceAll(s"\\$ch", s" $ch "))).
diff --git
a/nlpcraft/src/test/scala/org/apache/nlpcraft/server/rest/NCRestModelSpec.scala
b/nlpcraft/src/test/scala/org/apache/nlpcraft/server/rest/NCRestModelSpec.scala
index e34eb84..5c337ce 100644
---
a/nlpcraft/src/test/scala/org/apache/nlpcraft/server/rest/NCRestModelSpec.scala
+++
b/nlpcraft/src/test/scala/org/apache/nlpcraft/server/rest/NCRestModelSpec.scala
@@ -24,8 +24,9 @@ import org.junit.jupiter.api.{Disabled, Test}
import scala.collection.JavaConverters._
-// Enable it and run if context word server started.
-@Disabled
+/**
+ * Note that context word server should be started.
+ */
@NCTestEnvironment(model = classOf[AlarmModel], startClient = false)
class NCRestModelSpec extends NCRestSpec {
@Test