Releases: letta-ai/letta
0.3.12
🐳 Cleaned up workflow for creating a MemGPT service with docker compose up
:
- Reverse proxy added so you can open the dev portal at
http://memgpt.localhost
- Docker development with
docker compose -f dev-compose.yaml up --build
(built from local code) - Postgres data mounted to
.pgdata
folder - OpenAI keys passed to server via environment variables (in
compose.yaml
)
🪲 Bugfixes for Groq API and server
What's Changed
- fix: Clean up and simplify docker entrypoint (#1235) by @norton120 in #1259
- fix: add DB prefill for default user, preset, humans, and persona for server by @sarahwooders in #1273
- feat: misc server updates by @cpacker in #1275
- feat: use background tasks for processing uploaded files to REST API by @sarahwooders in #1263
- fix: misc bugs by @cpacker in #1276
- chore: run autoflake + isort by @cpacker in #1279
- feat: disallow creation of tools with the same name by @sarahwooders in #1285
- feat: add workflow to build + test docker container by @sarahwooders in #1278
- fix: hardcoded stop tokens to patch Groq API's new 4 stop token limit for
/completions
by @cpacker in #1288
New Contributors
- @norton120 made their first contribution in #1235
Full Changelog: 0.3.11...0.3.12
0.3.11
🚰 We now support streaming in the CLI when using OpenAI (+ OpenAI proxy) endpoints! You can turn on streaming mode with memgpt run --stream
What's Changed
- fix: remove default persona/human from
memgpt configure
and add functionality for modifying humans/presets more clearly by @sarahwooders in #1253 - fix: update
ChatCompletionResponse
to makemodel
field optional by @sarahwooders in #1258 - fix: Fixed NameError: name 'attach' is not defined by @taddeusb90 in #1255
- fix: push/pull container from
memgpt/memgpt-server:latest
by @sarahwooders in #1267 - fix: remove message UTC validation temporarily to fix dev portal + add
-d
flag todocker compose up
for tests by @sarahwooders in #1268 - chore: bump version by @sarahwooders in #1269
- feat: add streaming support for OpenAI-compatible endpoints by @cpacker in #1262
New Contributors
- @taddeusb90 made their first contribution in #1255
Full Changelog: 0.3.10...0.3.11
0.3.10
We added support for Anthropic, Cohere, and Groq!
What's Changed
- feat: Anthropic Claude API support by @cpacker in #1239
- feat: add Cohere API support (Command-R+) by @cpacker in #1246
- fix: errors on getting default config values on fresh install by @sarahwooders in #1249
- fix: convert
Message
objects to dicts for local LLMs by @sarahwooders in #1251
Full Changelog: 0.3.9...0.3.10
0.3.9
This PR add Google AI Gemini Pro support for MemGPT, as well as Python 3.12 support.
Using MemGPT with Gemini
Setting up Gemini with MemGPT configure:
> memgpt configure
Loading config from /Users/loaner/.memgpt/config
? Select LLM inference provider: google_ai
? Enter your Google AI (Gemini) API key (see https://aistudio.google.com/app/a
pikey): *********
? Enter your Google AI (Gemini) service endpoint (see https://ai.google.dev/api/rest): generativelanguage
? Select default model: gemini-pro
Got context window 30720 for model gemini-pro (from Google API)
? Select your model's context window (see https://cloud.google.com/vertex-ai/generative-ai/docs/learn/model-versioning#gemini-model-versions): 30720
? Select embedding provider: openai
? Select default preset: memgpt_chat
? Select default persona: sam_pov
? Select default human: basic
? Select storage backend for archival data: chroma
? Select chroma backend: persistent
? Select storage backend for recall data: sqlite
📖 Saving config to /Users/loaner/.memgpt/config
What's Changed
- fix: Update test_server.py by @cpacker in #1218
- feat: add dev portal by @cpacker in #1191
- fix: upgrade
llama-index-embeddings-huggingface
package and fix bug with local embeddings by @sarahwooders in #1222 - fix: patch
/rethink
by @cpacker in #1227 - chore: upgrade dependencies and make package compatible with Python 3.12 by @sarahwooders in #1228
- fix: delete mapping between sources and agents if agent is deleted by @sarahwooders in #1229
- feat: REST API support for tool creation by @sarahwooders in #1219
- fix: patched pop by @cpacker in #1232
- fix: remove tools tests by @sarahwooders in #1236
- feat: add Google AI Gemini Pro support by @cpacker in #1209
- chore: bump version to 0.3.9 by @sarahwooders in #1238
Full Changelog: 0.3.8...0.3.9
0.3.8
This release introduces initial support for running a MemGPT server with Docker Compose, and bugfixes for storing embeddings and message timestamps.
What's Changed
- fix: fix broken example after modifying client to return pydantic objects by @sarahwooders in #1174
- feat: migrate all calls to
datetime.now()
todatetime.now(UTC)
by @cpacker in #1176 - fix: additions to utc patch (#1176) by @cpacker in #1177
- feat: add description to source by @sarahwooders in #1175
- fix: patch vllm/local endpoint model GET bug by @cpacker in #1179
- fix: update print statement on server by @cpacker in #1180
- feat: return
num_passages
inSource.metadata_
from REST list sources endpoint by @sarahwooders in #1178 - feat: create docker-image.yml by @sarahwooders in #1181
- feat: create memgpt server with postgres DB with
docker compose up
by @sarahwooders in #1183 - feat: client tests for
docker compose
server by @sarahwooders in #1189 - fix: patch out-of-sync / missing tzinfo timestamps coming back from API server by @cpacker in #1182
- feat: move quickstart to use inference.memgpt.ai by @sarahwooders in #1190
- feat: Add nested KV and doc QA experiment scripts for paper by @sarahwooders in #990
- feat: only use OpenAI for
tests.yaml
if env variable is set by @sarahwooders in #1196 - fix: fix env variable for postgres in
compose.yaml
by @sarahwooders in #1204 - feat: added groq support via local option w/ auth by @cpacker in #1203
- fix: duplicate passage across/within files causing issues in insert_many with postgres by @nikhil-pandey in #1205
- fix: skip empty string passages returned by llama index parsing by @sarahwooders in #1208
- fix: Handle list[str] in function schema(continuation) by @palandovalex in #1110
- chore: Update policies by @cpacker in #686
- fix: Update memgpt_chat.txt and remove all spelling and grammar errors. by @Maximilian-Winter in #1210
- fix: patch tests.yml by @cpacker in #1213
- fix: Fixing the last issue with memgpt_chat.txt by @Maximilian-Winter in #1214
- fix: fallback to
MemGPTConfig
URI for postgres if no environment variables by @sarahwooders in #1216 - chore: bump version to 0.3.8 by @sarahwooders in #1217
New Contributors
- @nikhil-pandey made their first contribution in #1205
- @palandovalex made their first contribution in #1110
Full Changelog: 0.3.7...0.3.8
0.3.7
🦂 Bugfix release
What's Changed
- feat: add example for google search custom function by @sarahwooders in #1133
- feat: add in-context message field ('in_context') to message dicts returned by
GET /api/agents/{a_id}/messages
by @cpacker in #1135 - docs: update connector documentation by @sarahwooders in #1136
- feat: enable tool selection via agent creation POST by @cpacker in #1137
- feat: add (dummy) create tool route by @cpacker in #1139
- feat: expose cursor based retrieval of previous messages by @goetzrobin in #1140
- fix: fix key typo when getting archival memory response by @goetzrobin in #1141
- fix: correct dummy tools api call response by @goetzrobin in #1142
- fix: patch agent creation bug that resurfaced by @cpacker in #1143
- fix: fix existing agent listing for CLI by @sarahwooders in #1146
- docs: Update api.md by @serkanh in #1158
- feat: implement remaining
Admin
routes in client and add tests by @sarahwooders in #1157 - fix: (1) refactor in
Agent.step()
to fix out-of-order timestamps, (2) bug fixes with usage ofpreset/human
vs filename values by @cpacker in #1145 - feat: during agent creation - create new presets in the DB if the preset had overrides by @cpacker in #1159
- feat: Allow timestamp in
send_message
POST by @cpacker in #1161 - fix: fix azure credential configuration by @xavieryao in #1152
- feat: add remaining Python client support for REST API routes + tests by @sarahwooders in #1160
- feat: return source metadata with
list sources
route by @cpacker in #1164 - feat: add google search example by @sarahwooders in #1167
- fix: write temporary file for REST upload file endpoint + return number added passages/documents by @sarahwooders in #1169
- feat: add
Preset
routes to API + patch fortool_call_id
max length OpenAI error by @cpacker in #1165 - feat: move
source_id
to path variable by @cpacker in #1171 - feat: return information on attached agents when getting list of sources from API by @cpacker in #1172
- chore: bump version to
0.3.7
by @cpacker in #1173
New Contributors
- @serkanh made their first contribution in #1158
- @xavieryao made their first contribution in #1152
Full Changelog: 0.3.6...0.3.7
0.3.6
🐜 bugfix release
What's Changed
- fix: patch API key GET error + allow empty body on create user POST by @cpacker in #1113
- fix: silence pydantic warning about protected namespace by @cpacker in #1116
- feat: add metadata to GET tools route by @cpacker in #1117
- feat: add archival memory GET, POST, DEL to REST API by @cpacker in #1119
- feat: Add data sources to REST API by @sarahwooders in #1118
- feat: pass message UUIDs during message streaming (POST SSE
send_message
) by @cpacker in #1120 - fix: small typing fixes by @cpacker in #1123
- fix: fix bugs for retrieving archival memory via REST API + tests by @sarahwooders in #1122
- feat: add a
last_run
field to the agent state model by @cpacker in #1124 - fix: patch bug where the contents of the persona/human files were not gett… by @cpacker in #1126
- feat: add memory data and tool data to list_agents function /
GET /api/agents
response by @cpacker in #1125 - feat: add list of sources (in dict format) to response object by @cpacker in #1128
- fix: patch messages route + unify all the api/agents API routes to use {agent_id} via path parameter by @cpacker in #1129
- fix: use bookworm version of python image to resolve sqllite/chroma i… by @goetzrobin in #1130
- feat: enable adding presets via the CLI by @sarahwooders in #1131
- fix: modify metadata presets functions by @sarahwooders in #1132
- feat: added
persona/human_name
fields toPreset
by @cpacker in #1134 - chore: bump version to
0.3.6
by @cpacker in #1114
Full Changelog: 0.3.5...0.3.6
0.3.5
🦗 Bugfix release
What's Changed
- fix: Pass empty list for functions==None by @sarahwooders in #983
- feat: Update REST API routes GET information for agents/humans/personas and store humans/personas in DB by @sarahwooders in #1074
- feat: return
server.server_llm_config
information for REST endpoint by @sarahwooders in #1083 - fix: patch AutoGen integration for
0.3.5
+ add AutoGen integration tests by @cpacker in #1081 - fix: huggingface embeddings dependency by @thefux in #1087
- feat: Add more tests to
test_metadata.py
by @sarahwooders in #1082 - ci: skip autogen test if no oai secret by @cpacker in #1095
- ci: patch embedding issue in tests by @cpacker in #1096
- feat: move agent_id from query param to path variable and remove unus… by @goetzrobin in #1094
- fix: return uuid stored in config by @goetzrobin in #1092
- feat: create humans personas by @goetzrobin in #1093
- feat: isolate test config from main config by @tombedor in #1063
- feat: one time pass of
autoflake
+ addautoflake
to dev extras by @cpacker in #1097 - fix: move to
TokenTextSplitter
for more reliable chunking by @sarahwooders in #1098 - chore: only install
llama-index-embeddings-huggingface
for extraslocal
by @sarahwooders in #1099 - chore: bump version to
0.3.5
by @cpacker in #1091 - fix: bug with storing embedding info in metadata store by @sarahwooders in #1101
- feat: add
GET
REST API route for listing tools by @cpacker in #1100
New Contributors
Full Changelog: 0.3.4...0.3.5
0.3.4
🐝 Bugfix release
What's Changed
- feat: refactor loading and attaching data sources, and upgrade to
llama-index==0.10.6
by @sarahwooders in #1016 - feat: minor updates to chatui by @cpacker in #1029
- fix: removed superfluous create_agent calls by @cpacker in #1000
- fix: Corrected response_model usage by @GlitchStorm in #1036
- fix: patch
/rewrite
by @cpacker in #1034 - feat: Create
RESTClient
andAdmin
client for interacting with server from python by @sarahwooders in #1033 - fix: Fix
memgpt benchmark
command by @sarahwooders in #1041 - docs: Update README.md by @cpacker in #1045
- feat: add dockerfile for memgpt server by @goetzrobin in #1049
- feat: Add data loading and attaching to server by @sarahwooders in #1051
- fix: Patch typo in base.py by @cpacker in #1050
- feat: allow admin to access all API routes & add back auth by @goetzrobin in #1047
- feat: add basic https support to
memgpt server
for development where https is needed by @cpacker in #1052 - feat: add auth to chatui by @goetzrobin in #1065
- docs: Update server process / API documentation landing page by @cpacker in #1067
- fix: set default, all 0 anon UUID by @tombedor in #1071
- fix: configure black by @tombedor in #1072
- fix: bug with loading directories by @sarahwooders in #1073
- feat: tests and bug fixes
AgentState.state
by @cpacker in #1058 - chore: bump version to 0.3.4 by @cpacker in #1075
New Contributors
- @GlitchStorm made their first contribution in #1036
Full Changelog: 0.3.3...0.3.4
0.3.3
Minor bugfix release
What's Changed
- feat: Partial support for OpenAI-compatible assistant API by @sarahwooders in #838
- fix: de-duplicate IDs before inserting into ChromaDB by @sarahwooders in #1001
- refactor: Add OpenAI assistants API endpoints to
memgpt server
by @sarahwooders in #1006 - docs: Update OpenAI assistants example to use
memgpt server
by @sarahwooders in #1012 - refactor: store presets in database via metadata store by @sarahwooders in #1013
- fix: decrease number of saves to MemGPTConfig by @tombedor in #943
- chore: remove
python-box
from deps by @cpacker in #1019 - feat: Add API keys to
memgpt server
REST API by @cpacker in #1014 - ci: run quickstart before memgpt server by @cpacker in #1021
- chore: bump version 0.3.3 by @sarahwooders in #1015
- feat: add password protection to
/admin
routes on server by @cpacker in #1025 - docs: cleanup API page by @cpacker in #1026
- ci: Update rdme-openapi.yml by @cpacker in #1027
Full Changelog: 0.3.2...0.3.3