letta-nightly 0.5.2.dev20241112104101__py3-none-any.whl → 0.5.2.dev20241113234401__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.
- letta/agent.py +4 -2
- letta/agent_store/db.py +2 -1
- letta/cli/cli.py +1 -0
- letta/client/client.py +19 -16
- letta/data_sources/connectors.py +5 -10
- letta/llm_api/google_ai.py +0 -2
- letta/llm_api/openai.py +1 -0
- letta/memory.py +10 -6
- letta/metadata.py +3 -165
- letta/orm/__init__.py +2 -0
- letta/orm/file.py +29 -0
- letta/orm/mixins.py +8 -0
- letta/orm/organization.py +4 -4
- letta/orm/source.py +51 -0
- letta/orm/tool.py +0 -1
- letta/orm/user.py +0 -2
- letta/providers.py +0 -1
- letta/schemas/file.py +5 -5
- letta/schemas/source.py +30 -24
- letta/server/rest_api/app.py +27 -0
- letta/server/rest_api/routers/v1/sources.py +15 -15
- letta/server/server.py +38 -65
- letta/services/organization_manager.py +12 -13
- letta/services/source_manager.py +145 -0
- {letta_nightly-0.5.2.dev20241112104101.dist-info → letta_nightly-0.5.2.dev20241113234401.dist-info}/METADATA +1 -1
- {letta_nightly-0.5.2.dev20241112104101.dist-info → letta_nightly-0.5.2.dev20241113234401.dist-info}/RECORD +29 -26
- {letta_nightly-0.5.2.dev20241112104101.dist-info → letta_nightly-0.5.2.dev20241113234401.dist-info}/LICENSE +0 -0
- {letta_nightly-0.5.2.dev20241112104101.dist-info → letta_nightly-0.5.2.dev20241113234401.dist-info}/WHEEL +0 -0
- {letta_nightly-0.5.2.dev20241112104101.dist-info → letta_nightly-0.5.2.dev20241113234401.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from letta.orm.errors import NoResultFound
|
|
4
|
+
from letta.orm.file import FileMetadata as FileMetadataModel
|
|
5
|
+
from letta.orm.source import Source as SourceModel
|
|
6
|
+
from letta.schemas.file import FileMetadata as PydanticFileMetadata
|
|
7
|
+
from letta.schemas.source import Source as PydanticSource
|
|
8
|
+
from letta.schemas.source import SourceUpdate
|
|
9
|
+
from letta.schemas.user import User as PydanticUser
|
|
10
|
+
from letta.utils import enforce_types, printd
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SourceManager:
|
|
14
|
+
"""Manager class to handle business logic related to Sources."""
|
|
15
|
+
|
|
16
|
+
def __init__(self):
|
|
17
|
+
from letta.server.server import db_context
|
|
18
|
+
|
|
19
|
+
self.session_maker = db_context
|
|
20
|
+
|
|
21
|
+
@enforce_types
|
|
22
|
+
def create_source(self, source: PydanticSource, actor: PydanticUser) -> PydanticSource:
|
|
23
|
+
"""Create a new source based on the PydanticSource schema."""
|
|
24
|
+
# Try getting the source first by id
|
|
25
|
+
db_source = self.get_source_by_id(source.id, actor=actor)
|
|
26
|
+
if db_source:
|
|
27
|
+
return db_source
|
|
28
|
+
else:
|
|
29
|
+
with self.session_maker() as session:
|
|
30
|
+
# Provide default embedding config if not given
|
|
31
|
+
source.organization_id = actor.organization_id
|
|
32
|
+
source = SourceModel(**source.model_dump(exclude_none=True))
|
|
33
|
+
source.create(session, actor=actor)
|
|
34
|
+
return source.to_pydantic()
|
|
35
|
+
|
|
36
|
+
@enforce_types
|
|
37
|
+
def update_source(self, source_id: str, source_update: SourceUpdate, actor: PydanticUser) -> PydanticSource:
|
|
38
|
+
"""Update a source by its ID with the given SourceUpdate object."""
|
|
39
|
+
with self.session_maker() as session:
|
|
40
|
+
source = SourceModel.read(db_session=session, identifier=source_id, actor=actor)
|
|
41
|
+
|
|
42
|
+
# get update dictionary
|
|
43
|
+
update_data = source_update.model_dump(exclude_unset=True, exclude_none=True)
|
|
44
|
+
# Remove redundant update fields
|
|
45
|
+
update_data = {key: value for key, value in update_data.items() if getattr(source, key) != value}
|
|
46
|
+
|
|
47
|
+
if update_data:
|
|
48
|
+
for key, value in update_data.items():
|
|
49
|
+
setattr(source, key, value)
|
|
50
|
+
source.update(db_session=session, actor=actor)
|
|
51
|
+
else:
|
|
52
|
+
printd(
|
|
53
|
+
f"`update_source` was called with user_id={actor.id}, organization_id={actor.organization_id}, name={source.name}, but found existing source with nothing to update."
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
return source.to_pydantic()
|
|
57
|
+
|
|
58
|
+
@enforce_types
|
|
59
|
+
def delete_source(self, source_id: str, actor: PydanticUser) -> PydanticSource:
|
|
60
|
+
"""Delete a source by its ID."""
|
|
61
|
+
with self.session_maker() as session:
|
|
62
|
+
source = SourceModel.read(db_session=session, identifier=source_id)
|
|
63
|
+
source.delete(db_session=session, actor=actor)
|
|
64
|
+
return source.to_pydantic()
|
|
65
|
+
|
|
66
|
+
@enforce_types
|
|
67
|
+
def list_sources(self, actor: PydanticUser, cursor: Optional[str] = None, limit: Optional[int] = 50) -> List[PydanticSource]:
|
|
68
|
+
"""List all sources with optional pagination."""
|
|
69
|
+
with self.session_maker() as session:
|
|
70
|
+
sources = SourceModel.list(
|
|
71
|
+
db_session=session,
|
|
72
|
+
cursor=cursor,
|
|
73
|
+
limit=limit,
|
|
74
|
+
organization_id=actor.organization_id,
|
|
75
|
+
)
|
|
76
|
+
return [source.to_pydantic() for source in sources]
|
|
77
|
+
|
|
78
|
+
# TODO: We make actor optional for now, but should most likely be enforced due to security reasons
|
|
79
|
+
@enforce_types
|
|
80
|
+
def get_source_by_id(self, source_id: str, actor: Optional[PydanticUser] = None) -> Optional[PydanticSource]:
|
|
81
|
+
"""Retrieve a source by its ID."""
|
|
82
|
+
with self.session_maker() as session:
|
|
83
|
+
try:
|
|
84
|
+
source = SourceModel.read(db_session=session, identifier=source_id, actor=actor)
|
|
85
|
+
return source.to_pydantic()
|
|
86
|
+
except NoResultFound:
|
|
87
|
+
return None
|
|
88
|
+
|
|
89
|
+
@enforce_types
|
|
90
|
+
def get_source_by_name(self, source_name: str, actor: PydanticUser) -> Optional[PydanticSource]:
|
|
91
|
+
"""Retrieve a source by its name."""
|
|
92
|
+
with self.session_maker() as session:
|
|
93
|
+
sources = SourceModel.list(
|
|
94
|
+
db_session=session,
|
|
95
|
+
name=source_name,
|
|
96
|
+
organization_id=actor.organization_id,
|
|
97
|
+
limit=1,
|
|
98
|
+
)
|
|
99
|
+
if not sources:
|
|
100
|
+
return None
|
|
101
|
+
else:
|
|
102
|
+
return sources[0].to_pydantic()
|
|
103
|
+
|
|
104
|
+
@enforce_types
|
|
105
|
+
def create_file(self, file_metadata: PydanticFileMetadata, actor: PydanticUser) -> PydanticFileMetadata:
|
|
106
|
+
"""Create a new file based on the PydanticFileMetadata schema."""
|
|
107
|
+
db_file = self.get_file_by_id(file_metadata.id, actor=actor)
|
|
108
|
+
if db_file:
|
|
109
|
+
return db_file
|
|
110
|
+
else:
|
|
111
|
+
with self.session_maker() as session:
|
|
112
|
+
file_metadata.organization_id = actor.organization_id
|
|
113
|
+
file_metadata = FileMetadataModel(**file_metadata.model_dump(exclude_none=True))
|
|
114
|
+
file_metadata.create(session, actor=actor)
|
|
115
|
+
return file_metadata.to_pydantic()
|
|
116
|
+
|
|
117
|
+
# TODO: We make actor optional for now, but should most likely be enforced due to security reasons
|
|
118
|
+
@enforce_types
|
|
119
|
+
def get_file_by_id(self, file_id: str, actor: Optional[PydanticUser] = None) -> Optional[PydanticFileMetadata]:
|
|
120
|
+
"""Retrieve a file by its ID."""
|
|
121
|
+
with self.session_maker() as session:
|
|
122
|
+
try:
|
|
123
|
+
file = FileMetadataModel.read(db_session=session, identifier=file_id, actor=actor)
|
|
124
|
+
return file.to_pydantic()
|
|
125
|
+
except NoResultFound:
|
|
126
|
+
return None
|
|
127
|
+
|
|
128
|
+
@enforce_types
|
|
129
|
+
def list_files(
|
|
130
|
+
self, source_id: str, actor: PydanticUser, cursor: Optional[str] = None, limit: Optional[int] = 50
|
|
131
|
+
) -> List[PydanticFileMetadata]:
|
|
132
|
+
"""List all files with optional pagination."""
|
|
133
|
+
with self.session_maker() as session:
|
|
134
|
+
files = FileMetadataModel.list(
|
|
135
|
+
db_session=session, cursor=cursor, limit=limit, organization_id=actor.organization_id, source_id=source_id
|
|
136
|
+
)
|
|
137
|
+
return [file.to_pydantic() for file in files]
|
|
138
|
+
|
|
139
|
+
@enforce_types
|
|
140
|
+
def delete_file(self, file_id: str, actor: PydanticUser) -> PydanticFileMetadata:
|
|
141
|
+
"""Delete a file by its ID."""
|
|
142
|
+
with self.session_maker() as session:
|
|
143
|
+
file = FileMetadataModel.read(db_session=session, identifier=file_id)
|
|
144
|
+
file.delete(db_session=session, actor=actor)
|
|
145
|
+
return file.to_pydantic()
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
letta/__init__.py,sha256=IMLtpH5HlbVUa1mmPpSyBpTZqVz1rsS7lbuqT7viBQ0,1014
|
|
2
2
|
letta/__main__.py,sha256=6Hs2PV7EYc5Tid4g4OtcLXhqVHiNYTGzSBdoOnW2HXA,29
|
|
3
|
-
letta/agent.py,sha256=
|
|
3
|
+
letta/agent.py,sha256=mQxkYsG80P_KCzXN6EDmwi6tiXebabHpcYsgs7ugWP0,76952
|
|
4
4
|
letta/agent_store/chroma.py,sha256=upR5zGnGs6I6btulEYbiZdGG87BgKjxUJOQZ4Y-RQ_M,12492
|
|
5
|
-
letta/agent_store/db.py,sha256=
|
|
5
|
+
letta/agent_store/db.py,sha256=9pIeakcRls0Fi3wO2b9Jg_Qw1IBJ-_GUSpE1z-upGS0,23425
|
|
6
6
|
letta/agent_store/lancedb.py,sha256=i63d4VZwj9UIOTNs5f0JZ_r5yZD-jKWz4FAH4RMpXOE,5104
|
|
7
7
|
letta/agent_store/milvus.py,sha256=xUu-D9a6N10MuGJ-R-QWR2IHX77ueqAp88tV4gg9B4M,8470
|
|
8
8
|
letta/agent_store/qdrant.py,sha256=6_33V-FEDpT9LG5zmr6-3y9slw1YFLswxpahiyMkvHA,7880
|
|
9
9
|
letta/agent_store/storage.py,sha256=4gKvMRYBGm9cwyaDOzljxDKgqr4MxGXcC4yGhAdKcAA,6693
|
|
10
10
|
letta/benchmark/benchmark.py,sha256=ebvnwfp3yezaXOQyGXkYCDYpsmre-b9hvNtnyx4xkG0,3701
|
|
11
11
|
letta/benchmark/constants.py,sha256=aXc5gdpMGJT327VuxsT5FngbCK2J41PQYeICBO7g_RE,536
|
|
12
|
-
letta/cli/cli.py,sha256=
|
|
12
|
+
letta/cli/cli.py,sha256=oREx2gmpFvw7CdmXjhzoj_4iypM27WAK5vePESIgcHo,16898
|
|
13
13
|
letta/cli/cli_config.py,sha256=D-CpSZI1cDvdSQr3-zhGuDrJnZo1Ko7bi_wuxcBxxqo,8555
|
|
14
14
|
letta/cli/cli_load.py,sha256=x4L8s15GwIW13xrhKYFWHo_y-IVGtoPDHWWKcHDRP10,4587
|
|
15
15
|
letta/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
letta/client/client.py,sha256=
|
|
16
|
+
letta/client/client.py,sha256=XR4VukYXnZ1LG5og_BP1_m_FWrjb6ESFFkT-gK6_-os,97885
|
|
17
17
|
letta/client/streaming.py,sha256=Hh5pjlyrdCuO2V75ZCxSSOCPd3BmHdKFGaIUJC6fBp0,4775
|
|
18
18
|
letta/client/utils.py,sha256=OJlAKWrldc4I6M1WpcTWNtPJ4wfxlzlZqWLfCozkFtI,2872
|
|
19
19
|
letta/config.py,sha256=eK-ip06ELHNYriInkgfidDvJxQ2tD1u49I-VLXB87nE,18929
|
|
20
20
|
letta/constants.py,sha256=c8pEfIhtpqFGunyzGObnfEeRJNkunfmq9Pfiau8YYfA,6544
|
|
21
21
|
letta/credentials.py,sha256=D9mlcPsdDWlIIXQQD8wSPE9M_QvsRrb0p3LB5i9OF5Q,5806
|
|
22
|
-
letta/data_sources/connectors.py,sha256=
|
|
22
|
+
letta/data_sources/connectors.py,sha256=5VKxfeV-QyUlK1wexLlpgar99dGm6PHxFaEbSeByo_U,9923
|
|
23
23
|
letta/data_sources/connectors_helper.py,sha256=2TQjCt74fCgT5sw1AP8PalDEk06jPBbhrPG4HVr-WLs,3371
|
|
24
24
|
letta/embeddings.py,sha256=qPt8kB-wmuRIg1py7DHnQGJpw3DmQHJ505FJvc0K6Yk,8873
|
|
25
25
|
letta/errors.py,sha256=cDOo4cSYL-LA0w0b0GdsxXd5k2I1LLOY8nhtXk9YqYs,2875
|
|
@@ -40,11 +40,11 @@ letta/llm_api/anthropic.py,sha256=GZFMAGgertU7GrGK_ahz051Ce0MHXqPzh8f7AlsPslg,12
|
|
|
40
40
|
letta/llm_api/azure_openai.py,sha256=Y1HKPog1XzM_f7ujUK_Gv2zQkoy5pU-1bKiUnvSxSrs,6297
|
|
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
|
-
letta/llm_api/google_ai.py,sha256=
|
|
43
|
+
letta/llm_api/google_ai.py,sha256=xKz9JDZs3m6yzSfcgCAAUD_rjI20BBIINoiSvlcnOw0,17621
|
|
44
44
|
letta/llm_api/helpers.py,sha256=KqkdjZWYghx4OPwLcHEC6ruc_z9DScbysw3VH4x9A0Q,9887
|
|
45
45
|
letta/llm_api/llm_api_tools.py,sha256=KFG2miI7KrDOIcOSgm2jwBIb3qvzYt2O_5UNjTbTsm8,14786
|
|
46
46
|
letta/llm_api/mistral.py,sha256=fHdfD9ug-rQIk2qn8tRKay1U6w9maF11ryhKi91FfXM,1593
|
|
47
|
-
letta/llm_api/openai.py,sha256=
|
|
47
|
+
letta/llm_api/openai.py,sha256=p1tKbfCfhWOLnx2u-Vt67rq12uVUbo_zyslHHlmuTyU,23845
|
|
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
|
|
@@ -84,22 +84,24 @@ letta/local_llm/webui/legacy_settings.py,sha256=BLmd3TSx5StnY3ibjwaxYATPt_Lvq-o1
|
|
|
84
84
|
letta/local_llm/webui/settings.py,sha256=gmLHfiOl1u4JmlAZU2d2O8YKF9lafdakyjwR_ftVPh8,552
|
|
85
85
|
letta/log.py,sha256=Oy5b71AXfrnQShxI_4ULo5U3kmZJG01bXbP_64Nr4Fk,2105
|
|
86
86
|
letta/main.py,sha256=h-qPQn_Ok5wf2cf54RFPfe8yp6sCmE-Kp9mBk_HZf7o,18797
|
|
87
|
-
letta/memory.py,sha256=
|
|
88
|
-
letta/metadata.py,sha256=
|
|
87
|
+
letta/memory.py,sha256=YupXOvzVJXH59RW4XWBrd7qMNEYaMbtWXCheKeWZwpU,17873
|
|
88
|
+
letta/metadata.py,sha256=xgwOPX_KQUl8OGxql2VAqe3ksg8EBD5gbctEDnM4RPk,22860
|
|
89
89
|
letta/o1_agent.py,sha256=LqATgTpkc02-nCH_F87EOvgxLjdjT9F07kdzj3zSdQg,3118
|
|
90
90
|
letta/openai_backcompat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
91
|
letta/openai_backcompat/openai_object.py,sha256=Y1ZS1sATP60qxJiOsjOP3NbwSzuzvkNAvb3DeuhM5Uk,13490
|
|
92
92
|
letta/orm/__all__.py,sha256=2gh2MZTkA3Hw67VWVKK3JIStJOqTeLdpCvYSVYNeEDA,692
|
|
93
|
-
letta/orm/__init__.py,sha256=
|
|
93
|
+
letta/orm/__init__.py,sha256=tp62sheGPGDmFHG1CBvYEnVenSj62cxWLaBMWK2NU80,220
|
|
94
94
|
letta/orm/agents_tags.py,sha256=Qa7Yt9imL8xbGP57fflccAMy7Z32CQiU_7eZKSSPngc,1119
|
|
95
95
|
letta/orm/base.py,sha256=K_LpNUURbsj44ycHbzvNXG_n8pBOjf1YvDaikIPDpQA,2716
|
|
96
96
|
letta/orm/enums.py,sha256=KfHcFt_fR6GUmSlmfsa-TetvmuRxGESNve8MStRYW64,145
|
|
97
97
|
letta/orm/errors.py,sha256=somsGtotFlb3SDM6tKdZ5TDGwEEP3ppx47ICAvNMnkg,225
|
|
98
|
-
letta/orm/
|
|
99
|
-
letta/orm/
|
|
98
|
+
letta/orm/file.py,sha256=FtfZlJLXfac4ntaw3kC0N9VRoD255m8EK4p-pC2lcHk,1519
|
|
99
|
+
letta/orm/mixins.py,sha256=w8ALpGlytx2TDOOBBkqNgZTCimUOibijL7EKKKLJcM8,943
|
|
100
|
+
letta/orm/organization.py,sha256=wp58JWdv3OGjv4nYVEdoF5ps8BmP25Yxq5yfdFkf9_s,1792
|
|
101
|
+
letta/orm/source.py,sha256=Ib0XHCMt345RjBSC30A398rZ21W5mA4PXX00XNXyd24,2021
|
|
100
102
|
letta/orm/sqlalchemy_base.py,sha256=QZ_b2jxNjXSvK-bJGxEHQiZqRn8tKNSuJRDorYCDCvE,7369
|
|
101
|
-
letta/orm/tool.py,sha256=
|
|
102
|
-
letta/orm/user.py,sha256
|
|
103
|
+
letta/orm/tool.py,sha256=d0GclU_7qg8Z6ZE6kkH1kmrUAMCiV-ZM8BGaT1mnBU4,2089
|
|
104
|
+
letta/orm/user.py,sha256=bB4qGIT-ZoECZeeVqG-z3Z7WFXGqpC-GPcoYQoJZOuc,1137
|
|
103
105
|
letta/persistence_manager.py,sha256=LlLgEDpSafCPAiyKmuq0NvVAnfBkZo6TWbGIKYQjQBs,5200
|
|
104
106
|
letta/personas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
105
107
|
letta/personas/examples/anna_pa.txt,sha256=zgiNdSNhy1HQy58cF_6RFPzcg2i37F9v38YuL1CW40A,1849
|
|
@@ -123,7 +125,7 @@ letta/prompts/system/memgpt_gpt35_extralong.txt,sha256=FheNhYoIzNz6qnJKhVquZVSMj
|
|
|
123
125
|
letta/prompts/system/memgpt_intuitive_knowledge.txt,sha256=sA7c3urYqREVnSBI81nTGImXAekqC0Fxc7RojFqud1g,2966
|
|
124
126
|
letta/prompts/system/memgpt_modified_chat.txt,sha256=HOaPVurEftD8KsuwsclDgE2afIfklMjxhuSO96q1-6I,4656
|
|
125
127
|
letta/prompts/system/memgpt_modified_o1.txt,sha256=AxxYVjYLZwpZ6yfifh1SuPtwlJGWTcTVzw53QbkN-Ao,5492
|
|
126
|
-
letta/providers.py,sha256=
|
|
128
|
+
letta/providers.py,sha256=miNxSXDMKDZqYjrYtE2N9ecw9ltccDXSJBlJqxOhEws,19611
|
|
127
129
|
letta/pytest.ini,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
128
130
|
letta/schemas/agent.py,sha256=f0khTBWIRGZva4_C15Nm_tkmn1cwaVQlWa7_7laRbEE,7866
|
|
129
131
|
letta/schemas/agents_tags.py,sha256=9DGr8fN2DHYdWvZ_qcXmrKI0w7YKCGz2lfEcrX2KAkI,1130
|
|
@@ -131,7 +133,7 @@ letta/schemas/api_key.py,sha256=u07yzzMn-hBAHZIIKbWY16KsgiFjSNR8lAghpMUo3_4,682
|
|
|
131
133
|
letta/schemas/block.py,sha256=gc7NOZbv4ig_6ZgJ8-I875QoHxXcbcQIG94Cnwlqu8M,3999
|
|
132
134
|
letta/schemas/embedding_config.py,sha256=1kD6NpiXeH4roVumxqDAKk7xt8SpXGWNhZs_XXUSlEU,2855
|
|
133
135
|
letta/schemas/enums.py,sha256=WfRYpLh_pD-VyhEnp3Y6pPfx063zq2o4jky6PulqO8w,629
|
|
134
|
-
letta/schemas/file.py,sha256=
|
|
136
|
+
letta/schemas/file.py,sha256=ChN2CWzLI2TT9WLItcfElEH0E8b7kzPylF2OQBr6Beg,1550
|
|
135
137
|
letta/schemas/health.py,sha256=zT6mYovvD17iJRuu2rcaQQzbEEYrkwvAE9TB7iU824c,139
|
|
136
138
|
letta/schemas/job.py,sha256=605TWjUdNy5Rgoc7en_DX3Giz-I7sVTXiSRZqxL__d8,1543
|
|
137
139
|
letta/schemas/letta_base.py,sha256=VP6h6mV7u2AVSrcgzTIoptORv6BqmQXkkMzb7-NlcWs,3026
|
|
@@ -148,7 +150,7 @@ letta/schemas/openai/embedding_response.py,sha256=WKIZpXab1Av7v6sxKG8feW3ZtpQUNo
|
|
|
148
150
|
letta/schemas/openai/openai.py,sha256=Hilo5BiLAGabzxCwnwfzK5QrWqwYD8epaEKFa4Pwndk,7970
|
|
149
151
|
letta/schemas/organization.py,sha256=d2oN3IK2HeruEHKXwIzCbJ3Fxdi_BEe9JZ8J9aDbHwQ,698
|
|
150
152
|
letta/schemas/passage.py,sha256=eYQMxD_XjHAi72jmqcGBU4wM4VZtSU0XK8uhQxxN3Ug,3563
|
|
151
|
-
letta/schemas/source.py,sha256=
|
|
153
|
+
letta/schemas/source.py,sha256=B1VbaDJV-EGPv1nQXwCx_RAzeAJd50UqP_1m1cIRT8c,2854
|
|
152
154
|
letta/schemas/tool.py,sha256=HCUW4RXUS9RtvfpTPeNhauFN3s23BojSOceaIxv9bKI,9596
|
|
153
155
|
letta/schemas/tool_rule.py,sha256=zv4jE0b8LW78idP4UbJARnrZcnmaqjGNUk_YV99Y0c0,884
|
|
154
156
|
letta/schemas/usage.py,sha256=lvn1ooHwLEdv6gwQpw5PBUbcwn_gwdT6HA-fCiix6sY,817
|
|
@@ -157,7 +159,7 @@ letta/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
157
159
|
letta/server/constants.py,sha256=yAdGbLkzlOU_dLTx0lKDmAnj0ZgRXCEaIcPJWO69eaE,92
|
|
158
160
|
letta/server/generate_openapi_schema.sh,sha256=0OtBhkC1g6CobVmNEd_m2B6sTdppjbJLXaM95icejvE,371
|
|
159
161
|
letta/server/rest_api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
160
|
-
letta/server/rest_api/app.py,sha256=
|
|
162
|
+
letta/server/rest_api/app.py,sha256=QbCgYeyzA86iefwomROBAaxwvSWYQT10fhHcNZsyjH4,7555
|
|
161
163
|
letta/server/rest_api/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
162
164
|
letta/server/rest_api/auth/index.py,sha256=fQBGyVylGSRfEMLQ17cZzrHd5Y1xiVylvPqH5Rl-lXQ,1378
|
|
163
165
|
letta/server/rest_api/auth_token.py,sha256=725EFEIiNj4dh70hrSd94UysmFD8vcJLrTRfNHkzxDo,774
|
|
@@ -177,12 +179,12 @@ letta/server/rest_api/routers/v1/health.py,sha256=pKCuVESlVOhGIb4VC4K-H82eZqfghm
|
|
|
177
179
|
letta/server/rest_api/routers/v1/jobs.py,sha256=a-j0v-5A0un0pVCOHpfeWnzpOWkVDQO6ti42k_qAlZY,2272
|
|
178
180
|
letta/server/rest_api/routers/v1/llms.py,sha256=TcyvSx6MEM3je5F4DysL7ligmssL_pFlJaaO4uL95VY,877
|
|
179
181
|
letta/server/rest_api/routers/v1/organizations.py,sha256=tyqVzXTpMtk3sKxI3Iz4aS6RhbGEbXDzFBB_CpW18v4,2080
|
|
180
|
-
letta/server/rest_api/routers/v1/sources.py,sha256=
|
|
182
|
+
letta/server/rest_api/routers/v1/sources.py,sha256=dSDgzt4LQPZxnZRFLHdvsFn_qoupbYvRhLIi8l1KVbs,8981
|
|
181
183
|
letta/server/rest_api/routers/v1/tools.py,sha256=Bkb9oKswOycj5S3fBeim7LpDrZf37SybGwV6fyi3BFs,4296
|
|
182
184
|
letta/server/rest_api/routers/v1/users.py,sha256=M1wEr2IyHzuRwINYxLXTkrbAH3osLe_cWjzrWrzR1aw,3729
|
|
183
185
|
letta/server/rest_api/static_files.py,sha256=NG8sN4Z5EJ8JVQdj19tkFa9iQ1kBPTab9f_CUxd_u4Q,3143
|
|
184
186
|
letta/server/rest_api/utils.py,sha256=GdHYCzXtbM5VCAYDPR0z5gnNZpRhwPld2BGZV7xT6cU,2924
|
|
185
|
-
letta/server/server.py,sha256=
|
|
187
|
+
letta/server/server.py,sha256=RQHtJwhpCgnRSL38wF13vATDkS5thCAMbtRDwU2U-yM,79746
|
|
186
188
|
letta/server/startup.sh,sha256=wTOQOJJZw_Iec57WIu0UW0AVflk0ZMWYZWg8D3T_gSQ,698
|
|
187
189
|
letta/server/static_files/assets/index-3ab03d5b.css,sha256=OrA9W4iKJ5h2Wlr7GwdAT4wow0CM8hVit1yOxEL49Qw,54295
|
|
188
190
|
letta/server/static_files/assets/index-9fa459a2.js,sha256=j2oMcDJO9dWJaH5e-tsflbVpWK20gLWpZKJk4-Kuy6A,1815592
|
|
@@ -197,7 +199,8 @@ letta/server/ws_api/protocol.py,sha256=M_-gM5iuDBwa1cuN2IGNCG5GxMJwU2d3XW93XALv9
|
|
|
197
199
|
letta/server/ws_api/server.py,sha256=C2Kv48PCwl46DQFb0ZP30s86KJLQ6dZk2AhWQEZn9pY,6004
|
|
198
200
|
letta/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
199
201
|
letta/services/agents_tags_manager.py,sha256=zNqeXDpaf4dQ77jrRHiQfITdk4FawBzcND-9tWrj8gw,3127
|
|
200
|
-
letta/services/organization_manager.py,sha256=
|
|
202
|
+
letta/services/organization_manager.py,sha256=OfE2_NMmhqXURX4sg7hCOiFQVQpV5ZiPu7J3sboCSYc,3555
|
|
203
|
+
letta/services/source_manager.py,sha256=StX5Wfd7XSCKJet8qExIu3GMoI-eMIbEarAeTv2gq0s,6555
|
|
201
204
|
letta/services/tool_manager.py,sha256=z3nnUDQWuqB5RYk_y78EvIH6SMx-KJy7qeHqclZHonw,7897
|
|
202
205
|
letta/services/user_manager.py,sha256=UJa0hqCjz0yXtvrCR8OVBqlSR5lC_Ejn-uG__58zLds,4398
|
|
203
206
|
letta/settings.py,sha256=yiYNmnYKj_BdTm0cBEIvQKYGU-lCmFntqsyVfRUy3_k,3411
|
|
@@ -205,8 +208,8 @@ letta/streaming_interface.py,sha256=_FPUWy58j50evHcpXyd7zB1wWqeCc71NCFeWh_TBvnw,
|
|
|
205
208
|
letta/streaming_utils.py,sha256=329fsvj1ZN0r0LpQtmMPZ2vSxkDBIUUwvGHZFkjm2I8,11745
|
|
206
209
|
letta/system.py,sha256=buKYPqG5n2x41hVmWpu6JUpyd7vTWED9Km2_M7dLrvk,6960
|
|
207
210
|
letta/utils.py,sha256=SXLEYhyp3gHyIjrxNIKNZZ5ittKo3KOj6zxgC_Trex0,31012
|
|
208
|
-
letta_nightly-0.5.2.
|
|
209
|
-
letta_nightly-0.5.2.
|
|
210
|
-
letta_nightly-0.5.2.
|
|
211
|
-
letta_nightly-0.5.2.
|
|
212
|
-
letta_nightly-0.5.2.
|
|
211
|
+
letta_nightly-0.5.2.dev20241113234401.dist-info/LICENSE,sha256=mExtuZ_GYJgDEI38GWdiEYZizZS4KkVt2SF1g_GPNhI,10759
|
|
212
|
+
letta_nightly-0.5.2.dev20241113234401.dist-info/METADATA,sha256=sydGYHKPa9zN-9NrBVfbVicoEGwk4EfIemafhLSxZxY,11024
|
|
213
|
+
letta_nightly-0.5.2.dev20241113234401.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
|
|
214
|
+
letta_nightly-0.5.2.dev20241113234401.dist-info/entry_points.txt,sha256=2zdiyGNEZGV5oYBuS-y2nAAgjDgcC9yM_mHJBFSRt5U,40
|
|
215
|
+
letta_nightly-0.5.2.dev20241113234401.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|