Michael Hansen
60774575c6
Set HA time zone with freeze_time in agent test ( #131058 )
...
* Patch dt_util instead of using freeze_time
* Use freeze_time but set HA timezone
2024-11-20 19:29:36 +01:00
Michael Hansen
5fa9a945d9
Handle sentence triggers and local intents before pipeline agent ( #129058 )
...
* Handle sentence triggers and registered intents in Assist LLM API
* Remove from LLM
* Check sentence triggers and local intents first
* Fix type
* Fix type again
* Use pipeline language
* Fix cloud test
* Clean up and fix translation key
* Refactor async_recognize
2024-11-14 10:50:50 -06:00
Michael Hansen
51c6ee97b1
Upgrade to hassil 2.0 ( #130544 )
...
* Working on hassil 2.0
* Bump to hassil 2.0
* Update snapshots
* Remove debug logging
2024-11-13 16:50:08 -05:00
Michael
f10063c9be
Fix translation key for `done` response in conversation ( #130247 )
2024-11-10 16:28:58 +01:00
Michael Hansen
901457e7aa
Bump intents and add HassRespond test ( #129830 )
2024-11-05 22:22:49 +01:00
Michael Hansen
cb1b72d6ba
Bump intents to 2024.10.30 ( #129505 )
2024-10-30 16:20:59 +01:00
Artur Pragacz
866f1e70a4
Fix default conversation agent tests ( #128490 )
2024-10-15 22:21:18 -05:00
Artur Pragacz
bb9f534259
Improve intent recognition in default conversation agent ( #124282 )
...
Use the same logic for custom sentences.
Prefer higher quality (longer) names.
2024-10-15 09:14:31 -05:00
Michael Hansen
8ee8421af7
Use device area/floor in HassGetState intent ( #128197 )
...
Use preferred area/floor in HassGetState intent
2024-10-11 16:08:43 -05:00
Michael Hansen
67e0ccf677
Use exposed error messages in Assist ( #127503 )
...
* Use exposed error messages
* Report expose errors
* Remove comment
* Relative import
* Rework expose check logic
* Delay creation of all names list, and skip config/hidden entities
* Clean up commented code and type issue
* Fix test
* Move assistant check
2024-10-11 13:06:03 -04:00
epenet
f8a53aea09
Use HassKey in conversation ( #126332 )
...
* Use HassKey in conversation
* Adjust tests
2024-09-22 17:54:14 +02:00
Paulus Schoutsen
1936aeccb9
Add a test for async_converse ( #124697 )
2024-08-27 11:01:00 -05:00
Andrii Mitnovych
254aa8c9ea
Add entity deduplication by assist device ID in conversation agent ( #123957 )
...
* Add entities deduplication by assist device ID in default conversation agent
* Updated test.
2024-08-19 15:00:23 -05:00
Joost Lekkerkerker
e8d7eb05ae
Delete unused snapshots ( #123656 )
...
* Delete unused snapshots
* Delete unused snapshots
2024-08-12 13:28:09 +02:00
Allen Porter
8d0e998e54
Improve conversation agent tracing to help with eval and data collection ( #122542 )
2024-07-31 14:38:44 +02:00
Allen Porter
f14471112d
Improve LLM tool quality by more clearly specifying device_class slots ( #122723 )
...
* Limit intent / llm API device_class slots to only necessary services and limited set of values
* Fix ruff errors
* Run ruff format
* Fix typing and improve output schema
* Fix schema and improve flattening
* Revert conftest
* Revert recorder
* Fix ruff format errors
* Update using latest version of voluptuous
2024-07-31 14:36:02 +02:00
epenet
075550b7ba
Use HOMEASSISTANT_DOMAIN alias for core DOMAIN in tests ( #122762 )
2024-07-29 12:51:12 +02:00
Marc Mueller
a6068dcdf2
Update import locations in tests ( #122216 )
2024-07-20 11:16:04 +02:00
Michael Hansen
fa0a5451b9
Split up tests to avoid CI timeouts ( #122096 )
2024-07-17 20:32:26 +02:00
Michael Hansen
417abda649
Add HassGetCurrentDate and HassGetCurrentTime intents ( #121707 )
2024-07-11 00:17:04 +02:00
Paulus Schoutsen
01861cd240
Ensure we prepare conversation pipeline when speech-to-text starts ( #114665 )
...
* Ensure we prepare conversation pipeline when speech-to-text starts
* Add lock around recognize
* Update homeassistant/components/conversation/default_agent.py
* Add lock around load intents
2024-07-09 09:58:52 -05:00
Michael Hansen
4498bf9ec4
Remove language lock from default agent and move around tests ( #121531 )
...
* Remove language lock
* Remove unsub for change events
* Remove redundant check
* Simplify intent loading
* Cache intent loading error
* Revert "Remove unsub for change events"
This reverts commit 575266abcd
.
* guard instead of assert
* Some more cleanup
* No need to warn during prepare
* Some more cleanup
* Add more timing logs
* Split up tests and rely less on http
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-07-09 16:05:43 +02:00
Jan Bouwhuis
8a28cbe9e2
Wait for conversation test init ( #121464 )
...
* Wait for conversation test init
* typo
2024-07-07 22:24:20 +02:00
Paulus Schoutsen
daaf35d4c1
Simplify conversation tests ( #121060 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-07-05 09:46:36 +02:00
Paulus Schoutsen
a885bdfe76
Add conversation supported feature CONTROL ( #121036 )
2024-07-03 14:30:51 +02:00
epenet
e5c7ff6a5b
Use service_calls fixture in conversation tests ( #120906 )
2024-07-01 17:57:40 +02:00
Michael Hansen
02b142fbde
Bump intents to 2024.6.26 ( #120584 )
...
Bump intents
2024-06-26 11:13:01 -05:00
Michael Hansen
d3ceaef098
Allow timer management from any device ( #120440 )
2024-06-26 09:06:56 +02:00
Michael Hansen
46dcf1dc44
Prioritize custom intents over builtin ( #120358 )
2024-06-24 20:57:56 +02:00
epenet
015bc0e172
Use HassKey in homeassistant integration ( #120332 )
2024-06-24 16:37:07 +02:00
epenet
b4d0de9c0f
Improve type hints in conversation tests ( #120306 )
2024-06-24 13:41:55 +02:00
Michael Hansen
8aed04cd3c
Bump intents to 2024.6.21 ( #120106 )
2024-06-21 18:19:52 +02:00
epenet
904cf26d31
Add MockToggleEntity type hints in tests ( #120075 )
2024-06-21 12:32:03 +02:00
Michael Hansen
bca8958d4b
Prioritize literal text with name slots in sentence matching ( #118900 )
...
Prioritize literal text with name slots
2024-06-06 14:20:34 -04:00
Michael Hansen
0257aa4839
Clean up exposed domains ( #118753 )
...
* Remove lock and script
* Add media player
* Fix tests
2024-06-03 21:26:40 -05:00
epenet
5d594a509c
Add type hints for MockAgent in conversation tests ( #118701 )
2024-06-03 17:44:13 +02:00
epenet
1fbf93fd36
Add SnapshotAssertion type hints in tests ( #118371 )
2024-05-29 14:11:58 +02:00
epenet
7e62061b9a
Improve typing for `calls` fixture in tests (a-l) ( #118349 )
...
* Improve typing for `calls` fixture in tests (a-l)
* More
* More
2024-05-29 09:06:48 +02:00
Michael Hansen
d223e1f2ac
Add Conversation command to timers ( #118325 )
...
* Add Assist command to timers
* Rename to conversation_command. Execute in timer code.
* Make agent_id optional
* Fix arg
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-28 20:33:31 -05:00
Michael Hansen
106cb4cfb7
Bump intents and add tests for new error messages ( #118317 )
...
* Add new error keys
* Bump intents and test new error messages
* Fix response text
2024-05-28 12:24:24 -04:00
Allen Porter
89e2c57da6
Add conversation agent debug tracing ( #118124 )
...
* Add debug tracing for conversation agents
* Minor cleanup
2024-05-25 14:16:51 -04:00
Thomas55555
528d67ee06
Remove unused snapshots [a-f] ( #117999 )
2024-05-24 08:28:04 +02:00
Michael Hansen
daee3d8db0
Don't prioritize "name" slot if it's a wildcard in default conversation agent ( #117518 )
...
* Don't prioritize "name" slot if it's a wildcard
* Fix typing error
2024-05-15 22:23:24 -04:00
Michael Hansen
641754e0bb
Pass device_id to intent handlers ( #117442 )
2024-05-14 13:59:49 -05:00
Michael Hansen
7923471b94
Intent target matching and media player enhancements ( #115445 )
...
* Working
* Tests are passing
* Fix climate
* Requested changes from review
2024-05-07 22:01:03 -04:00
Michael Hansen
1c2499b03a
Add "conversation" key to translations ( #114887 )
...
* Use translated trigger response
* Use conversation key instead
2024-04-04 14:45:27 -05:00
J. Nick Koston
aedfd6c983
Add index for floor/label to the area registry ( #114777 )
2024-04-03 21:04:26 -10:00
Paulus Schoutsen
d2e4f5f36e
Add conversation entity ( #114518 )
...
* Default agent as entity
* Migrate constant to point at new value
* Fix tests
* Fix more tests
* Move assist pipeline back to cloud after dependenceis
2024-04-01 21:34:25 -04:00
Paulus Schoutsen
f01235ef74
Re-organize conversation integration ( #114502 )
...
* Re-organize conversation integration
* Clean up 2 more imports
* Re-export models
* Fix imports
* Uno mas
* Rename agents to models
* Fix cast test that i broke?
* Just blocking till I'm done
* Wrong place
2024-03-31 00:05:25 -04:00
Michael Hansen
d23b22b566
Add initial support for floors to intents ( #114456 )
...
* Add initial support for floors to intents
* Fix climate intent
* More tests
* No return value
* Add requested changes
* Reuse event handler
2024-03-30 16:59:20 -04:00
Sid
dc557fca1e
Refactor conversation mock_agent ( #114428 )
...
* Refactor conversation mock_agent
* Address review comments
2024-03-29 14:38:58 +01:00
Michael Hansen
e4d2985589
Bump intents to 2024.3.27 ( #114312 )
2024-03-27 16:43:15 +01:00
Jan-Philipp Benecke
9580adfde9
Use new `setup_test_component_platform` helper instead of test fixture for light platform ( #114200 )
2024-03-26 00:17:16 +01:00
Joost Lekkerkerker
6bb4e7d62c
Bump ruff to 0.3.4 ( #112690 )
...
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-26 00:02:16 +01:00
Jan-Philipp Benecke
cd0c9e1c4f
Remove deprecated `hass.components` from conversation tests and use light setup fixture ( #114012 )
2024-03-22 17:52:10 +01:00
Sid
00ec7f11f0
Enable Ruff rule PT007 ( #113764 )
...
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-03-19 09:01:07 +01:00
Sid
82a60fe8ad
Enable Ruff RSE ( #113695 )
2024-03-18 00:40:38 +01:00
Michael Hansen
556855f54e
Add device_id to sentence trigger and external conversation APIs ( #113094 )
...
* Add device_id to sentence trigger and external conversation APIs
* Remove device_id from external API
* Update tests/components/conversation/snapshots/test_init.ambr
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-12 08:50:06 -04:00
Marc Mueller
aa16a9d707
Add empty line after module docstring (3) ( #112750 )
2024-03-08 20:38:34 +01:00
Marc Mueller
38adfbf1a3
Add empty line after module docstring [tests a-e] ( #112708 )
2024-03-08 08:50:25 -05:00
Michael Hansen
0d0b64d351
Move HassSetPosition to homeassistant domain ( #111867 )
...
* Move HassSetPosition to homeassistant domain
* Add test for unsupported domain with HassSetPosition
* Split service intent handler
* cleanup
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-29 21:53:52 -05:00
Michael Hansen
0985a7ab91
Bump intents and add sentence tests ( #111791 )
2024-02-28 23:25:33 -05:00
J. Nick Koston
fdd45189ca
Fix trigger attachment race in conversation tests ( #110869 )
2024-02-18 20:13:41 +01:00
Michael Hansen
2681dae60c
Matching duplicate named entities is now an error in Assist ( #110050 )
...
* Matching duplicate named entities is now an error
* Update snapshot
* Only use area id
2024-02-08 19:38:03 -06:00
Michael Hansen
1750f54da4
Assist fixes ( #109889 )
...
* Don't pass entity ids in hassil slot lists
* Use first completed response
* Add more tests
2024-02-07 15:13:42 -06:00
Michael Hansen
c6ea57458c
Pass slots to error messages instead of IDs [rework] ( #109410 )
...
Co-authored-by: tetele <tm.sandu@gmail.com>
2024-02-03 12:14:33 +01:00
Erik Montnemery
9d22f07fc6
Use send_json_auto_id in conversation tests ( #109354 )
2024-02-02 15:46:59 +01:00
Michael Hansen
a1eaa5cbf2
Migrate to new intent error response keys ( #109269 )
2024-02-01 21:10:24 +01:00
Michael Hansen
c2c98bd04c
Move default response out of sentence trigger registration and into agent ( #109317 )
...
* Move default response out of trigger and into agent
* Add test
2024-02-01 20:40:29 +01:00
Michael Hansen
9752e70675
Intents package combines sentences/responses per language ( #109079 )
2024-01-30 12:38:29 +01:00
Michael Hansen
61c6c70a7d
Improved Assist debug ( #108889 )
...
* Differentiate builtin/custom sentences and triggers in debug
* Refactor so async_process runs triggers
* Report relative path of custom sentences file
* Add sentence trigger test
2024-01-26 23:04:45 -05:00
Michael Hansen
d8a1c58b12
Fix intent loading and incorporate unmatched entities more ( #108423 )
...
* Incorporate unmatched entities more
* Don't list targets when match is incomplete
* Add test for out of range
2024-01-23 20:31:57 -05:00
Erik Montnemery
9bff039d17
Add set_conversation_response script action ( #108233 )
...
* Add set_conversation_response script action
* Update homeassistant/components/conversation/trigger.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Revert accidental change
* Add test
* Ignore mypy
* Remove incorrect callback decorator
* Update homeassistant/helpers/script.py
* Add test with templated set_conversation_response
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-01-23 09:13:42 -05:00
Erik Montnemery
91815ed5f9
Assert default response from conversation trigger ( #108231 )
2024-01-17 15:47:06 +01:00
Michael Hansen
4bb2a3ad92
Specific Assist errors for domain/device class ( #107302 )
...
* Specific errors for domain/device class
* Don't log exception
* Check device class first
* Refactor guard clauses
* Test default error
2024-01-08 12:23:06 -06:00
Michael Hansen
a600a0e023
Expose all areas to Assist and ignore empty aliases ( #107267 )
...
* Expose all areas to Assist
* Skip empty entity/area aliases
2024-01-05 13:45:41 -05:00
Michael Hansen
269500cb29
Report missing entities/areas instead of failing to match in Assist ( #107151 )
...
* Report missing entities/areas instead of failing
* Fix test
* Update assist pipeline test snapshots
* Test complete match failure
* Fix conflict
2024-01-04 17:09:20 -06:00
Denis Shulyaka
99bcc38284
Add conversation_id parameter to conversation.process service ( #106078 )
...
* Add conversation_id parameter to conversation.process service
* fix test
* fix tests
2024-01-04 14:46:06 -06:00
Michael Hansen
5003993658
Bump intents to 2024.1.2 ( #106909 )
2024-01-02 15:35:48 -06:00
Michael Hansen
fdeb9e36c3
Use area id for context instead of name ( #105313 )
2023-12-08 10:05:21 -06:00
Michael Hansen
8c99cf14d3
Context slot decisions moved into hassil ( #104132 )
2023-11-17 11:07:08 -06:00
Michael Hansen
a8acde62ff
Use device area as context during intent recognition ( #103939 )
...
* Use device area as context during intent recognition
* Use guard clauses
2023-11-17 07:34:14 -06:00
Michael Hansen
e157206eeb
Conversation reload with language=None clears all languages ( #103757 )
...
Reload with language=None clears all languages
2023-11-10 13:22:49 -05:00
Tudor Sandu
d3ed8a6b8b
Validate empty sentence triggers ( #103579 )
...
* Validate empty sentence triggers
* Add extra test for no sentences
* Remove extra line
---------
Co-authored-by: Michael Hansen <mike@rhasspy.org>
2023-11-07 11:56:24 -06:00
Michael Hansen
25671a2e42
Add HassNevermind intent (bump intents package) ( #102131 )
...
* Add HassNevermind intent
* Bump intents package to 2023.10.16
2023-10-16 19:13:26 -05:00
Erik Montnemery
da53944a37
Adjust conversation tests which create devices ( #98185 )
2023-08-10 18:22:17 +02:00
Michael Hansen
7cf2199e8b
Bump intents to 2023.8.2 ( #97636 )
2023-08-02 20:01:30 -04:00
Michael Hansen
7e3fdd85fc
Add wildcards to sentence triggers ( #97236 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-27 20:30:42 +02:00
Michael Hansen
311c321d06
Add HassShoppingListAddItem to default agent ( #97232 )
...
* Bump hassil and intents package for HassShoppingListAddItem
* Remove hard-coded response text
* Test adding item to the shopping list
* Hook removed import in test for some reason
2023-07-25 22:19:03 -04:00
Franck Nijhof
f2bd122fde
Clean up conversation agent attribution ( #96883 )
...
* Clean up conversation agent attribution
* Clean up google_generative_ai_conversation as well
2023-07-19 09:03:53 +02:00
Michael Hansen
6b8ae0ec86
Ensure trigger sentences do not contain punctuation ( #95633 )
...
* Ensure trigger sentences do not contain punctuation
* Update homeassistant/components/conversation/trigger.py
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-30 13:06:26 -05:00
Michael Hansen
487dd3f956
Add targeted entities to sentence debug API ( #95480 )
...
* Return targets with debug sentence API
* Update test
* Update homeassistant/components/conversation/__init__.py
* Include area/domain in test sentences
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-28 18:34:43 -04:00
Michael Hansen
79f1c86789
Bump home-assistant-intents to 2023.6.28 ( #95451 )
2023-06-28 19:35:18 +02:00
Paulus Schoutsen
d6cd5648b9
Change conversation default agent behavior ( #95225 )
...
* Change conversation default agent behavior
* Fix tests
2023-06-26 22:10:17 -04:00
Paulus Schoutsen
3f10233833
Add return value to conversation.process service ( #94740 )
...
* Add return value to conversation.process service
* Adjust for new API
2023-06-23 13:32:03 -04:00
Michael Hansen
d811fa0e74
Sentence trigger ( #94613 )
...
* Add async_register_trigger_sentences for default agent
* Add trigger response and trigger handler
* Check callback in test
* Clean up and move response to callback
* Add trigger test
* Drop TriggerAction
* Test we pass sentence to callback
* Match triggers once, allow multiple sentences
* Don't use trigger id
* Use async callback
* No response for now
* Use asyncio.gather for callback responses
* Fix after rebase
* Use a list for trigger sentences
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-22 18:29:34 -05:00
Michael Hansen
38614bc3f0
Add websocket command to test intent recognition for default agent ( #94674 )
...
* Add websocket command to test intent recognition for default agent
* Return results as a list
* Only check intent name/entities in test
* Less verbose output in debug API
2023-06-22 12:24:59 -04:00
Paulus Schoutsen
cd330a2740
Pass device ID to conversation input ( #93867 )
2023-05-31 16:56:12 -04:00
Michael Hansen
9f4c9f1ce3
Bump intents to 2023.5.30 ( #93822 )
2023-05-30 22:11:08 +02:00
Michael Hansen
74560ab139
Skip unexposed entities in intent handlers ( #92415 )
...
* Filter intent handler entities by exposure
* Add test for skipping unexposed entities
2023-05-03 12:18:31 -04:00