Paulus Schoutsen
37fe25cfdc
Add support_streaming to ConversationEntity ( #144998 )
...
* Add support_streaming to ConversationEntity
* pipeline tests
2025-05-19 13:43:06 -04:00
Artur Pragacz
8904f174d2
Remove unused util module in conversation ( #141293 )
2025-03-24 17:27:27 +01:00
Paulus Schoutsen
0b6f49fec2
Filter out certain intents from being matched in local fallback ( #137763 )
...
* Filter out certain intents from being matched in local fallback
* Only filter if LLM agent can control HA
2025-02-19 14:27:42 -06:00
Paulus Schoutsen
df307aeb6d
Stream OpenAI messages into the chat log ( #137400 )
2025-02-09 00:01:24 -05:00
Paulus Schoutsen
9679fc7878
Chat session rev2 ( #137209 )
...
* Chat Session rev 2
* Rename session to chat_log
* Simplify typing
* Typing
* Address comments
* Fix anthropic and ollama
2025-02-03 00:05:20 -05:00
Paulus Schoutsen
2f6640707b
Extract conversation ID generation to helper ( #137062 )
...
* Extract conversation ID generation to helper
* Allow nested get_chat_log calls
2025-02-01 20:54:00 -05:00
Paulus Schoutsen
5690516852
ChatSession: Split native content out of message class ( #136668 )
...
Split native content out of message class
2025-01-27 21:12:42 -08:00
Paulus Schoutsen
754de6f998
Add shared history for conversation agents ( #135903 )
...
* Add shared history for conversation agents
* Remove unused code
* Add support for native history items
* Store all assistant responses as assistant in history
* Add history support to DefaultAgent.async_handle_intents
* Make local fallback work
* Add default agent history
* Add history cleanup
* Add tests
* ChatHistory -> ChatSession
* Address comments
* Update snapshots
2025-01-18 22:33:03 -05: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
epenet
2699eb62bd
Rename DOMAIN_DATA HassKey constants to DATA_COMPONENT ( #126746 )
...
* Rename DOMAIN_DATA HassKey constant to DATA
* DATA -> DATA_COMPONENT
2024-09-25 15:53:58 +02:00
epenet
f8a53aea09
Use HassKey in conversation ( #126332 )
...
* Use HassKey in conversation
* Adjust tests
2024-09-22 17:54:14 +02:00
epenet
8b44c16b57
Use HassKey in core components (a-c) ( #126258 )
...
* Use HassKey in conversation
* Use HassKey in assist_satellite
* automation
* More
* Unrelated
* Improve
2024-09-20 12:07:15 +02:00
epenet
88cacbc898
Expose component constants for llm helper ( #125891 )
...
* Expose climate INTENT_GET_TEMPERATURE
* Expose conversation trace items
* More fixes for llm helper
2024-09-13 12:43:37 +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
Paulus Schoutsen
869f24df49
Convert async_get_conversation_languages from async to callback ( #121162 )
...
* Convert get_languages to callback
* One more callback
2024-07-04 10:41:31 +02:00
Paulus Schoutsen
a885bdfe76
Add conversation supported feature CONTROL ( #121036 )
2024-07-03 14:30:51 +02:00
Paulus Schoutsen
54e6459a41
Speed up getting conversation agent languages ( #119554 )
...
Speed up getting conversation languages
2024-06-16 13:35:43 -04:00
Michael Hansen
add6ffaf70
Add Assist timers ( #117199 )
...
* First pass at timers
* Move to separate file
* Refactor to using events
* Add pause/unpause/status
* Add ordinal
* Add test for timed Assist command
* Fix name matching
* Fix IntentHandleError
* Fix again
* Refactor to callbacks
* is_paused -> is_active
* Rename "set timer" to "start timer"
* Move tasks to timer manager
* More fixes
* Remove assist command
* Remove cancel by ordinal
* More tests
* Remove async on callbacks
* Export async_register_timer_handler
2024-05-14 14:42:32 -04:00
Paulus Schoutsen
f9a7e6bb9f
Add migration logic to assist_pipeline ( #115172 )
2024-04-08 11:29:55 -04: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
Marc Mueller
ff3a801936
Add empty line after module docstring [a-d] ( #112697 )
2024-03-08 14:51:32 +01:00
Marc Mueller
f3594c543d
Use KEY_HASS [a-g] ( #112609 )
2024-03-07 18:09:20 +01: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
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
Marc Mueller
833cddc8f5
Improve conversation typing ( #106905 )
2024-01-05 18:40:34 +01: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
7e3fdd85fc
Add wildcards to sentence triggers ( #97236 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-27 20:30:42 +02: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
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
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
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
Erik Montnemery
4860a8d1e8
Don't use storage collection helper in ExposedEntities ( #92396 )
...
* Don't use storage collection helper in ExposedEntities
* Fix tests
2023-05-03 12:39:22 +02:00
Erik Montnemery
e3c16e634b
Allow exposing entities not in the entity registry to assistants ( #92363 )
2023-05-02 22:08:09 +02:00
Erik Montnemery
ebd9cd096a
Keep expose setting in sync for assist ( #92158 )
...
* Keep expose setting in sync for assist
* Fix initialization, add test
* Fix tests
* Add AgentManager.async_setup
* Fix typo
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-28 15:59:21 +02:00
Erik Montnemery
18f7b92438
Fall back to domain for conversation agents without title ( #92014 )
2023-04-25 22:14:44 +02:00
Erik Montnemery
b601fb17d3
Create a default assist pipeline on start ( #91947 )
...
* Create a default assist pipeline on start
* Minor adjustments
* Address review comments
* Remove tts.async_get_agent
* Fix bugs, improve test coverage
2023-04-24 14:00:52 -04:00
Paulus Schoutsen
d4fb2cdcf7
Conversation list command to support match-all languages agents ( #91844 )
...
* Conversation list command to support match-all languages agnets
* Reuse var
2023-04-22 12:43:09 -04:00
Erik Montnemery
0429b321b8
Include matching languages in WS conversation/agent/list ( #91730 )
...
* Include matching languages in WS conversation/agent/list
* Allow specifying country
2023-04-20 08:58:43 -04:00
Erik Montnemery
6d619579b4
Add WS API for listing languages supported by a full assist pipeline ( #91669 )
...
* Add WS API for listing languages supported by a full assist pipeline
* Address review comments, change logic
2023-04-20 08:55:17 -04:00
Erik Montnemery
5e9bbeb4ad
Refactor conversation agent WS API for listing agents ( #91590 )
...
* Refactor conversation agent WS API for listing agents
* Add conversation/agent/info back
2023-04-19 10:53:24 -04:00
Erik Montnemery
5f7d98f15b
Improve comment in conversation ( #91595 )
2023-04-18 09:27:14 -04:00
Paulus Schoutsen
c9d81bd217
Pipelines to default to Home Assistant agent ( #91321 )
...
* Pipelines to default to Home Assistant agent
* Tests fix
2023-04-13 00:34:19 -04:00
Paulus Schoutsen
ad26317b75
Conversation: allow getting agent info ( #90540 )
...
* Conversation: allow getting agent info
* Add unset agenet back
2023-03-31 14:36:39 -04:00
Paulus Schoutsen
fc38b4327f
Add support for multiple conversation agents ( #87337 )
...
* Add support for multiple conversation agents
* Lock initializing default agent
* Allow unsetting agent when never set
2023-02-03 23:35:29 -05:00
Paulus Schoutsen
6c8efe3a3b
Conversation cleanup ( #86592 )
...
* Require config entry when setting Conversation agent, add new unset agent method
* Remove onboarding from conversation agent
* Type attribution
* Wrap async_process params in ConversationInput object
2023-01-24 21:47:49 -06:00
Michael Hansen
ea95abcb30
Use intent responses from home-assistant-intents ( #86484 )
...
* Use intent responses from home_assistant_intents
* Use error responses from home_assistant_intents
* Remove speech checks for intent tests (set by conversation now)
* Bump hassil and home-assistant-intents versions
* Use Home Assistant JSON reader when loading intents
* Remove speech checks for light tests (done in agent)
* Add more tests for code coverage
* Add test for reloading on new component
* Add test for non-default response
2023-01-23 22:38:41 -05:00