letta-nightly 0.5.0.dev20241017104103__py3-none-any.whl → 0.5.0.dev20241019104023__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of letta-nightly might be problematic. Click here for more details.

Files changed (32) hide show
  1. letta/agent.py +29 -14
  2. letta/cli/cli.py +0 -2
  3. letta/client/client.py +41 -6
  4. letta/constants.py +1 -1
  5. letta/functions/helpers.py +3 -3
  6. letta/llm_api/anthropic.py +1 -1
  7. letta/llm_api/helpers.py +0 -15
  8. letta/llm_api/llm_api_tools.py +35 -47
  9. letta/llm_api/openai.py +18 -8
  10. letta/local_llm/llm_chat_completion_wrappers/chatml.py +1 -1
  11. letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py +1 -1
  12. letta/local_llm/utils.py +22 -6
  13. letta/main.py +0 -4
  14. letta/metadata.py +19 -6
  15. letta/o1_agent.py +87 -0
  16. letta/personas/examples/o1_persona.txt +5 -0
  17. letta/prompts/system/memgpt_modified_o1.txt +31 -0
  18. letta/schemas/agent.py +30 -2
  19. letta/schemas/llm_config.py +24 -1
  20. letta/schemas/memory.py +4 -0
  21. letta/schemas/openai/chat_completion_request.py +2 -2
  22. letta/schemas/tool.py +34 -2
  23. letta/server/rest_api/app.py +1 -0
  24. letta/server/rest_api/routers/v1/agents.py +14 -6
  25. letta/server/rest_api/routers/v1/tools.py +9 -6
  26. letta/server/server.py +63 -22
  27. letta/settings.py +3 -0
  28. {letta_nightly-0.5.0.dev20241017104103.dist-info → letta_nightly-0.5.0.dev20241019104023.dist-info}/METADATA +2 -2
  29. {letta_nightly-0.5.0.dev20241017104103.dist-info → letta_nightly-0.5.0.dev20241019104023.dist-info}/RECORD +32 -29
  30. {letta_nightly-0.5.0.dev20241017104103.dist-info → letta_nightly-0.5.0.dev20241019104023.dist-info}/LICENSE +0 -0
  31. {letta_nightly-0.5.0.dev20241017104103.dist-info → letta_nightly-0.5.0.dev20241019104023.dist-info}/WHEEL +0 -0
  32. {letta_nightly-0.5.0.dev20241017104103.dist-info → letta_nightly-0.5.0.dev20241019104023.dist-info}/entry_points.txt +0 -0
letta/server/server.py CHANGED
@@ -43,12 +43,12 @@ from letta.interface import CLIInterface # for printing to terminal
43
43
  from letta.log import get_logger
44
44
  from letta.memory import get_memory_functions
45
45
  from letta.metadata import Base, MetadataStore
46
+ from letta.o1_agent import O1Agent
46
47
  from letta.prompts import gpt_system
47
48
  from letta.providers import (
48
49
  AnthropicProvider,
49
50
  AzureProvider,
50
51
  GoogleAIProvider,
51
- GroqProvider,
52
52
  LettaProvider,
53
53
  OllamaProvider,
54
54
  OpenAIProvider,
@@ -249,6 +249,9 @@ class SyncServer(Server):
249
249
  # add global default tools (for admin)
250
250
  self.add_default_tools(module_name="base")
251
251
 
252
+ if settings.load_default_external_tools:
253
+ self.add_default_external_tools()
254
+
252
255
  # collect providers (always has Letta as a default)
253
256
  self._enabled_providers: List[Provider] = [LettaProvider()]
254
257
  if model_settings.openai_api_key:
@@ -303,12 +306,6 @@ class SyncServer(Server):
303
306
  base_url=model_settings.vllm_api_base,
304
307
  )
305
308
  )
306
- if model_settings.groq_api_key:
307
- self._enabled_providers.append(
308
- GroqProvider(
309
- api_key=model_settings.groq_api_key,
310
- )
311
- )
312
309
 
313
310
  def save_agents(self):
314
311
  """Saves all the agents that are in the in-memory object store"""
@@ -373,8 +370,10 @@ class SyncServer(Server):
373
370
 
374
371
  if agent_state.agent_type == AgentType.memgpt_agent:
375
372
  letta_agent = Agent(agent_state=agent_state, interface=interface, tools=tool_objs)
373
+ elif agent_state.agent_type == AgentType.o1_agent:
374
+ letta_agent = O1Agent(agent_state=agent_state, interface=interface, tools=tool_objs)
376
375
  else:
377
- raise NotImplementedError("Only base agents are supported as of right now!")
376
+ raise NotImplementedError("Not a supported agent type")
378
377
 
379
378
  # Add the agent to the in-memory store and return its reference
380
379
  logger.debug(f"Adding agent to the agent cache: user_id={user_id}, agent_id={agent_id}")
@@ -806,10 +805,18 @@ class SyncServer(Server):
806
805
  if request.name is None:
807
806
  request.name = create_random_username()
808
807
 
808
+ if request.agent_type is None:
809
+ request.agent_type = AgentType.memgpt_agent
810
+
809
811
  # system debug
810
812
  if request.system is None:
811
813
  # TODO: don't hardcode
