Commit Graph

245 Commits

Author SHA1 Message Date
Matthew Zhou
df5c997da0 feat: Enable dynamic toggling of tool choice in v3 agent loop for OpenAI [LET-4564] (#5042)
* Add subsequent flag

* Finish integrating constrained/unconstrained toggling on v3 agent loop

* Update tests to run on v3

* Run lint
2025-10-07 17:50:47 -07:00
Charles Packer
1c7448eb9d fix: patch remaining failing send_message CI tests (#4974)
* fix: patch failing summarizer tests for anthropic claude 3.5

* fix: carveout for gemini-2.5-flash because it doesn't do the send_message tool call

* fix: deprecate old gemini test now that model is unavailable

* fix: deprecate old gemini test now that model is unavailable

* fix: deprecate old gemini test now that model is unavailable

* fix: patch flash flakiness

* fix: relax the gemini 2.5 flash test

* fix: relax the gemini 2.5 flash test

* fix: relax again

* fix: another flash fix

* fix: relax gpt-4o-mini

* fix: swap 4o-mini for 4.1

* fix: drop 4o-mini
2025-10-07 17:50:46 -07:00
Charles Packer
9fd901c3a5 fix(core): patch default reasoning for letta-free on letta v1 (#4953)
* fix(core): patch default reasoning for letta-free on letta v1

* fix: patch (unrelated?) bug w/ missing required for empty tools like reset_research
2025-10-07 17:50:46 -07:00
Sarah Wooders
b5de42fefd fix: patch summarizers for integration_test_send_message.py (#4919)
* fix: integration_test_send_message.py

* patch summarizer

* remove print
2025-10-07 17:50:46 -07:00
Charles Packer
81bf132712 fix: disable reasoning toggle when agent type is letta agent v1 [PRO-1346] (#4946)
* fix: change the backend logic for the reasoning toggle to be different for v1 vs old agent types, also change the frontend to disable toggling unless it's a toggle-able model

* fix: add more logic to when the reasoning switch is enabled or disabled

* fix: safety net in the backend to set config when undefined

* fix: disable prefix fill, it's a bug
2025-10-07 17:50:46 -07:00
Charles Packer
8da15aaf08 fix(core): patch issue where LLM may generate a 'noop' call [PRO-1340] (#4944)
fix(core): patch issue where LLM may generate a 'noop' call
2025-10-07 17:50:46 -07:00
Matthew Zhou
b0bc04fec7 fix: Patch batch routes (#4916)
Patch batch routes
2025-10-07 17:50:46 -07:00
Charles Packer
a4041879a4 feat: add new agent loop (squash rebase of OSS PR) (#4815)
* feat: squash rebase of OSS PR

* fix: revert changes that weren't on manual rebase

* fix: caught another one

* fix: disable force

* chore: drop print

* fix: just stage-api && just publish-api

* fix: make agent_type consistently an arg in the client

* fix: patch multi-modal support

* chore: put in todo stub

* fix: disable hardcoding for tests

* fix: patch validate agent sync (#4882)

patch validate agent sync

* fix: strip bad merge diff

* fix: revert unrelated diff

* fix: react_v2 naming -> letta_v1 naming

* fix: strip bad merge

---------

Co-authored-by: Kevin Lin <klin5061@gmail.com>
2025-10-07 17:50:45 -07:00
Charles Packer
9edc7f4d64 feat: add OpenRouterProvider (#4848)
* feat: init add of openrouter provider, doesn't work bc no key pass and no header pass

* fix: working
2025-10-07 17:50:45 -07:00
Kian Jones
b8e9a80d93 merge this (#4759)
* wait I forgot to comit locally

* cp the entire core directory and then rm the .git subdir
2025-09-17 15:47:40 -07:00
Kian Jones
22f70ca07c chore: officially migrate to submodule (#4502)
* remove apps/core and apps/fern

* fix precommit

* add submodule updates in workflows

* submodule

* remove core tests

* update core revision

* Add submodules: true to all GitHub workflows

- Ensure all workflows can access git submodules
- Add submodules support to deployment, test, and CI workflows
- Fix YAML syntax issues in workflow files

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* remove core-lint

* upgrade core with latest main of oss

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-09-09 12:45:53 -07:00
Matthew Zhou
0eed3722cc feat: Robustify openai embedding [LET-4256] (#4478)
* Robustify embedding

* Remove unecessary imports

* Add test embeddings
2025-09-08 17:18:54 -07:00
jnjpng
12d8242d94 fix: retry on 500 and 503 for gemini [LET-4185]
* handle 500 and 503

* timeout

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-09-03 14:02:58 -07:00
cthomas
93ef177ab6 feat: always default to openai client in llm client factory [LET-4176] (#4377)
feat: always default to openai client in llm client factory
2025-09-03 09:40:59 -07:00
jnjpng
cfe47489d8 fix: clean property schema reference
fix

Co-authored-by: Letta Bot <noreply@letta.com>
2025-09-03 08:42:46 -07:00
Charles Packer
1ae0ab1790 fix: properly throw context window exceeded error on the new style of… [LET-4179] (#4380)
fix: properly throw context window exceeded error on the new style of context window overflow from gpt-5
2025-09-02 22:20:46 -07:00
jnjpng
a9e20097bd fix: mcp tool schema formatting for anthropic streaming [LET-4165]
* fix

* update commnet

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-09-02 20:44:43 -07:00
Charles Packer
264171f327 fix: patch streaming hidden reasoning event [LET-4167] (#4367)
* fix: patch streaming hidden reasoning event

* fix: patch reasoning_effort not getting passed to openai
2025-09-02 16:21:18 -07:00
Charles Packer
a696d9e3d5 fix: various fixes to make gpt-5 work better [LET-4138] (#4344)
* fix: patch gpt-5 compat

* feat: add verbosity level dropdown selector to llm config panel in ade

* fix: patch duplicated logic

* fix: make default verbosity None, just stage just publish

* fix: missing files
2025-09-02 10:30:25 -07:00
cthomas
9b315e9f54 feat: support filtering out approval messages for anthropic api (#4342) 2025-09-01 21:39:50 -07:00
cthomas
1edcc13778 feat: support filtering out messages when converting to openai dict (#4337)
* feat: support filtering out messages when converting to openai dict

* fix imports
2025-09-01 12:48:45 -07:00
Charles Packer
904bd2ba54 fix(core): init attempt at patching the extended thinking bug (#4331)
* fix(core): init attempt at patching the extended thinking bug

* fix: refactor, fix in a different way be merging instead of dropping, seems to be working

* chore: cleanup

* fix: patch the test - with the new native thinking behavior, anthropic native reasoning does not trigger properly post tool-call

* fix: another attempt

* fix: tests passing locally

* fix: another patch to tests

* fix: pathc more tests

* fix: try turning on the interleave-thinking beta header

* fix: patch test

* fix: add new tests to be more robust

* fix: patch the prompt, now it works more reliably

* fix: typo
2025-09-01 11:09:02 -07:00
jnjpng
c9c9e727b8 fix: retry on MALFORMED_FUNCTION_CALL for gemini [LET-4089]
---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-09-01 07:26:13 -07:00
Charles Packer
5f9210b808 fix(core): update default value [LET-4117] (#4321)
* fix(core): update default value

* fix: just stage just publish

* fix(core): temporary hardcoding of the anthropic max tokens

* fix(core): patch the gemini
2025-08-29 16:42:19 -07:00
Kian Jones
fecf6decfb chore: migrate to ruff (#4305)
* base requirements

* autofix

* Configure ruff for Python linting and formatting

- Set up minimal ruff configuration with basic checks (E, W, F, I)
- Add temporary ignores for common issues during migration
- Configure pre-commit hooks to use ruff with pass_filenames
- This enables gradual migration from black to ruff

* Delete sdj

* autofixed only

* migrate lint action

* more autofixed

* more fixes

* change precommit

* try changing the hook

* try this stuff
2025-08-29 11:11:19 -07:00
cthomas
89932ff90c feat: clean up legacy deepseek api call logic [LET-4087] (#4275)
feat: clean up legacy deepseek api call logic

Co-authored-by: Shubham Naik <shub@letta.com>
2025-08-28 11:12:28 -07:00
cthomas
3dd5747627 feat: move deepseek to new agent loop [LET-4081] (#4266)
* feat: move deepseek to new agent loop

* fixes
2025-08-27 16:50:34 -07:00
cthomas
5ade6bb236 fix: gemini flash integration test [LET-4060] (#4242)
* fix: gemini flash integration test

* also update google flash

* catch error in test

* revert test changes

* do try catch again

* remove try catch from streaming tests

* add try catch for summarize test also
2025-08-27 11:59:15 -07:00
cthomas
e190574a24 fix: hugging face embedding test [LET-4064] (#4246)
* fix: hugging face embedding test

* openapi sync
2025-08-27 11:58:03 -07:00
cthomas
11b447a02b feat: add gating to provider trace persistence in db (#4223)
* feat: make provider trace fetch result nullable

* feat: add flag for persisting provider trace to db
2025-08-26 15:58:26 -07:00
cthomas
e939407494 feat: add new llm client for deepseek [LET-4056] (#4219)
feat: add new llm client for deepseek
2025-08-26 15:14:09 -07:00
Kevin Lin
f71bbfb41e fix: patch anthropic send message tests (#4173)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-08-25 21:17:08 -07:00
Kevin Lin
23eb087759 fix: pass thinking to anthropic client (#4150) 2025-08-25 13:36:55 -07:00
jnjpng
74029acb0d fix: mcp schema generation and non-strict schema validation
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-22 15:45:33 -07:00
cthomas
269c536530 feat: add new groq llm client LET-3943 (#3937)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-08-21 13:13:25 -07:00
cthomas
c7b71ad8a9 feat: add new xai llm client (#3936) 2025-08-20 15:49:09 -07:00
cthomas
8e49d1a637 feat: improve error message for vertex response parsing (#4043) 2025-08-20 09:52:20 -07:00
jnjpng
0334fabc96 fix: include google_ai model endpoint type when setting reasoning tokens for google reasoning models
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-19 14:58:35 -07:00
cthomas
05e8507f94 feat: always override thinking budget for anthropic if not min (#4019) 2025-08-19 14:54:11 -07:00
jnjpng
fb474c4ac9 fix: require function declarations to be present for setting gemini tool config
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-19 12:56:31 -07:00
Sarah Wooders
8417a7f54d fix: patch openai byok (#3966) 2025-08-16 13:41:48 -07:00
Kevin Lin
a22d6b1315 feat: GPT-5 support (#3924)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-08-15 19:01:50 -07:00
Charles Packer
b0f335bb69 feat: fix anthropic stream buffering issue (was a missing beta header) (#3933) 2025-08-14 22:26:56 -07:00
cthomas
a5454d0909 fix: azure client imports (#3916) 2025-08-14 10:36:08 -07:00
cthomas
1ef6e1ee41 chore: delete legacy azure client (#3911) 2025-08-13 16:24:47 -07:00
cthomas
63738ffa0c chore: delete legacy bedrock client (#3912) 2025-08-13 16:20:48 -07:00
cthomas
cdd4815af4 chore: fully sunset cohere (#3910) 2025-08-13 16:05:06 -07:00
cthomas
2fbcbd765a chore: delete legacy anthropic client (#3908) 2025-08-13 15:53:27 -07:00
cthomas
48f78991a8 chore: clean up legacy bedrock path (#3906) 2025-08-13 15:26:27 -07:00
cthomas
edf39c565f chore: clean up legacy anthropic path (#3905) 2025-08-13 15:09:13 -07:00