Ivan Lopez Hernandez
0edfbded23
Fixes #140182 by checking file status before sending the prompt. ( #144131 )
...
* Added unit tests
* Addressed review comments
* Fixed tests
* PR comments
2025-05-05 23:45:39 -07:00
Allen Porter
2326c23133
Increase Gemini max tokens to avoid failures observed in evaluations ( #143728 )
...
* Increase Gemini max tokens to avoid failures observed in evaluations
* Update snapshots
2025-04-26 15:30:47 -07:00
Allen Porter
4483025856
Update Google Generative AI to allow multiple LLM APIs ( #143191 )
2025-04-19 11:44:12 +02:00
Ivan Lopez Hernandez
c14380247b
Handle None on the response candidates in Google Generative AI ( #142497 )
...
* Added type checking on the candidates list
* Made error message a constant
2025-04-07 21:20:54 -07:00
Ivan Lopez Hernandez
30e50d261d
Made Google Search enable dependent on Assist availability ( #141712 )
...
* Made Google Search enable dependent on Assist availability
* Show error instead of rendering again
* Cleanup test code
2025-04-03 16:23:59 -04:00
Paulus Schoutsen
e88b321741
Ensure user always has first turn for Google Gen AI ( #141893 )
2025-03-30 23:31:45 -04:00
John Karabudak
85d2e3d006
Fix LLM to speed up prefill ( #141156 )
...
* fix: two minor LLM changes to speed up prefill
- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed
* addressed PR comments
* fixed tests
* reduced scope of try/catch in LLM prompt
* addressed more PR comments
* fixed Anthropic test
* addressed another PR comment
* fixed remainder of tests
2025-03-30 13:30:40 -07:00
Ivan Lopez Hernandez
56cc4044e4
Fix a type error when using google-genai==1.7.0 ( #141431 )
...
* Fix parts
* Fix the type being sent to the SDK
* Revert changes to __init__
* Test fixes
* Bump version back to 1.7
2025-03-25 19:59:21 -07:00
SLaks
c8f839068c
Bump google-genai to 1.7.0 ( #140770 )
...
Gemini: Upgrade google-genai to support generating images
2025-03-24 10:52:16 -07:00
Mirko Liebender
d3b8dbb76c
Google gen ai fix for empty chat log messages ( #136019 ) ( #140315 )
...
* Google gen ai fix for empty chat log messages (#136019 )
* Google gen ai test for empty chat history fields (#136019 )
2025-03-23 22:27:35 -07:00
Ivan Lopez Hernandez
6a7fa3769d
Add Google Search tool in Google Generative AI ( #140772 )
...
* Added Google Search grounding
* Added testing
2025-03-23 22:23:52 -07:00
Allen Porter
f14b76c54b
Add Gemini/OpenAI token stats to the conversation trace ( #141118 )
...
* Add gemini token status to the conversation trace
* Add OpenAI Token Stats
* Revert input_tokens_details since its not in the openai version yet
* Fix ruff lint errors
2025-03-23 12:03:06 -04:00
Ivan Lopez Hernandez
d9cf2750d5
Ensure file is correctly uploaded by the GenAI SDK ( #140969 )
...
Opened the file outside of the SDK
2025-03-19 22:58:19 -07:00
Ivan Lopez Hernandez
2aa584ce39
Correctly retrieve only loaded Google Generative AI config_entries ( #139999 )
...
* Correctly retrieve only loaded config_entries
* Ruff
2025-03-06 13:17:33 -08:00
Ivan Lopez Hernandez
8e35783164
Trim the Schema allowed keys to match the Public Gemini API docs. ( #139876 )
...
* Trim the Schema allowed types to match the Public API docs, not the SDK types as those do not match
* Testing
2025-03-05 18:34:11 -08:00
Ivan Lopez Hernandez
4e8186491c
Fix Gemini Schema validation for #139416 ( #139478 )
...
Fixed Schema validation for issue #139477
2025-02-27 19:10:42 -08:00
SLaks
580c6f2684
Allow arbitrary Gemini attachments ( #138751 )
...
* Gemini: Allow arbitrary attachments
This lets me use Gemini to extract information from PDFs, HTML, or other files.
* Gemini: Only add deprecation warning when deprecated parameter has a value
* Gemini: Use Files.upload() for both images and other files
This simplifies the code.
Within the Google client, this takes a different codepath (it uploads images as a file instead of re-saving them into inline bytes). I think that's a feature (it's probably more efficient?).
* Gemini: Deduplicate filenames
2025-02-23 16:11:38 -08:00
Ivan Lopez Hernandez
3160b7baa0
Swap the Gemini SDK to the newly released Unified SDK ( #138246 )
...
* Swapped the old GenAI client with the newly realeased one
* Fixed the Generate Content Action, Config Flow loading and code cleanup
* Add a function to mask the issues with Tools which start with Hass
* Fix most tests
* google-genai==1.1.0
* fixes
* Fixed the remaining tests
* Adressed comments
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: tronikos <tronikos@users.noreply.github.com>
2025-02-21 22:41:05 -08:00
Paulus Schoutsen
35416189f2
Remove some unused tests from Google Generative AI ( #138249 )
...
* Remove some unused tests from Google Generative AI
* Remove unused snapshots
2025-02-10 18:25:34 -08:00
Paulus Schoutsen
3b871afcc4
Update default Google model to Gemini Flash 2.0 ( #137505 )
2025-02-05 23:27:13 -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
8ab6bec746
Migrate Google Gen AI to ChatSession ( #136779 )
...
* Migrate Google Gen AI to ChatSession
* Remove unused method
2025-01-29 10:42:39 -05:00
Joost Lekkerkerker
8db63adc11
Bump ruff to 0.9.1 ( #135197 )
2025-01-14 11:46:12 +01:00
Denis Shulyaka
a85ccb94e3
LLM Tool parameters check ( #123621 )
...
* LLM Tool parameters check
* fix tests
2024-09-08 18:42:51 -07:00
epenet
25d33e96cc
Add missing hass type hint in component tests (g) ( #124203 )
2024-08-19 00:29:26 -07:00
Paulus Schoutsen
aa6f0cd55a
Add CONTROL supported feature to Google conversation when API access ( #123046 )
...
* Add CONTROL supported feature to Google conversation when API access
* Better function name
* Handle entry update inline
* Reload instead of update
2024-08-02 23:16:30 -07:00
Denis Shulyaka
f6ad018f8f
Change enum type to string for Google Generative AI Conversation ( #123069 )
2024-08-02 23:14:24 -07:00
Allen Porter
8d0e998e54
Improve conversation agent tracing to help with eval and data collection ( #122542 )
2024-07-31 14:38:44 +02:00
Denis Shulyaka
975cfa6457
Fix gemini api format conversion ( #122403 )
...
* Fix gemini api format conversion
* add tests
* fix tests
* fix tests
* fix coverage
2024-07-22 17:56:13 -07:00
Denis Shulyaka
ac1ad9680b
Goofle Generative AI: Fix string format ( #122348 )
...
* Ignore format for string tool args
* Add tests
2024-07-21 21:54:31 -07:00
epenet
43e4223a8e
Improve type hints in google_generative_ai tests ( #121170 )
2024-07-04 02:09:34 -07:00
tronikos
8354aa434e
Remove a useless line in Google Generative AI test ( #120903 )
2024-07-01 17:48:39 +02:00
tronikos
5ce54c2174
Replace GoogleAPICallError with GoogleAPIError ( #120902 )
2024-07-01 17:48:12 +02:00
tronikos
d2a457c24f
Fix Google Generative AI: 400 Request contains an invalid argument ( #120741 )
2024-06-28 13:25:55 +02:00
Michael Hansen
1e16afb43b
Fix pylint error in Google generative AI tests ( #120371 )
...
* Fix pylint error
* Add second fix
2024-06-24 16:03:34 -05:00
Paulus Schoutsen
5c2db162c4
Remove "no API" prompt ( #120280 )
2024-06-24 08:57:59 +02:00
tronikos
ad1f0db5a4
Pass prompt as system_instruction for Gemini 1.5 models ( #120147 )
2024-06-22 12:35:48 +02:00
Sid
721b2c2ca8
Enable Ruff PT012 ( #113957 )
2024-06-08 17:59:08 +02:00
tronikos
f605c10f42
Properly handle escaped unicode characters passed to tools in Google Generative AI ( #119117 )
2024-06-08 09:02:00 +02:00
tronikos
f9dff1632e
Use ISO format when passing date to LLMs ( #118705 )
2024-06-03 19:48:50 +02:00
tronikos
a4612143e6
Use gemini-1.5-flash-latest in google_generative_ai_conversation.generate_content ( #118594 )
2024-05-31 21:57:14 -07:00
tronikos
7af469f81e
Strip Google AI text responses ( #118593 )
...
* Strip Google AI test responses
* strip each part
2024-05-31 21:55:52 -07:00
Paulus Schoutsen
f3b20d30ae
Add base prompt for LLMs ( #118592 )
2024-06-01 00:21:37 -04:00
Denis Shulyaka
bae96e7d36
Add Google Generative AI Conversation system prompt user_name
and llm_context
variables ( #118510 )
...
* Google Generative AI Conversation: Add variables to the system prompt
* User name and llm_context
* test for template variables
* test for template variables
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-31 15:28:44 -04:00
Paulus Schoutsen
6dd01dbff7
Rename llm.ToolContext to llm.LLMContext ( #118566 )
2024-05-31 11:11:24 -04:00
tronikos
272c51fb38
Fix unnecessary single quotes escaping in Google AI ( #118522 )
2024-05-30 19:56:06 -04:00
tronikos
aeee222df4
Default to gemini-1.5-flash-latest in Google Generative AI ( #118367 )
...
Default to flash
2024-05-29 08:04:47 -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
0cf574dc42
Update the recommended model for Google Gen AI ( #118323 )
2024-05-28 21:21:28 -04:00
tronikos
4f7a91828e
Mock llm prompts in test_default_prompt for Google Generative AI ( #118286 )
2024-05-28 00:40:26 -04:00