812
- request.system = gpt_system.get_system_text("memgpt_chat")
814
+ if request.agent_type == AgentType.memgpt_agent:
815
+ request.system = gpt_system.get_system_text("memgpt_chat")
816
+ elif request.agent_type == AgentType.o1_agent:
817
+ request.system = gpt_system.get_system_text("memgpt_modified_o1")
818
+ else:
819
+ raise ValueError(f"Invalid agent type: {request.agent_type}")
813
820
 
814
821
  logger.debug(f"Attempting to find user: {user_id}")
815
822
  user = self.ms.get_user(user_id=user_id)
@@ -869,13 +876,22 @@ class SyncServer(Server):
869
876
  description=request.description,
870
877
  metadata_=request.metadata_,
871
878
  )
872
- agent = Agent(
873
- interface=interface,
874
- agent_state=agent_state,
875
- tools=tool_objs,
876
- # gpt-3.5-turbo tends to omit inner monologue, relax this requirement for now
877
- first_message_verify_mono=True if (llm_config.model is not None and "gpt-4" in llm_config.model) else False,
878
- )
879
+ if request.agent_type == AgentType.memgpt_agent:
880
+ agent = Agent(
881
+ interface=interface,
882
+ agent_state=agent_state,
883
+ tools=tool_objs,
884
+ # gpt-3.5-turbo tends to omit inner monologue, relax this requirement for now
885
+ first_message_verify_mono=True if (llm_config.model is not None and "gpt-4" in llm_config.model) else False,
886
+ )
887
+ elif request.agent_type == AgentType.o1_agent:
888
+ agent = O1Agent(
889
+ interface=interface,
890
+ agent_state=agent_state,
891
+ tools=tool_objs,
892
+ # gpt-3.5-turbo tends to omit inner monologue, relax this requirement for now
893
+ first_message_verify_mono=True if (llm_config.model is not None and "gpt-4" in llm_config.model) else False,
894
+ )
879
895
  # rebuilding agent memory on agent create in case shared memory blocks
880
896
  # were specified in the new agent's memory config. we're doing this for two reasons:
881
897
  # 1. if only the ID of the shared memory block was specified, we can fetch its most recent value
@@ -966,13 +982,24 @@ class SyncServer(Server):
966
982
  # TODO: probably reload the agent somehow?
967
983
  return letta_agent.agent_state
968
984
 
985
+ def get_tools_from_agent(self, agent_id: str, user_id: Optional[str]) -> List[Tool]:
986
+ """Get tools from an existing agent"""
987
+ if self.ms.get_user(user_id=user_id) is None:
988
+ raise ValueError(f"User user_id={user_id} does not exist")
989
+ if self.ms.get_agent(agent_id=agent_id) is None:
990
+ raise ValueError(f"Agent agent_id={agent_id} does not exist")
991
+
992
+ # Get the agent object (loaded in memory)
993
+ letta_agent = self._get_or_load_agent(agent_id=agent_id)
994
+ return letta_agent.tools
995
+
969
996
  def add_tool_to_agent(
970
997
  self,
971
998
  agent_id: str,
972
999
  tool_id: str,
973
1000
  user_id: str,
974
1001
  ):
975
- """Update the agents core memory block, return the new state"""
1002
+ """Add tools from an existing agent"""
976
1003
  if self.ms.get_user(user_id=user_id) is None:
977
1004
  raise ValueError(f"User user_id={user_id} does not exist")
978
1005
  if self.ms.get_agent(agent_id=agent_id) is None:
@@ -1011,7 +1038,7 @@ class SyncServer(Server):
1011
1038
  tool_id: str,
1012
1039
  user_id: str,
1013
1040
  ):
1014
- """Update the agents core memory block, return the new state"""
1041
+ """Remove tools from an existing agent"""
1015
1042
  if self.ms.get_user(user_id=user_id) is None:
1016
1043
  raise ValueError(f"User user_id={user_id} does not exist")
1017
1044
  if self.ms.get_agent(agent_id=agent_id) is None:
@@ -1453,7 +1480,6 @@ class SyncServer(Server):
1453
1480
  # Get the agent object (loaded in memory)
1454
1481
  letta_agent = self._get_or_load_agent(agent_id=agent_id)
1455
1482
  assert isinstance(letta_agent.memory, Memory)
1456
- assert isinstance(letta_agent.agent_state.memory, Memory)
1457
1483
  return letta_agent.agent_state.model_copy(deep=True)
1458
1484
 
1459
1485
  def get_server_config(self, include_defaults: bool = False) -> dict:
@@ -1955,9 +1981,9 @@ class SyncServer(Server):
1955
1981
  """Delete a tool"""
1956
1982
  self.ms.delete_tool(tool_id)
1957
1983
 
1958
- def list_tools(self, user_id: str) -> List[Tool]:
1984
+ def list_tools(self, cursor: Optional[str] = None, limit: Optional[int] = 50, user_id: Optional[str] = None) -> List[Tool]:
1959
1985
  """List tools available to user_id"""
1960
- tools = self.ms.list_tools(user_id)
1986
+ tools = self.ms.list_tools(cursor=cursor, limit=limit, user_id=user_id)
1961
1987
  return tools
1962
1988
 
1963
1989
  def add_default_tools(self, module_name="base", user_id: Optional[str] = None):
@@ -1969,11 +1995,13 @@ class SyncServer(Server):
1969
1995
  # Handle other general exceptions
1970
1996
  raise e
1971
1997
 
1998
+ functions_to_schema = []
1972
1999
  try:
1973
2000
  # Load the function set
1974
2001
  functions_to_schema = load_function_set(module)
1975
2002
  except ValueError as e:
