genie-toolkit icon indicating copy to clipboard operation
genie-toolkit copied to clipboard

(Production) Weather "forecast" parameter disambiguation

Open tonyespinoza1 opened this issue 2 years ago • 4 comments

Log attached.

This issue may belong under the skill...

Failed to distinguish parametric differences between these cases: what's the forecast for tomorrow? Genie: It will be cloudy tomorrow at 2:00 PM in New York City, New York and the temperature will be 86.5 F. what will the weather be next week? Genie: It will be cloudy tomorrow at 2:00 PM in New York City, New York and the temperature will be 86.5 F.

In the following case it seems to constrain the results (projection?) unexpectedly. Asking for a forecast for next week would ideally include a range of days rather than one.

"What is the forecast for next week?" Genie: It will be cloudy on next Sunday at 11:00 AM in New York City, New York and the temperature will be 84.6 F.

log-web-7b79862c (1).txt

tonyespinoza1 avatar Jul 16 '21 04:07 tonyespinoza1

Just a follow up. May be related (from Staging):

weather forecast

It will be cloudy tomorrow at 7:00 AM in Lexington Hills, Summit West and the temperature will be 63 F.

weather next week

Sorry, I cannot retrieve weather forecasts in the past.

====
# main/9982af86-ad1b-4084-875a-98be4c695851
#! timestamp: 2021-07-18T23:22:55.463Z
U: weather forecast
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.forecast();
C: $dialogue @org.thingpedia.dialogue.transaction.execute;
C: @org.thingpedia.weather.forecast(location=new Location(37.1624585, -121.98538717615781, "Lexington Hills, Summit West"), date=$end_of(day))
C: #[results=[
C:   { temperature=17.2C, wind_speed=1.6mps, humidity=66.7, cloudiness=35.2, fog=0, status=enum cloudy, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=2;content_type=image/png"^^tt:picture, date=new Date("2021-07-19T14:00:00.000Z"), location=new Location(37.1624585, -121.98538717615781, "Lexington Hills, Summit West") }
C: ]];
#! timestamp: 2021-07-18T23:22:56.768Z
A: It will be cloudy tomorrow at 7:00 AM in Lexington Hills, Summit West and the temperature will be 63 F.
AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result;
#! timestamp: 2021-07-18T23:23:01.657Z
U: weather next week
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.forecast(date=$start_of(week));
====

tonyespinoza1 avatar Jul 18 '21 23:07 tonyespinoza1

This seems to work with the latest model, given the fix we did to future dates. Closing.

gcampax avatar Jul 22 '21 17:07 gcampax

@gcampax Request for weather with date parameterization (tomorrow, this weekend, etc.) seem to be working fine.

However, a common case is "what's the forecast" or "what's the weather forecast" and in those cases I think the desired behavior is to return weather for the next several days. (currently returns weather for tomorrow as shown in this log.) can we make generic requests for weather return weather for next 3 days?

There will be clean up to do later on the string formatting (we can leave out the time of day) but that's not important to me right now.

====
# main/00f7649a-64e1-40fe-98d8-d71962c32453
#! timestamp: 2021-07-31T23:44:37.926Z
U: what's the weather?
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.current();
C: $dialogue @org.thingpedia.dialogue.transaction.execute;
C: @org.thingpedia.weather.current(location=new Location(37.4443293, -122.1598465, "Palo Alto, California"))
C: #[results=[
C:   { temperature=27.9C, wind_speed=2.3mps, humidity=36.8, cloudiness=1.6, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture, location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
#! timestamp: 2021-07-31T23:44:39.459Z
A: It is sunny today in Palo Alto, California and the temperature is 82.2 F.
AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result;
#! timestamp: 2021-07-31T23:44:45.626Z
U: what's the forecast for next week?
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.forecast(date=$end_of(week));
C: $dialogue @org.thingpedia.dialogue.transaction.execute;
C: @org.thingpedia.weather.current(location=new Location(37.4443293, -122.1598465, "Palo Alto, California"))
C: #[results=[
C:   { temperature=27.9C, wind_speed=2.3mps, humidity=36.8, cloudiness=1.6, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture, location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
C: @org.thingpedia.weather.forecast(date=$end_of(week), location=new Location(37.4443293, -122.1598465, "Palo Alto, California"))
C: #[results=[
C:   { temperature=15.6C, wind_speed=0.9mps, humidity=76.1, cloudiness=32, fog=0, status=enum cloudy, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=2;content_type=image/png"^^tt:picture, date=new Date("2021-08-01T14:00:00.000Z"), location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
#! timestamp: 2021-07-31T23:44:46.821Z
A: It will be cloudy tomorrow at 7:00 AM in Palo Alto, California and the temperature will be 60.1 F.
AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result;
#! timestamp: 2021-07-31T23:44:55.801Z
U: what's the forecast
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.forecast();
C: $dialogue @org.thingpedia.dialogue.transaction.execute;
C: @org.thingpedia.weather.current(location=new Location(37.4443293, -122.1598465, "Palo Alto, California"))
C: #[results=[
C:   { temperature=27.9C, wind_speed=2.3mps, humidity=36.8, cloudiness=1.6, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture, location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
C: @org.thingpedia.weather.forecast(date=$end_of(week), location=new Location(37.4443293, -122.1598465, "Palo Alto, California"))
C: #[results=[
C:   { temperature=15.6C, wind_speed=0.9mps, humidity=76.1, cloudiness=32, fog=0, status=enum cloudy, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=2;content_type=image/png"^^tt:picture, date=new Date("2021-08-01T14:00:00.000Z"), location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
C: @org.thingpedia.weather.forecast(location=new Location(37.4443293, -122.1598465, "Palo Alto, California"), date=$end_of(day))
C: #[results=[
C:   { temperature=15.6C, wind_speed=0.9mps, humidity=76.1, cloudiness=32, fog=0, status=enum cloudy, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=2;content_type=image/png"^^tt:picture, date=new Date("2021-08-01T14:00:00.000Z"), location=new Location(37.4443293, -122.1598465, "Palo Alto, California") }
C: ]];
#! timestamp: 2021-07-31T23:44:59.635Z
A: Did you mean get the weather forecast?
A: It will be cloudy tomorrow at 7:00 AM in Palo Alto, California and the temperature will be 60.1 F.
AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result;
#! timestamp: 2021-07-31T23:45:20.231Z
U: what's the forecast for this weekend
UT: $dialogue @org.thingpedia.dialogue.transaction.execute;
UT: @org.thingpedia.weather.forecast(date=new Date(enum saturday));

tonyespinoza1 avatar Jul 31 '21 23:07 tonyespinoza1

moving this to P3. current behavior is good enough for now.

tonyespinoza1 avatar Aug 04 '21 03:08 tonyespinoza1