Commit graph

27 commits

Author SHA1 Message Date
Paulus Schoutsen
933fba84a9
Reload conversation entries on update (#123279) 2024-08-07 11:18:48 +02:00
Paulus Schoutsen
adf8515698
OpenAI make supported features reflect the config entry options (#123047) 2024-08-02 12:08:44 +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
HarvsG
3a0b3a4589
Log tools sent to OpenAI (#122024) 2024-07-16 15:16:50 +02:00
Paulus Schoutsen
976cb434c9
Add CONTROL supported feature to OpenAI conversation entities (#121064)
Add CONTROL supported feature to OpenAI
2024-07-03 09:19:46 -05:00
Denis Shulyaka
2386ed3830
Add script llm tool (#118936)
* Add script llm tool

* Add tests

* More tests

* more test

* more test

* Add area and floor resolving

* coverage

* coverage

* fix ColorTempSelector

* fix mypy

* fix mypy

* add script reload test

* Cache script tool parameters

* Make custom_serializer a part of api

---------

Co-authored-by: Michael Hansen <mike@rhasspy.org>
2024-06-25 10:43:26 -05:00
Paulus Schoutsen
5c2db162c4
Remove "no API" prompt (#120280) 2024-06-24 08:57:59 +02:00
Paulus Schoutsen
0ea9581cfc
OpenAI to respect custom conversation IDs (#119307) 2024-06-11 07:49:14 +02:00
Paulus Schoutsen
299c0de968
Update OpenAI prompt on each interaction (#118747) 2024-06-03 22:27:05 +02:00
Paulus Schoutsen
f3b20d30ae
Add base prompt for LLMs (#118592) 2024-06-01 00:21:37 -04:00
Denis Shulyaka
46da43d09d
Add OpenAI Conversation system prompt user_name and llm_context variables (#118512)
* OpenAI Conversation: Add variables to the system prompt

* User name and llm_context

* test for user name

* test for user id

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-31 15:28:23 -04:00
Paulus Schoutsen
80e9ff672a
Fix openAI tool calls (#118577) 2024-05-31 19:28:52 +02:00
Josef Zweck
d956db691a
Migrate openai_conversation to entry.runtime_data (#118535)
* switch to entry.runtime_data

* check for missing config entry

* Update homeassistant/components/openai_conversation/__init__.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-05-31 11:16:39 -04:00
Paulus Schoutsen
6dd01dbff7
Rename llm.ToolContext to llm.LLMContext (#118566) 2024-05-31 11:11:24 -04:00
Josef Zweck
eae04bf2e9
Add typing for OpenAI client and fallout (#118514)
* typing for client and consequences

* Update homeassistant/components/openai_conversation/conversation.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-05-30 22:13:18 -04:00
Paulus Schoutsen
615a1eda51
LLM Assist API to ignore intents if not needed for exposed entities or calling device (#118283)
* LLM Assist API to ignore timer intents if device doesn't support it

* Refactor to use API instances

* Extract ToolContext class

* Limit exposed intents based on exposed entities
2024-05-28 21:29:18 -04:00
Paulus Schoutsen
1602c8063c
Standardize LLM instructions prompt (#118195)
* Standardize instructions prompt

* Add time/date to default instructions
2024-05-26 20:24:26 -04:00
Paulus Schoutsen
233c3bb2be
Add render prompt method when no API selected (#118136) 2024-05-26 13:35:15 +02: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
Paulus Schoutsen
81f3387d06
Flip prompts to put user prompt on top (#118085) 2024-05-25 00:33:24 -04:00
Paulus Schoutsen
676fe5a9a2
Add recommended model options to OpenAI (#118083)
* Add recommended options to OpenAI

* Use string join
2024-05-25 00:01:48 -04:00
Paulus Schoutsen
a257f63119
Add device info to OpenAI (#118077) 2024-05-24 23:55:01 -04:00
Paulus Schoutsen
7554ca9460
Allow llm API to render dynamic template prompt (#118055)
* Allow llm API to render dynamic template prompt

* Make rendering api prompt async so it can become a RAG

* Fix test
2024-05-24 16:04:48 -04:00
Denis Shulyaka
2f0215b034
LLM Tools support for OpenAI integration (#117645)
* initial commit

* Add tests

* Move tests to the correct file

* Fix exception type

* Undo change to default prompt

* Add intent dependency

* Move format_tool out of the class

* Fix tests

* coverage

* Adjust to new API

* Update strings

* Update tests

* Remove unrelated change

* Test referencing non-existing API

* Add test to verify no exception on tool conversion for Assist tools

* Bump voluptuous-openapi==0.0.4

* Add device_id to tool input

* Fix tests

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-21 22:45:04 -04:00
Allen Porter
9b4099950c
Cleanup OpenAI and Ollama conversation entities (#116714) 2024-05-03 10:59:08 -04:00
Allen Porter
897794f53b
Clean up small changes from OpenAI conversation entity change (#116395)
Small cleanups in OpenAI conversation
2024-05-02 19:38:12 -05:00
Paulus Schoutsen
2df6f1849f
Add OpenAI conversation entity (#114942)
* Add OpenAI conversation entity

* Add migration
2024-04-09 11:10:03 -04:00