1976
2003
  err = f"Error loading function set '{module_name}': {e}"
2004
+ warnings.warn(err)
1977
2005
 
1978
2006
  # create tool in db
1979
2007
  for name, schema in functions_to_schema.items():
@@ -1997,6 +2025,20 @@ class SyncServer(Server):
1997
2025
  update=True,
1998
2026
  )
1999
2027
 
2028
+ def add_default_external_tools(self, user_id: Optional[str] = None) -> bool:
2029
+ """Add default langchain tools. Return true if successful, false otherwise."""
2030
+ success = True
2031
+ tools = Tool.load_default_langchain_tools() + Tool.load_default_crewai_tools() + Tool.load_default_composio_tools()
2032
+ for tool in tools:
2033
+ try:
2034
+ self.ms.create_tool(tool)
2035
+ except Exception as e:
2036
+ warnings.warn(f"An error occurred while creating tool {tool}: {e}")
2037
+ warnings.warn(traceback.format_exc())
2038
+ success = False
2039
+
2040
+ return success
2041
+
2000
2042
  def add_default_blocks(self, user_id: str):
2001
2043
  from letta.utils import list_human_files, list_persona_files
2002
2044
 
@@ -2146,7 +2188,6 @@ class SyncServer(Server):
2146
2188
  user_id: str,
2147
2189
  agent_id: str,
2148
2190
  ) -> ContextWindowOverview:
2149
-
2150
2191
  # Get the current message
2151
2192
  letta_agent = self._get_or_load_agent(agent_id=agent_id)
2152
2193
  return letta_agent.get_context_window()
letta/settings.py CHANGED
@@ -65,6 +65,9 @@ class Settings(BaseSettings):
65
65
  pg_port: Optional[int] = None
66
66
  pg_uri: Optional[str] = None # option to specifiy full uri
67
67
 
68
+ # tools configuration
69
+ load_default_external_tools: Optional[bool] = None
70
+
68
71
  @property
69
72
  def letta_pg_uri(self) -> str:
70
73
  if self.pg_uri:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: letta-nightly
3
- Version: 0.5.0.dev20241017104103
3
+ Version: 0.5.0.dev20241019104023
4
4
  Summary: Create LLM agents with long-term memory and custom tools
5
5
  License: Apache License
6
6
  Author: Letta Team
@@ -24,7 +24,7 @@ Requires-Dist: alembic (>=1.13.3,<2.0.0)
24
24
  Requires-Dist: autoflake (>=2.3.0,<3.0.0) ; extra == "dev"
25
25
  Requires-Dist: black[jupyter] (>=24.2.0,<25.0.0) ; extra == "dev"
26
26
  Requires-Dist: chromadb (>=0.4.24,<0.5.0)
27
- Requires-Dist: composio-core (>=0.5.28,<0.6.0) ; extra == "external-tools"
27
+ Requires-Dist: composio-core (>=0.5.34,<0.6.0) ; extra == "external-tools"
28
28
  Requires-Dist: composio-langchain (>=0.5.28,<0.6.0) ; extra == "external-tools"
29
29
  Requires-Dist: crewai (>=0.41.1,<0.42.0) ; extra == "external-tools"
30
30
  Requires-Dist: crewai-tools (>=0.8.3,<0.9.0) ; extra == "external-tools"
@@ -1,6 +1,6 @@
1
1
  letta/__init__.py,sha256=cwav47GUQB8F9w0sHIDPe1nZMf_WL00KovBa9dZvSj4,996
2
2
  letta/__main__.py,sha256=6Hs2PV7EYc5Tid4g4OtcLXhqVHiNYTGzSBdoOnW2HXA,29
3
- letta/agent.py,sha256=KEokoQYsXGe3EKcesFcXXryU541-SImDIByukpVToco,72282
3
+ letta/agent.py,sha256=bXs6gulZAriEa8Bs9bLguN-T5hGUYe0h8FDPBl6Oz7U,72880
4
4
  letta/agent_store/chroma.py,sha256=upR5zGnGs6I6btulEYbiZdGG87BgKjxUJOQZ4Y-RQ_M,12492
5
5
  letta/agent_store/db.py,sha256=54EpxQYX0lAWxrsO0iUKw2vibF8-62Khczns2vxIK-0,23307
6
6
  letta/agent_store/lancedb.py,sha256=i63d4VZwj9UIOTNs5f0JZ_r5yZD-jKWz4FAH4RMpXOE,5104
@@ -10,16 +10,16 @@ letta/agent_store/storage.py,sha256=4gKvMRYBGm9cwyaDOzljxDKgqr4MxGXcC4yGhAdKcAA,
10
10
  letta/base.py,sha256=Ba-wt8p59bLmeUONkYSo5MhrkH-_HdT4zE1Y9MVGrSQ,83
11
11
  letta/benchmark/benchmark.py,sha256=ebvnwfp3yezaXOQyGXkYCDYpsmre-b9hvNtnyx4xkG0,3701
12
12
  letta/benchmark/constants.py,sha256=aXc5gdpMGJT327VuxsT5FngbCK2J41PQYeICBO7g_RE,536
13
- letta/cli/cli.py,sha256=XZDF7EfBYqdYEyDbENVp-tTyGcdvd9Wa1PNk70D-MGs,16195
13
+ letta/cli/cli.py,sha256=A5u87nx6g7n_KfIfU2nmjWd2Wq8f5YnCvSBH86bOk28,16149
14
14
  letta/cli/cli_config.py,sha256=G7QqPNTtlQ4TdrXZrrFFGblZEhnkyrqN1Cl5z415C-g,8689
