c# - 在 botframework v4 中使用 LUIS datetimeV2 实体
问题描述
我正在使用带有调度工具的 Botframework v4 C# 从 LUIS 和 QnA Maker 获取结果。我的一些 LUIS 结果有 datetimev2 实体,我不太确定如何正确处理。
我在 中看到已解析的日期时间值AdditionalProperties
,是否有可以将此对象转换为的内置类?是否有任何示例可以解释如何在 botframework v4 中使用一般实体?与此相关的所有文档似乎仍然仅适用于 v3。
解决方案
datetimeV2
很棘手,必须根据用户输入重构逻辑(有没有年份的日期,相对日期等)
处理日期时间的代码(JS)是:
const datetime = _.get(
luisQuery.entities.filter(e => e.type && e.type.includes("builtin.datetimeV2")),
'[0].resolution.values[0].timex',
null);
const hasYear = (datetime) => {
return !datetime.includes("XXXX");
};
const makeUseOfDateTime = (datetime) => {
if (datetime.length === 4) {
datetime += "-12-31";
} else if (datetime.length === 7) {
datetime += "-31";
}
// do something with datetime
};
hasYear
检查年份是否由用户引入,makeUseOfDateTime
推断年末(如果仅提供年份)并推断月末(如果仅提供年份和月份)
推荐阅读
- python - 根据 self.questions 列表为答案创建 if, else 语句
- c# - API 过滤器和验证
- javascript - jQuery 显示调试器而不是输出
- hadoop - 在 HDFS 上创建 Solr 集合失败
- mysql - 具有 id 的多列的 SQL 连接
- uml - Visual Paradigm 中的 UML 序列图自动编号
- docker - Kubernetes - 将多个镜像部署到一个 Pod 中
- single-page-application - 在单页应用程序中缓存播放列表的最佳方法是什么
- python - 如何使用python获取具有指定类的href链接
- javascript - django:如何根据数据库中的条目禁用日期选择器中的日期?