Hi Sergey,

1. Great!
2. I can give you an example from my code, in the loader I get dump from file, 
which is just a map (English word -> object entity).
(https://github.com/apache/incubator-nlpcraft/blob/91fb3578bf7d5161f4e827b7961ea0bb742ec80f/nlpcraft-examples/minecraft-model/src/main/kotlin/org/apache/nlpcraft/example/ValueLoaders.kt#L15)
Naturally, I want to use this object entity in my code. Right now, to do that, 
I need to create a singleton for that and access it from static context in 
model itself. 
(https://github.com/apache/incubator-nlpcraft/blob/91fb3578bf7d5161f4e827b7961ea0bb742ec80f/nlpcraft-examples/minecraft-model/src/main/kotlin/org/apache/nlpcraft/example/MinecraftModel.kt#L69)
However, in example above, if my custom value would've been included in 
NCToken, I could use it directly, without relying on my singleton.

I believe it's just a matter of clean access to some additional properties of 
NCValue. (Current implementation allows me to do what I want, in a roundabout 
way)

Thanks,
Gleb.


‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Friday, February 5, 2021 11:40 AM, Kamov Sergey <[email protected]> wrote:

> Hi Gleb
>
> 1.  https://issues.apache.org/jira/browse/NLPCRAFT-232 - ticket created
> 2.  Do we need metadata for NCValue?  We can add it, but could you
>     provide some example for such usecases (when element's metadata is not
>     enough)?
>
>     Regards,
>
>     Sergey
>
>     On 05.02.2021 19:12, Kamov Sergey wrote:
>
>
> > Hi, Gleb!
> >
> > > 1.  Is it possible/feasible to add parameter for /ask endpoint? For
> > >     example, if developers want to use some request metadata in their
> > >     probe, it would be useful for them to receive it from client. It
> > >     could be some dynamic characteristic of the user, which is used
> > >     differently, depending on the intent.
> > >
> >
> > Look please at `ask` request `data` parameter.
> > rest  -
> > https://app.swaggerhub.com/apis-docs/Apache-NLPCraft/apache-nlpcraft/0.7.4#/Asking/askSync
> > or
> > client  -
> > https://nlpcraft.apache.org/apis/java-client/latest/org/apache/nlpcraft/client/NCClient.html#ask-java.lang.String-java.lang.String-java.lang.String-boolean-java.lang.Long-java.lang.String-)
> > data  - optional JSON request parameter, is it enough for your case?
> >
> > > 2.  There is an interface NCValue, which could be implemented and
> > >     objects of the impl class are returned from NCValueLoader. But there
> > >     is no point in it being an interface, because developer can't use any
> > >     fields in child class. I think it'd be good, if original NCValue was
> > >     returned in NCTokenImpl, so developer can store some additional
> > >     loaded data there.
> > >
> >
> > We already have metadata for
> > - model
> > (https://javadoc.io/static/org.apache.nlpcraft/nlpcraft/0.7.3/org/apache/nlpcraft/model/NCModelView.html#getMetadata())
> > and
> > - it's elements
> > (https://javadoc.io/static/org.apache.nlpcraft/nlpcraft/0.7.3/org/apache/nlpcraft/model/NCElement.html#getMetadata()).
> > You suggested to add metadata also to NCValue
> > (https://javadoc.io/doc/org.apache.nlpcraft/nlpcraft/latest/org/apache/nlpcraft/model/NCValue.html),
> > right?
> > For first look it seems reasonable, we have to discuss how it can be
> > used in intent DSL.
> > Regards,
> > Sergey
> >
> > > Any thoughts would be appreciated!
> > > Thanks,
> > > Gleb.


Reply via email to