15
15
  letta/cli/cli_load.py,sha256=x4L8s15GwIW13xrhKYFWHo_y-IVGtoPDHWWKcHDRP10,4587
16
16
  letta/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  letta/client/admin.py,sha256=itdH1dGL143Je5tkZl8dQ1PavjepClar3QasxpbX1cI,7397
18
- letta/client/client.py,sha256=GJYPBYWf2Ufchl1V-XUy8uMkRQBH52lvl4_E7dFOPLM,91720
18
+ letta/client/client.py,sha256=Alx_m9b4ZX_A3G7XtOa5Lgbxtf9PmDhCkUf3QDK0jS0,93065
19
19
  letta/client/streaming.py,sha256=bfWlUu7z7EoPfKxBqIarYxGKyrL7Pj79BlliToqcCgI,4592
20
20
  letta/client/utils.py,sha256=OJlAKWrldc4I6M1WpcTWNtPJ4wfxlzlZqWLfCozkFtI,2872
21
21
  letta/config.py,sha256=j2I90fOh9d9__kOYObwTDLbvVwYR50rIql5nzrvREKg,19161
22
- letta/constants.py,sha256=e70vmjxFxycAOhzV0NFl8aGEKqOAnOfUbUighl9OpSU,6574
22
+ letta/constants.py,sha256=8-ep8znrhMLFrfnK63G0Lq8FEyI5M9dXNApCkFfB3iI,6574
23
23
  letta/credentials.py,sha256=D9mlcPsdDWlIIXQQD8wSPE9M_QvsRrb0p3LB5i9OF5Q,5806
24
24
  letta/data_sources/connectors.py,sha256=qO81ASB6V-vDPthfHYtZiyqcQDQPTT0NuD8hVwC6xI0,9907
25
25
  letta/data_sources/connectors_helper.py,sha256=2TQjCt74fCgT5sw1AP8PalDEk06jPBbhrPG4HVr-WLs,3371
@@ -29,22 +29,22 @@ letta/functions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  letta/functions/function_sets/base.py,sha256=N4QmOjL6gDEyOg67ocF6zVKM-NquTo-yXG_T8r18buA,6440
30
30
  letta/functions/function_sets/extras.py,sha256=Jik3UiDqYTm4Lam1XPTvuVjvgUHwIAhopsnbmVhGMBg,4732
31
31
  letta/functions/functions.py,sha256=BqO4jq0dNS29niwlNd0jIs5QIRn_dNaiJIhaZokQjqM,3397
32
- letta/functions/helpers.py,sha256=dzeQ1hsxI-20QcVzkS8y55aCJw3iGbtm4oqBobb_tIM,9876
32
+ letta/functions/helpers.py,sha256=ypcf-BR-D99V8Zn6gwfNbUtxNcHawzElcQuiZrt3IGI,9899
33
33
  letta/functions/schema_generator.py,sha256=OBJnix2BpDJ3GAqlfLYrQLWWbh-imhy4ah0buXm64gU,6559
34
34
  letta/humans/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
35
  letta/humans/examples/basic.txt,sha256=Lcp8YESTWvOJgO4Yf_yyQmgo5bKakeB1nIVrwEGG6PA,17
36
36
  letta/humans/examples/cs_phd.txt,sha256=9C9ZAV_VuG7GB31ksy3-_NAyk8rjE6YtVOkhp08k1xw,297
37
37
  letta/interface.py,sha256=QI4hFP0WrNsgM5qX6TbnhH1ZZxsLYr5DaccuxpEQ8S4,12768
38
38
  letta/llm_api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
- letta/llm_api/anthropic.py,sha256=bAb9PVrpYjo2QN51_SJbW7Vry2_Sf55B05UoruHXb7A,12932
39
+ letta/llm_api/anthropic.py,sha256=DTBYPvByj-mfbrkZeAa4PjVEI8gg0p_v15a2h_I-Rqo,12883
40
40
  letta/llm_api/azure_openai.py,sha256=C-fuuholudcLJDWjqnXJwpXsfmGWfNugEVWyj6YCrpg,4572
41
41
  letta/llm_api/azure_openai_constants.py,sha256=oXtKrgBFHf744gyt5l1thILXgyi8NDNUrKEa2GGGpjw,278
42
42
  letta/llm_api/cohere.py,sha256=vDRd-SUGp1t_JUIdwC3RkIhwMl0OY7n-tAU9uPORYkY,14826
43
43
  letta/llm_api/google_ai.py,sha256=3xZ074nSOCC22c15yerA5ngWzh0ex4wxeI-6faNbHPE,17708
44
- letta/llm_api/helpers.py,sha256=LjUtCjvPzSP3-3Ak0J--2RqUXOO6Of8287mm1L1LAMU,9549
45
- letta/llm_api/llm_api_tools.py,sha256=Z3eiYUtvZKBVBcmKI2l4qWkKM4hgvLN9Y1aSxXc7y-k,15344
44
+ letta/llm_api/helpers.py,sha256=8aG6LzB0T3NFlnab-RR2tj0ARUTMBHSd0icCur5-RCk,8813
45
+ letta/llm_api/llm_api_tools.py,sha256=GEBO7Dlt7xtAQud1sVsigKZKPpLOZOt2IWL8LwcNV4o,14869
46
46
  letta/llm_api/mistral.py,sha256=fHdfD9ug-rQIk2qn8tRKay1U6w9maF11ryhKi91FfXM,1593
