代码之家  ›  专栏  ›  技术社区  ›  Deven

在Watson助手中检测“最后一个季度”

  •  1
  • Deven  · 技术社区  · 8 年前

    在Watson助手中, @sys-date 系统实体能够检测与时间相关的短语,如“昨天”、“明天”、“上月”、“下月”、“去年”、“明年”。

    我不能让它认出“最后一刻”。例如,如果用户要求: what were the sales last quarter? ,我希望 @系统日期 包含 2018-01-01 2018-03-31 (相当于2018年第一季度的时间范围)。

    我认识到季度界限可以从任意月份开始,所以可能需要一种定义方法。

    有什么办法吗?

    非常感谢任何指点!

    1 回复  |  直到 8 年前
        1
  •  2
  •   Simon O'Doherty    8 年前

    1.创建一个名为“季度”的实体。给出“q1”、“q2”、“q3”、“q4”和相关概要的值。打开模糊匹配以处理拼写错误。

    2.第二步。创建一个节点来检测 @quarter

    $endDate=“<?现在().reformatdatetime('y')+'-03-30'?>。

    用正确的开始/结束日期对其他季度重复此操作。

    下面是一个可以导入的示例:

    quarter,Q1,first quarter,quarter 1,quarter one,1st quarter,Q 1,1 quarter
    quarter,Q2,second quarter,quarter 2,quarter two,2nd quarter,Q 2,1 quarter
    quarter,Q3,third quarter,quarter 3,quarter three,3rd quarter,3 quarter,Q 3
    quarter,Q4,last quarter,forth quarter,4th quarter,quarter 4,quarter four,Q 4,4 quarter
    

    @quarter .

    enter image description here

    $startDate $endDate 变量。设置如下(第一季度)。

    $startDate = "<? now().reformatDateTime('Y') + '-01-01' ?>"
    $endDate = "<? now().reformatDateTime('Y') + '-03-30' ?>"
    

    例子

    enter image description here

    推荐文章