Commit Graph

30 Commits

Author SHA1 Message Date
Kian Jones
5b7dd15905 fix(core): use BYOK API keys for Google AI/Vertex LLM requests (#9439)
GoogleAIClient and GoogleVertexClient were hardcoding Letta's managed
credentials for all requests, ignoring user-provided BYOK API keys.
This meant Letta was paying Google API costs for BYOK users.

Add _get_client_async and update _get_client to check BYOK overrides
(via get_byok_overrides / get_byok_overrides_async) before falling back
to managed credentials, matching the pattern used by OpenAIClient and
AnthropicClient.

🤖 Generated with [Letta Code](https://letta.com)

Co-authored-by: Letta <noreply@letta.com>
2026-02-24 10:52:07 -08:00
github-actions[bot]
5fbf8f93e2 fix: add explicit timeouts to httpx clients to prevent ReadTimeout errors (#8538)
This commit addresses the httpx.ReadTimeout error detected in production
by adding explicit timeout configurations to several httpx client usages:

1. MCP SSE client: Pass mcp_connect_to_server_timeout (30s) to sse_client()
2. MCP StreamableHTTP client: Pass mcp_connect_to_server_timeout (30s) to streamablehttp_client()
3. OpenAI model list API: Add 30s timeout with 10s connect timeout
4. Google AI model list/details API: Add 30s timeout with 10s connect timeout

Previously, these httpx clients were created without explicit timeouts,
which could cause ReadTimeout errors when remote servers are slow to respond.

Fixes #8073

🤖 Generated with [Letta Code](https://letta.com)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: datadog-official[bot] <datadog-official[bot]@users.noreply.github.com>
Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
2026-01-19 15:54:38 -08:00
cthomas
9b5067bed9 fix: remove unused sync code (#8613)
* chore: remove unused sync code

* chore: remove deprecated sync Google AI functions

Removes unused sync functions that used httpx.Client (blocking):
- google_ai_get_model_details()
- google_ai_get_model_context_window()
- GoogleGeminiProvider.get_model_context_window()

All code now uses async versions with httpx.AsyncClient.

🐾 Generated with [Letta Code](https://letta.com)

Co-Authored-By: Letta <noreply@letta.com>

---------

Co-authored-by: Letta <noreply@letta.com>
2026-01-19 15:54:37 -08:00
Kevin Lin
33afb930fc fix: Google AI client logging as Vertex (#7337)
fix
2025-12-17 17:32:27 -08:00
cthomas
1c358c863e fix: google api sync request (#6292)
* fix: google api sync request

* remove unused function
2025-11-24 19:10:26 -08:00
Kian Jones
161c70f11c chore: add logger calls instead of prints (#5720)
add logger calls instead of prints
2025-10-24 15:14:21 -07:00
Andy Li
9ca1664ed8 feat: support for providers 2025-07-22 16:09:50 -07:00
Andy Li
343dbb5359 feat: timeout configuration for LLM clients + vertex (#2972) 2025-06-23 16:55:23 -07:00
cthomas
ced3cac558 fix: google clients thinking config (#2414)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-05-24 09:42:34 -07:00
cthomas
c8c8de0ad1 fix: set thinking budget for vertex tokens (#2367) 2025-05-23 09:07:32 -07:00
Matthew Zhou
0103ea6fcf feat: Asyncify model listing for Gemini (#2284) 2025-05-20 16:00:20 -07:00
Sarah Wooders
ed2ddad6a5 chore: add gemini + vertex to new agent loop (#2230) 2025-05-17 21:47:42 -07:00
jnjpng
05e1623389 feat: add endpoint to test connection to llm provider (#2032)
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-05-07 16:26:55 -07:00
Andy Li
abd3fb3204 chore: enable vertex experimental (#2053)
Co-authored-by: Caren Thomas <carenthomas@gmail.com>
2025-05-07 14:52:26 -07:00
cthomas
f5b224602e feat: add vertex to new agent loop (#2054) 2025-05-07 14:03:07 -07:00
cthomas
d8151d76e2 feat: add provider_category field to distinguish byok (#2038) 2025-05-06 17:31:36 -07:00
cthomas
65280d6f3c feat: add gemini to byok (#1993) 2025-05-02 14:01:23 -07:00
Andy Li
93cc510839 fix: handle malformed function calls in vertex (#1987) 2025-05-02 11:45:41 -07:00
Sarah Wooders
c6650de5fc fix: trigger gemini retry with ValueError (#1918) 2025-04-28 18:47:29 -07:00
Charles Packer
1568f6b5b4 fix: patch weird OSS / cloud drift by copying in OSS into cloud (#1904) 2025-04-26 23:21:00 -07:00
cthomas
7605675f23 feat: add llm config per request (#1866) 2025-04-23 16:37:05 -07:00
cthomas
167c6a1d2e fix: pydantic serializer warning datetime -> int (#1701) 2025-04-23 14:53:58 -07:00
cthomas
b0faff1ae9 fix: tool_name unreachable bug (#1803) 2025-04-19 16:29:14 -07:00
Charles Packer
79ffadaee1 fix: patch key error (unclear if we should fatally error here, or jus… (#1690) 2025-04-11 21:24:53 -07:00
Charles Packer
ee8e095b69 fix: patch gemini 2.5 pro (#1643)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-04-09 18:35:53 -07:00
Matthew Zhou
6a2312a02d chore: Inject LLM config directly to batch api request func (#1652) 2025-04-09 15:56:54 -07:00
Sarah Wooders
68b1ff85b1 feat: add gemini 2.5 to google vertex (#1590)
Co-authored-by: Charles Packer <packercharles@gmail.com>
2025-04-06 16:53:41 -07:00
Matthew Zhou
59ca61da58 feat: Simplify arguments for LLM clients (#1536) 2025-04-02 14:26:27 -07:00
cthomas
afbd8f8a52 fix: google model listing api (#1454) 2025-03-28 13:59:54 -07:00
cthomas
6a20f85189 feat: add new llm client framework and migrate google apis (#1209) 2025-03-07 16:34:06 -08:00