47
- letta/llm_api/openai.py,sha256=EXpktSI_TYjsCDEXBxdNXsY5uE9Rzb7BPF1F6cz8bkg,21689
47
+ letta/llm_api/openai.py,sha256=er_cmGWeiMQsfFEXzG0DZhn8-Ftkh2q3nxtszXYRsbw,22195
48
48
  letta/local_llm/README.md,sha256=hFJyw5B0TU2jrh9nb0zGZMgdH-Ei1dSRfhvPQG_NSoU,168
49
49
  letta/local_llm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
50
  letta/local_llm/chat_completion_proxy.py,sha256=SiohxsjGTku4vOryOZx7I0t0xoO_sUuhXgoe62fKq3c,12995
@@ -61,8 +61,8 @@ letta/local_llm/llamacpp/api.py,sha256=EZYyZwJ2m544XeEru_qLnJZgXBXNzdrQiA-clbGCh
61
61
  letta/local_llm/llamacpp/settings.py,sha256=1b-k-nZnoNxcDs_S1JGukelLuHDbkwjvwM-GzhcXCj0,507
62
62
  letta/local_llm/llm_chat_completion_wrappers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
63
63
  letta/local_llm/llm_chat_completion_wrappers/airoboros.py,sha256=28bMI7STGMmi203BGnv5qu5WGyJveRNYjdzFcn2jwDM,19199
64
- letta/local_llm/llm_chat_completion_wrappers/chatml.py,sha256=Dea9crmL9rX79ojXEv9fmf6GHCHDTgwBOsPAoyttsUA,21097
65
- letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py,sha256=0ZRWCy_TtxNGWXXZUbrdI43BY3c-GICUee-Y9UokECk,19708
64
+ letta/local_llm/llm_chat_completion_wrappers/chatml.py,sha256=Y1NqrenhBHE4nAdBzwm6SYVfPUZV3ie2FmuwQzOTaTw,21082
65
+ letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py,sha256=ls6OsGMDlsC_l9HoTIgMv6c8LAuE3XjJWuz6kZpz33s,19693
66
66
  letta/local_llm/llm_chat_completion_wrappers/dolphin.py,sha256=7agV-_Ioshsfjuy3VXCB5dfA32zp7u697dQSn6m3dK4,10156
67
67
  letta/local_llm/llm_chat_completion_wrappers/llama3.py,sha256=9cqi-5vibaaCxzBrkVS8lPHPpBi7ZBv3DC6M3ne7ivM,15841
68
68
  letta/local_llm/llm_chat_completion_wrappers/simple_summary_wrapper.py,sha256=xWr-nn-OAriLQ_PnbxloEbdyN4jJNiwhRwGZmzMyGsc,6201
@@ -76,16 +76,17 @@ letta/local_llm/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
76
76
  letta/local_llm/settings/deterministic_mirostat.py,sha256=kgRikcxYHfIbPFydHW6W7IO9jmp6NeA7JNAhnI3DPsc,1221
77
77
  letta/local_llm/settings/settings.py,sha256=ZAbzDpu2WsBXjVGXJ-TKUpS99VTI__3EoZml9KqYef0,2971
78
78
  letta/local_llm/settings/simple.py,sha256=HAO2jBJ_hJCEsXWIJcD0sckR0tI0zs3x2CPdf6ORQLs,719
79
- letta/local_llm/utils.py,sha256=DTv8S0lIpFBZlY6fjprtAU3n06eOPDKT6EXwnOgexLo,11363
79
+ letta/local_llm/utils.py,sha256=fDBoEGKc1SdhbvwqkQ6hRk2I7VCW3Rzurq81QdbCb7s,12174
80
80
  letta/local_llm/vllm/api.py,sha256=2kAGZjc_GH9ILJnVRq-45yfsfKELVfbC9VEl_cIC6vg,2590
81
81
  letta/local_llm/webui/api.py,sha256=kkxncdCFq1vjgvaHOoQ__j7rcDPgC1F64KcEm94Y6Rs,2639
82
82
  letta/local_llm/webui/legacy_api.py,sha256=k3H3y4qp2Fs-XmP24iSIEyvq6wjWFWBzklY3-wRAJNI,2335
83
83
  letta/local_llm/webui/legacy_settings.py,sha256=BLmd3TSx5StnY3ibjwaxYATPt_Lvq-o1rlcc_-Q1JcU,538
84
84
  letta/local_llm/webui/settings.py,sha256=gmLHfiOl1u4JmlAZU2d2O8YKF9lafdakyjwR_ftVPh8,552
85
85
  letta/log.py,sha256=QHquDnL7oUAvdKlAwUlCK9zXKDMUjrU9WA0bxnMsP0Y,2101
86
- letta/main.py,sha256=islRBrAi7huz6i4fE0GYbGmTyTQdc3DjVOpywKx0UH8,18974
86
+ letta/main.py,sha256=yHgM1lltQZvbE8k0QDQMmVyJiWEj07ZTOYIBHDxE_DQ,18709
87
87
  letta/memory.py,sha256=6q1x3-PY-PeXzAt6hvP-UF1ajvroPZ7XW-5nLy-JhMo,17657
