Commit Graph

61 Commits

Author SHA1 Message Date
Sarah Wooders
eaf64fb510 fix: add LLMCallType enum and ensure call_type is set on all provider traces (#9258)
Co-authored-by: Letta <noreply@letta.com>
2026-02-24 10:52:06 -08:00
cthomas
00aa51927d fix: add missing call_type to more ProviderTrace callsites (#9266)
- letta_llm_request_adapter.py
- llm_api_tools.py

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

Co-authored-by: Letta <noreply@letta.com>
2026-02-24 10:52:06 -08:00
Ari Webb
9ce1249738 feat: openrouter byok (#9148)
* feat: openrouter byok

* new client is unnecessary

* revert json diffs
2026-01-29 12:44:04 -08:00
Kian Jones
9418ab9815 feat: add provider trace backend abstraction for multi-backend telemetry (#8814)
* feat: add provider trace backend abstraction for multi-backend telemetry

Introduces a pluggable backend system for provider traces:
- Base class with async/sync create and read interfaces
- PostgreSQL backend (existing behavior)
- ClickHouse backend (via OTEL instrumentation)
- Socket backend (writes to Unix socket for crouton sidecar)
- Factory for instantiating backends from config

Refactors TelemetryManager to use backends with support for:
- Multi-backend writes (concurrent via asyncio.gather)
- Primary backend for reads (first in config list)
- Graceful error handling per backend

Config: LETTA_TELEMETRY_PROVIDER_TRACE_BACKEND (comma-separated)
Example: "postgres,socket" for dual-write to Postgres and crouton

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

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

* feat: add protocol version to socket backend records

Adds PROTOCOL_VERSION constant to socket backend:
- Included in every telemetry record sent to crouton
- Must match ProtocolVersion in apps/crouton/main.go
- Enables crouton to detect and reject incompatible messages

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

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

* fix: remove organization_id from ProviderTraceCreate calls

The organization_id is now handled via the actor parameter in the
telemetry manager, not through ProviderTraceCreate schema. This fixes
validation errors after changing ProviderTraceCreate to inherit from
BaseProviderTrace which forbids extra fields.

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

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

* consolidate provider trace

* add clickhouse-connect to fix bug on main lmao

* auto generated sdk changes, and deployment details, and clikchouse prefix bug and added fields to runs trace return api

* auto generated sdk changes, and deployment details, and clikchouse prefix bug and added fields to runs trace return api

* consolidate provider trace

* consolidate provider trace bug fix

---------

Co-authored-by: Letta <noreply@letta.com>
2026-01-19 15:54:43 -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
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
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
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
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
cdd4815af4 chore: fully sunset cohere (#3910) 2025-08-13 16:05:06 -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
cthomas
15d8cc224c chore: clean up legacy azure path (#3904) 2025-08-13 14:59:15 -07:00
cthomas
c72eced19e chore: clean up legacy together path (#3903) 2025-08-13 14:48:24 -07:00
Matthew Zhou
76c9a58d6f feat: Support streaming and move endpoint for letta-free (#3780) 2025-08-06 15:33:35 -07:00
Andy Li
58081e3cea feat: support for providers 2025-07-22 16:09:50 -07:00
cthomas
e89164f71b feat: add bedrock to byok (#2891) 2025-06-18 16:03:28 -07:00
Andy Li
d2252f2953 feat: otel metrics and expanded collecting (#2647)
(passed tests in last run)
2025-06-05 17:20:14 -07:00
Andy Li
a78abc610e feat: track llm provider traces and tracking steps in async agent loop (#2219) 2025-05-19 15:50:56 -07:00
Charles Packer
fce28c73e3 fix: make togetherai nebius xai etc usable via the openaiprovider (#1981)
Co-authored-by: Kevin Lin <klin5061@gmail.com>
Co-authored-by: Kevin Lin <kl2806@columbia.edu>
2025-05-09 10:50:55 -07:00
cthomas
db6982a4bc feat: add provider_category field to distinguish byok (#2038) 2025-05-06 17:31:36 -07:00
cthomas
18db9b9509 feat: byok 2.0 (#1963) 2025-04-30 21:26:50 -07:00
cthomas
a9cd78cc3b fix: put inner thoughts in kwargs for anthropic (#1911) 2025-04-28 16:37:29 -07:00
cthomas
6609372676 feat: add letta-free endpoint constant (#1907) 2025-04-27 12:57:06 -07:00
Kevin Lin
87ff03ea03 fix: llm_config.put_inner_thoughts_in_kwargs = True (#1718) 2025-04-15 14:47:54 -07:00
Charles Packer
90f138c829 fix: patch grok-3 and grok-3-fast (skip reasoners for now) (#1703) 2025-04-14 12:55:20 -07:00
Matthew Zhou
2944e5206c fix: Fix streaming when there are child tool rules (#1638) 2025-04-08 19:06:39 -07:00
cthomas
311ee8af0a fix: summarization bug (#1476) 2025-03-31 13:32:00 -07:00
cthomas
1a5c08c62b test: add more robust multi-agent testing (#1444) 2025-03-28 14:21:54 -07:00
cthomas
3f1d9754fb chore: delete legacy google llm classes (#1402) 2025-03-25 14:05:49 -07:00
Charles Packer
8c98952b43 fix: patch summarizer bug for Anthropic (#1389) 2025-03-24 21:57:32 -07:00
cthomas
0e8c650c3f feat: add sonnet 3.7 support (#1302) 2025-03-24 16:36:16 -10:00
Matthew Zhou
c343abb75e chore: Various bug fixes (#1350)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
Co-authored-by: cthomas <caren@letta.com>
Co-authored-by: tarunkumark <tkksctwo@gmail.com>
Co-authored-by: Kevin Lin <klin5061@gmail.com>
Co-authored-by: Charles Packer <packercharles@gmail.com>
Co-authored-by: Miao <one.lemorage@gmail.com>
Co-authored-by: Krishnakumar R (KK) <65895020+kk-src@users.noreply.github.com>
Co-authored-by: Shubham Naik <shub@memgpt.ai>
Co-authored-by: Shubham Naik <shub@letta.com>
Co-authored-by: Will Sargent <will.sargent@gmail.com>
Co-authored-by: Shubham Naik <shubham.naik10@gmail.com>
Co-authored-by: mlong93 <35275280+mlong93@users.noreply.github.com>
Co-authored-by: Mindy Long <mindy@letta.com>
Co-authored-by: Stephan Fitzpatrick <stephan@knowsuchagency.com>
Co-authored-by: dboyliao <qmalliao@gmail.com>
Co-authored-by: Jyotirmaya Mahanta <jyotirmaya.mahanta@gmail.com>
Co-authored-by: Nicholas <102550462+ndisalvio3@users.noreply.github.com>
Co-authored-by: Tristan Morris <tristanbmorris@gmail.com>
Co-authored-by: Daniel Shin <88547237+kyuds@users.noreply.github.com>
Co-authored-by: Jindřich Šíma <67415662+JindrichSima@users.noreply.github.com>
Co-authored-by: Azin Asgarian <31479845+azinasg@users.noreply.github.com>
Co-authored-by: Connor Shorten <connorshorten300@gmail.com>
Co-authored-by: Lucas Mohallem Ferraz <ferraz.m.lucas@gmail.com>
Co-authored-by: kyuds <kyuds@everspin.co.kr>
2025-03-20 11:06:45 -07:00
Sarah Wooders
69bcc92ea7 fix: impose tool rules for anthropic (#1342) 2025-03-20 09:55:19 -07:00
cthomas
eddd167f43 chore: remove message.text property (#1253) 2025-03-12 10:58:31 -07:00
cthomas
84132d63f5 feat: log request data to otel (#1149) 2025-03-03 11:51:05 -08:00
Charles Packer
72dac99e92 feat: add xAI / Grok support (#1122)
Co-authored-by: Shubham Naik <shub@letta.com>
2025-02-26 11:02:42 -08:00
Matthew Zhou
afbb5af30b feat: Reverse inner thoughts for chat completions endpoint (#1081) 2025-02-20 12:30:34 -08:00
cthomas
c5985ed989 feat: add tracing (#883) 2025-02-18 19:03:31 -08:00
Kevin Lin
7173d5cefb feat: support deepseek models (#821)
Co-authored-by: Charles Packer <packercharles@gmail.com>
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
Co-authored-by: Shubham Naik <shub@memgpt.ai>
Co-authored-by: Shubham Naik <shub@letta.com>
2025-02-18 15:28:01 -08:00
Matthew Zhou
7dc98969a8 feat: Fix VLLM tool_choice (#1001) 2025-02-14 11:59:32 -08:00
Sarah Wooders
fd8933c447 feat: google vertex integration (#980) 2025-02-12 18:06:26 -08:00
Charles Packer
68f6239342 fix: add prefix fill support for Claude to try and boost haiku performance (#958) 2025-02-10 22:36:47 -08:00
Kevin Lin
e858871ccb fix: add max tokens (#795)
Co-authored-by: Charles Packer <packercharles@gmail.com>
2025-02-10 20:28:03 -08:00
Matthew Zhou
3a5be5aa38 fix: Disable default OpenAI retry behavior (#856) 2025-01-30 11:37:47 -08:00
cpacker
f3c512f4a1 fix: pass in a dummy key to openai python client if it doesn't exist at inference time 2025-01-29 17:55:54 -08:00
Matthew Zhou
9c5033e0bd feat: Use Async OpenAI client to prevent blocking server thread (#811) 2025-01-28 14:02:33 -08:00