88
- letta/metadata.py,sha256=CyoitCNZo-OfyQUbe9BS3B-97Zyr1RltEpiv02vmJ84,36687
88
+ letta/metadata.py,sha256=HIzNn9A28iD3d5Utrey8Z8CQ4KHmaD1iib2a_blLvds,37174
89
+ letta/o1_agent.py,sha256=0jospImZUKhuQZ0cop0INj8xI6cxhxNffGA8iloHyfU,3114
89
90
  letta/openai_backcompat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
91
  letta/openai_backcompat/openai_object.py,sha256=Y1ZS1sATP60qxJiOsjOP3NbwSzuzvkNAvb3DeuhM5Uk,13490
91
92
  letta/persistence_manager.py,sha256=LlLgEDpSafCPAiyKmuq0NvVAnfBkZo6TWbGIKYQjQBs,5200
@@ -94,6 +95,7 @@ letta/personas/examples/anna_pa.txt,sha256=zgiNdSNhy1HQy58cF_6RFPzcg2i37F9v38YuL
94
95
  letta/personas/examples/google_search_persona.txt,sha256=RyObU80MIk2oeJJDWOK1aX5pHOtbHSSjIrbUpxov240,1194
95
96
  letta/personas/examples/memgpt_doc.txt,sha256=_McafHuYkJYAnBFwvu_LVEaSEQGbs0flCgJIIJYlZgc,425
96
97
  letta/personas/examples/memgpt_starter.txt,sha256=x-fEozRrfUVlCJUEjkwHDCGeBb2z50d0jd6QF78SHKQ,160
98
+ letta/personas/examples/o1_persona.txt,sha256=VKSDXuMaiOg-fnaiMFnEauYy85q88LJKW0y8N7V5j3g,339
97
99
  letta/personas/examples/sam.txt,sha256=V1-3-x9gud_opkeNL3XPXyCyJySCp4sYi-XTFD26gnc,1223
98
100
  letta/personas/examples/sam_pov.txt,sha256=NUZOfkz91aBwnv2M3iDsPZYf8MlaGF0zQB0nFOUC56k,1171
99
101
  letta/personas/examples/sam_simple_pov_gpt35.txt,sha256=vP6R5GxPeO0QuMartRs3DBfSs1LFWW8CHNqo7II0BuA,1053
@@ -109,9 +111,10 @@ letta/prompts/system/memgpt_doc.txt,sha256=AsT55NOORoH-K-p0fxklrDRZ3qHs4MIKMuR-M
109
111
  letta/prompts/system/memgpt_gpt35_extralong.txt,sha256=FheNhYoIzNz6qnJKhVquZVSMj3HduC48reFaX7Pf7ig,5046
110
112
  letta/prompts/system/memgpt_intuitive_knowledge.txt,sha256=sA7c3urYqREVnSBI81nTGImXAekqC0Fxc7RojFqud1g,2966
111
113
  letta/prompts/system/memgpt_modified_chat.txt,sha256=HOaPVurEftD8KsuwsclDgE2afIfklMjxhuSO96q1-6I,4656
114
+ letta/prompts/system/memgpt_modified_o1.txt,sha256=AxxYVjYLZwpZ6yfifh1SuPtwlJGWTcTVzw53QbkN-Ao,5492
112
115
  letta/providers.py,sha256=tGnji2OlZSo5fgRaLiFaopqiyhKGOt5akngSjjM5RSI,19637
113
116
  letta/pytest.ini,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
- letta/schemas/agent.py,sha256=565kf-OHpV-VsN8nGqrJsUyCOBEYw2rl_RRggWj0Gzw,6371
117
+ letta/schemas/agent.py,sha256=e69lAKJQYtx92w8tM9sdLdv1hDqZ_0V_qiUiQyI-uks,7138
115
118
  letta/schemas/api_key.py,sha256=u07yzzMn-hBAHZIIKbWY16KsgiFjSNR8lAghpMUo3_4,682
116
119
  letta/schemas/block.py,sha256=1_GwFtfykloYU4Mp2DV3-DqkvsKo79Mu3LAzVYOgMzk,3998
117
120
  letta/schemas/embedding_config.py,sha256=1kD6NpiXeH4roVumxqDAKk7xt8SpXGWNhZs_XXUSlEU,2855
@@ -123,10 +126,10 @@ letta/schemas/letta_base.py,sha256=4QXFgyjCHqIagi8B6_4nmqb9eoJ52Y6aCxBxQpGX48M,2
123
126
  letta/schemas/letta_message.py,sha256=Slgxa59qZfdvqXuCVHOt03u-7JL456ZY-WLaK5UYYKU,6234
124
127
  letta/schemas/letta_request.py,sha256=_oiDshc_AoFWIfXRk2VX5-AxO5vDlyN-9r-gnyLj_30,1890
125
128
  letta/schemas/letta_response.py,sha256=_UJoO3UtC3F5DtQCHzdiGM1SHNPYPKvopIWqg8t5YZw,1564
126
- letta/schemas/llm_config.py,sha256=PFL4ui2twmYMCs8Dnbx8ss0uHTiJktmLVeeHPVliRuw,2949
127
- letta/schemas/memory.py,sha256=COVipr9VPqbIz4QQ9kdlrylgVMx37odc0Sctjt4IZb4,11348
129
+ letta/schemas/llm_config.py,sha256=eFA48vKBTO70qaob8pak2CWOH7TCQeqWuClkMBc2vbY,4172
130
+ letta/schemas/memory.py,sha256=rBbfCps6Oi1p3eYDx8_bY34PQGXx69-pha0Uj4B9678,11650
128
131
  letta/schemas/message.py,sha256=X0adFviO6sbobFns30M0Ym6DChRDVThaA82gqbzw3Jg,33531
129
- letta/schemas/openai/chat_completion_request.py,sha256=Fa7xnSnG7WUQounJhnDu0fTSxoR6xOAh2bODuqmfypI,3345
132
+ letta/schemas/openai/chat_completion_request.py,sha256=AOIwgbN3CZKVqkuXeMHeSa53u4h0wVq69t3T_LJ0vIE,3389
130
133
  letta/schemas/openai/chat_completion_response.py,sha256=05FRfm1EsVivyeWo2aoJk34h3W4pAb4lBCPn1eujjcw,3916
131
134
  letta/schemas/openai/chat_completions.py,sha256=V0ZPIIk-ds3O6MAkNHMz8zh1hqMFSPrTcYr88WDYzWE,3588
132
135
  letta/schemas/openai/embedding_response.py,sha256=WKIZpXab1Av7v6sxKG8feW3ZtpQUNosmLVSuhXYa_xU,357
@@ -134,7 +137,7 @@ letta/schemas/openai/openai.py,sha256=Hilo5BiLAGabzxCwnwfzK5QrWqwYD8epaEKFa4Pwnd
134
137
  letta/schemas/organization.py,sha256=JSc3hLl0IO_c9iOqf367sU5tJ0Dx_kPzbokCEg0eS4g,601
135
138
  letta/schemas/passage.py,sha256=eYQMxD_XjHAi72jmqcGBU4wM4VZtSU0XK8uhQxxN3Ug,3563
136
139
  letta/schemas/source.py,sha256=hB4Ai6Nj8dFdbxv5_Qaf4uN_cmdGmnzgc-4QnHXcV3o,2562
137
- letta/schemas/tool.py,sha256=_q5bg0hwVKPlx_-IPjW8qsojMnhAWrpUDCEXF1zMBPk,9031
140
+ letta/schemas/tool.py,sha256=m8jWIsPUhekoQcjX7U_Y5vwhhQqSKn748RcXNXRiLGg,10329
138
141
  letta/schemas/usage.py,sha256=lvn1ooHwLEdv6gwQpw5PBUbcwn_gwdT6HA-fCiix6sY,817
139
142
  letta/schemas/user.py,sha256=D7DiPzieXZIHOLInJdYZlHjKOy2bl7KxGCesNk0yf5E,1003
140
143
  letta/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -144,7 +147,7 @@ letta/server/rest_api/admin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMp
144
147
  letta/server/rest_api/admin/agents.py,sha256=cFNDU4Z8wGpcWXuo5aBgX6CcxLzPpTFYnTIaiF-3qvw,564
145
148
  letta/server/rest_api/admin/tools.py,sha256=HdXR_MRWkh3zMtb96Eaomp4rReNm3DirnXCNqAD7tNU,3093
146
149
  letta/server/rest_api/admin/users.py,sha256=IIec8G2yxVZtSo8dYrQPktVj8XIsZMptxigxmgULKO8,3480
147
- letta/server/rest_api/app.py,sha256=EJD3eGBAr_u6S7Ohjwrw6XuxKhci0tD-Wf5ccU_QDl8,6187
150
+ letta/server/rest_api/app.py,sha256=JNmDnvp9fP--hJPtPpEWgQT-14O1YOceZbWELr2vedA,6207
148
151
  letta/server/rest_api/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
149
152
  letta/server/rest_api/auth/index.py,sha256=fQBGyVylGSRfEMLQ17cZzrHd5Y1xiVylvPqH5Rl-lXQ,1378
150
153
  letta/server/rest_api/auth_token.py,sha256=725EFEIiNj4dh70hrSd94UysmFD8vcJLrTRfNHkzxDo,774
@@ -158,18 +161,18 @@ letta/server/rest_api/routers/openai/assistants/threads.py,sha256=WXVGBaBvSNPB7Z
158
161
  letta/server/rest_api/routers/openai/chat_completions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
159
162
  letta/server/rest_api/routers/openai/chat_completions/chat_completions.py,sha256=-uye6cm4SnoQGwxhr1N1FrSXOlnO2Hvbfj6k8JSc45k,4918
160
163
  letta/server/rest_api/routers/v1/__init__.py,sha256=sqlVZa-u9DJwdRsp0_8YUGrac9DHguIB4wETlEDRylA,666
161
- letta/server/rest_api/routers/v1/agents.py,sha256=beY1D78uIK9Dk_A6BdPiHtXFAoZh8Th3jEekR1MxsSk,24595
164
+ letta/server/rest_api/routers/v1/agents.py,sha256=Yoktva6_pSCRztUdZNZXdbnrp9L5OKnP5E1mZkbUAGw,25066
162
165
  letta/server/rest_api/routers/v1/blocks.py,sha256=0WekE_yBD2U3jYgPxI0DCFjACWavCAlvm_Ybw5SZBnw,2583
163
166
  letta/server/rest_api/routers/v1/health.py,sha256=pKCuVESlVOhGIb4VC4K-H82eZqfghmT6kvj2iOkkKuc,401
164
167
  letta/server/rest_api/routers/v1/jobs.py,sha256=a-j0v-5A0un0pVCOHpfeWnzpOWkVDQO6ti42k_qAlZY,2272
165
168
  letta/server/rest_api/routers/v1/llms.py,sha256=TcyvSx6MEM3je5F4DysL7ligmssL_pFlJaaO4uL95VY,877
166
169
  letta/server/rest_api/routers/v1/organizations.py,sha256=i3S9E1hu2Zj9g0pRv6wnQhz1VJ_RMIHCrGzgwY-Wj3Y,1945
167
170
  letta/server/rest_api/routers/v1/sources.py,sha256=eY_pk9jRL2Y9yIZdsTjH6EuKsfH1neaTU15MKNL0dvw,8749
168
- letta/server/rest_api/routers/v1/tools.py,sha256=YiGlgAaV1p0sbrf-Z7ZR6mQ4HZlKWN9KKcu53TBM1O0,3471
171
+ letta/server/rest_api/routers/v1/tools.py,sha256=vxE4b5juoiBiNWmplktuv6GEgenCkKBRov-t6usUJ9A,3665
169
172
  letta/server/rest_api/routers/v1/users.py,sha256=Y2rDvHOG1B5FLSOjutY3R22vt48IngbZ-9h8CohG5rc,3378
170
173
  letta/server/rest_api/static_files.py,sha256=NG8sN4Z5EJ8JVQdj19tkFa9iQ1kBPTab9f_CUxd_u4Q,3143
171
174
  letta/server/rest_api/utils.py,sha256=Fc2ZGKzLaBa2sEtSTVjJ8D5M0xIwsWC0CVAOIJaD3rY,2176
172
- letta/server/server.py,sha256=6A_q-ES_OX7UgssX1VLPXBoDG56HEJ95luuZpZZ5_Z0,89258
175
+ letta/server/server.py,sha256=fEPkRE1R1jBu6S_pMYi2NmoTOkDwa6NjOnNnJVmm5Cw,91491
173
176
  letta/server/startup.sh,sha256=jeGV7B_PS0hS-tT6o6GpACrUbV9WV1NI2L9aLoUDDtc,311
174
177
  letta/server/static_files/assets/index-3ab03d5b.css,sha256=OrA9W4iKJ5h2Wlr7GwdAT4wow0CM8hVit1yOxEL49Qw,54295
175
178
  letta/server/static_files/assets/index-d6b3669a.js,sha256=i1nHReU0RPnj-a5W0nNPV4Y9bQ0FOW0ztjMz8a2AE-Y,1821560
@@ -182,12 +185,12 @@ letta/server/ws_api/example_client.py,sha256=95AA5UFgTlNJ0FUQkLxli8dKNx48MNm3eWG
182
185
  letta/server/ws_api/interface.py,sha256=TWl9vkcMCnLsUtgsuENZ-ku2oMDA-OUTzLh_yNRoMa4,4120
183
186
  letta/server/ws_api/protocol.py,sha256=M_-gM5iuDBwa1cuN2IGNCG5GxMJwU2d3XW93XALv9s8,1821
184
187
  letta/server/ws_api/server.py,sha256=C2Kv48PCwl46DQFb0ZP30s86KJLQ6dZk2AhWQEZn9pY,6004
185
- letta/settings.py,sha256=6VWC3vtTa8vqj6dqos4p_xHTMJNJS_8LRGJmqvaU1-o,3219
188
+ letta/settings.py,sha256=gNdH-Ty6f-Nfz2j9ZMZFRQHac2KzgsxLZNt5l_TiAyo,3301
186
189
  letta/streaming_interface.py,sha256=_FPUWy58j50evHcpXyd7zB1wWqeCc71NCFeWh_TBvnw,15736
187
190
  letta/system.py,sha256=buKYPqG5n2x41hVmWpu6JUpyd7vTWED9Km2_M7dLrvk,6960
188
191
  letta/utils.py,sha256=neUs7mxNfndzRL5XUxerr8Lic6w7qnyyvf8FBwMnyWw,30852
189
- letta_nightly-0.5.0.dev20241017104103.dist-info/LICENSE,sha256=mExtuZ_GYJgDEI38GWdiEYZizZS4KkVt2SF1g_GPNhI,10759
190
- letta_nightly-0.5.0.dev20241017104103.dist-info/METADATA,sha256=ao_TDJ7MVdrPJgEM-M6cTi0eUHgMlMq7Fyx2O1F7R_w,10620
191
- letta_nightly-0.5.0.dev20241017104103.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
192
- letta_nightly-0.5.0.dev20241017104103.dist-info/entry_points.txt,sha256=2zdiyGNEZGV5oYBuS-y2nAAgjDgcC9yM_mHJBFSRt5U,40
193
- letta_nightly-0.5.0.dev20241017104103.dist-info/RECORD,,
192
+ letta_nightly-0.5.0.dev20241019104023.dist-info/LICENSE,sha256=mExtuZ_GYJgDEI38GWdiEYZizZS4KkVt2SF1g_GPNhI,10759
193
+ letta_nightly-0.5.0.dev20241019104023.dist-info/METADATA,sha256=NO5Tf5FycuYWmQyKH0UcDvJ7IzdbJcjl50nUu0W6hBQ,10620
194
+ letta_nightly-0.5.0.dev20241019104023.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
195
+ letta_nightly-0.5.0.dev20241019104023.dist-info/entry_points.txt,sha256=2zdiyGNEZGV5oYBuS-y2nAAgjDgcC9yM_mHJBFSRt5U,40
196
+ letta_nightly-0.5.0.dev20241019104023.dist-info/RECORD,,