agenta 0.16.0__py3-none-any.whl → 0.17.0__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 agenta might be problematic. Click here for more details.

@@ -2,7 +2,7 @@ FROM public.ecr.aws/s2t9a1r1/agentaai/lambda_templates_public:main
2
2
 
3
3
  COPY requirements.txt ${LAMBDA_TASK_ROOT}
4
4
  RUN pip install --no-cache-dir --disable-pip-version-check -U agenta
5
- RUN pip install --no-cache-dir --disable-pip-version-check -U -r requirements.txt
5
+ RUN pip install --no-cache-dir --disable-pip-version-check -r requirements.txt
6
6
  RUN pip install --no-cache-dir --disable-pip-version-check mangum
7
7
  COPY . ${LAMBDA_TASK_ROOT}
8
8
 
@@ -203,15 +203,22 @@ class entrypoint(BaseDecorator):
203
203
  if isinstance(result, str):
204
204
  return FuncResponse(message=result, latency=round(latency, 4)) # type: ignore
205
205
  if isinstance(result, int) or isinstance(result, float):
206
- return FuncResponse(message=str(result), latency=round(latency, 4))
206
+ return FuncResponse(
207
+ message=str(result),
208
+ usage=None,
209
+ cost=None,
210
+ latency=round(latency, 4),
211
+ )
207
212
  if result is None:
208
213
  return FuncResponse(
209
214
  message="Function executed successfully, but did return None. \n Are you sure you did not forget to return a value?",
215
+ usage=None,
216
+ cost=None,
210
217
  latency=round(latency, 4),
211
218
  )
212
219
  except Exception as e:
213
220
  self.handle_exception(e)
214
- return FuncResponse(message="Unexpected error occurred when calling the @entrypoing decorated function", latency=0) # type: ignore
221
+ return FuncResponse(message="Unexpected error occurred when calling the @entrypoint decorated function", latency=0) # type: ignore
215
222
 
216
223
  def handle_exception(self, e: Exception):
217
224
  """Handle exceptions."""
@@ -237,7 +244,7 @@ class entrypoint(BaseDecorator):
237
244
 
238
245
  wrapper_signature = inspect.signature(wrapper)
239
246
  wrapper_signature = wrapper_signature.replace(parameters=updated_params)
240
- wrapper.__signature__ = wrapper_signature
247
+ wrapper.__signature__ = wrapper_signature # type: ignore
241
248
 
242
249
  def update_function_signature(
243
250
  self,
@@ -248,7 +255,7 @@ class entrypoint(BaseDecorator):
248
255
  ) -> None:
249
256
  """Update the function signature to include new parameters."""
250
257
 
251
- updated_params = []
258
+ updated_params: List[inspect.Parameter] = []
252
259
  self.add_config_params_to_parser(updated_params, config_params)
253
260
  self.add_func_params_to_parser(updated_params, func_signature, ingestible_files)
254
261
  self.update_wrapper_signature(wrapper, updated_params)
@@ -260,7 +267,8 @@ class entrypoint(BaseDecorator):
260
267
  ingestible_files: Dict[str, inspect.Parameter],
261
268
  ) -> None:
262
269
  """Update the function signature to include new parameters."""
263
- updated_params = []
270
+
271
+ updated_params: List[inspect.Parameter] = []
264
272
  self.add_func_params_to_parser(updated_params, func_signature, ingestible_files)
265
273
  for param in [
266
274
  "config",
@@ -281,12 +289,19 @@ class entrypoint(BaseDecorator):
281
289
  ) -> None:
282
290
  """Add configuration parameters to function signature."""
283
291
  for name, param in config_params.items():
292
+ assert (
293
+ len(param.__class__.__bases__) == 1
294
+ ), f"Inherited standard type of {param.__class__} needs to be one."
284
295
  updated_params.append(
285
296
  inspect.Parameter(
286
297
  name,
287
298
  inspect.Parameter.KEYWORD_ONLY,
288
299
  default=Body(param),
289
- annotation=Optional[type(param)],
300
+ annotation=param.__class__.__bases__[
301
+ 0
302
+ ], # determines and get the base (parent/inheritance) type of the sdk-type at run-time. \
303
+ # E.g __class__ is ag.MessagesInput() and accessing it parent type will return (<class 'list'>,), \
304
+ # thus, why we are accessing the first item.
290
305
  )
291
306
  )
292
307
 
@@ -303,12 +318,19 @@ class entrypoint(BaseDecorator):
303
318
  inspect.Parameter(name, param.kind, annotation=UploadFile)
304
319
  )
305
320
  else:
321
+ assert (
322
+ len(param.default.__class__.__bases__) == 1
323
+ ), f"Inherited standard type of {param.default.__class__} needs to be one."
306
324
  updated_params.append(
307
325
  inspect.Parameter(
308
326
  name,
309
327
  inspect.Parameter.KEYWORD_ONLY,
310
328
  default=Body(..., embed=True),
311
- annotation=param.annotation,
329
+ annotation=param.default.__class__.__bases__[
330
+ 0
331
+ ], # determines and get the base (parent/inheritance) type of the sdk-type at run-time. \
332
+ # E.g __class__ is ag.MessagesInput() and accessing it parent type will return (<class 'list'>,), \
333
+ # thus, why we are accessing the first item.
312
334
  )
313
335
  )
314
336
 
@@ -358,7 +380,7 @@ class entrypoint(BaseDecorator):
358
380
  f"--{name}",
359
381
  type=str,
360
382
  default=param.default,
361
- choices=param.choices,
383
+ choices=param.choices, # type: ignore
362
384
  )
363
385
  else:
364
386
  parser.add_argument(
@@ -420,7 +442,9 @@ class entrypoint(BaseDecorator):
420
442
  params (dict(param_name, param_val)): The dictionary of the parameters for the function
421
443
  """
422
444
 
423
- def find_in_schema(schema: dict, param_name: str, xparam: str):
445
+ def find_in_schema(
446
+ schema_type_properties: dict, schema: dict, param_name: str, xparam: str
447
+ ):
424
448
  """Finds a parameter in the schema based on its name and x-parameter value"""
425
449
  for _, value in schema.items():
426
450
  value_title_lower = str(value.get("title")).lower()
@@ -432,9 +456,17 @@ class entrypoint(BaseDecorator):
432
456
 
433
457
  if (
434
458
  isinstance(value, dict)
435
- and value.get("x-parameter") == xparam
459
+ and schema_type_properties.get("x-parameter") == xparam
436
460
  and value_title == param_name
437
461
  ):
462
+ # this will update the default type schema with the properties gotten
463
+ # from the schema type (param_val) __schema_properties__ classmethod
464
+ for type_key, type_value in schema_type_properties.items():
465
+ # BEFORE:
466
+ # value = {'temperature': {'title': 'Temperature'}}
467
+ value[type_key] = type_value
468
+ # AFTER:
469
+ # value = {'temperature': { "type": "number", "title": "Temperature", "x-parameter": "float" }}
438
470
  return value
439
471
 
440
472
  schema_to_override = openapi_schema["components"]["schemas"][
@@ -443,17 +475,26 @@ class entrypoint(BaseDecorator):
443
475
  for param_name, param_val in params.items():
444
476
  if isinstance(param_val, GroupedMultipleChoiceParam):
445
477
  subschema = find_in_schema(
446
- schema_to_override, param_name, "grouped_choice"
478
+ param_val.__schema_type_properties__(),
479
+ schema_to_override,
480
+ param_name,
481
+ "grouped_choice",
447
482
  )
448
483
  assert (
449
484
  subschema
450
485
  ), f"GroupedMultipleChoiceParam '{param_name}' is in the parameters but could not be found in the openapi.json"
451
- subschema["choices"] = param_val.choices
452
- subschema["default"] = param_val.default
486
+ subschema["choices"] = param_val.choices # type: ignore
487
+ subschema["default"] = param_val.default # type: ignore
488
+
453
489
  if isinstance(param_val, MultipleChoiceParam):
454
- subschema = find_in_schema(schema_to_override, param_name, "choice")
490
+ subschema = find_in_schema(
491
+ param_val.__schema_type_properties__(),
492
+ schema_to_override,
493
+ param_name,
494
+ "choice",
495
+ )
455
496
  default = str(param_val)
456
- param_choices = param_val.choices
497
+ param_choices = param_val.choices # type: ignore
457
498
  choices = (
458
499
  [default] + param_choices
459
500
  if param_val not in param_choices
@@ -463,37 +504,79 @@ class entrypoint(BaseDecorator):
463
504
  subschema["default"] = (
464
505
  default if default in param_choices else choices[0]
465
506
  )
507
+
466
508
  if isinstance(param_val, FloatParam):
467
- subschema = find_in_schema(schema_to_override, param_name, "float")
468
- subschema["minimum"] = param_val.minval
469
- subschema["maximum"] = param_val.maxval
509
+ subschema = find_in_schema(
510
+ param_val.__schema_type_properties__(),
511
+ schema_to_override,
512
+ param_name,
513
+ "float",
514
+ )
515
+ subschema["minimum"] = param_val.minval # type: ignore
516
+ subschema["maximum"] = param_val.maxval # type: ignore
470
517
  subschema["default"] = param_val
518
+
471
519
  if isinstance(param_val, IntParam):
472
- subschema = find_in_schema(schema_to_override, param_name, "int")
473
- subschema["minimum"] = param_val.minval
474
- subschema["maximum"] = param_val.maxval
520
+ subschema = find_in_schema(
521
+ param_val.__schema_type_properties__(),
522
+ schema_to_override,
523
+ param_name,
524
+ "int",
525
+ )
526
+ subschema["minimum"] = param_val.minval # type: ignore
527
+ subschema["maximum"] = param_val.maxval # type: ignore
475
528
  subschema["default"] = param_val
529
+
476
530
  if (
477
531
  isinstance(param_val, inspect.Parameter)
478
532
  and param_val.annotation is DictInput
479
533
  ):
480
- subschema = find_in_schema(schema_to_override, param_name, "dict")
534
+ subschema = find_in_schema(
535
+ param_val.annotation.__schema_type_properties__(),
536
+ schema_to_override,
537
+ param_name,
538
+ "dict",
539
+ )
481
540
  subschema["default"] = param_val.default["default_keys"]
541
+
482
542
  if isinstance(param_val, TextParam):
483
- subschema = find_in_schema(schema_to_override, param_name, "text")
543
+ subschema = find_in_schema(
544
+ param_val.__schema_type_properties__(),
545
+ schema_to_override,
546
+ param_name,
547
+ "text",
548
+ )
484
549
  subschema["default"] = param_val
550
+
485
551
  if (
486
552
  isinstance(param_val, inspect.Parameter)
487
553
  and param_val.annotation is MessagesInput
488
554
  ):
489
- subschema = find_in_schema(schema_to_override, param_name, "messages")
555
+ subschema = find_in_schema(
556
+ param_val.annotation.__schema_type_properties__(),
557
+ schema_to_override,
558
+ param_name,
559
+ "messages",
560
+ )
490
561
  subschema["default"] = param_val.default
562
+
491
563
  if (
492
564
  isinstance(param_val, inspect.Parameter)
493
565
  and param_val.annotation is FileInputURL
494
566
  ):
495
- subschema = find_in_schema(schema_to_override, param_name, "file_url")
567
+ subschema = find_in_schema(
568
+ param_val.annotation.__schema_type_properties__(),
569
+ schema_to_override,
570
+ param_name,
571
+ "file_url",
572
+ )
496
573
  subschema["default"] = "https://example.com"
574
+
497
575
  if isinstance(param_val, BinaryParam):
498
- subschema = find_in_schema(schema_to_override, param_name, "bool")
499
- subschema["default"] = param_val.default
576
+ subschema = find_in_schema(
577
+ param_val.__schema_type_properties__(),
578
+ schema_to_override,
579
+ param_name,
580
+ "bool",
581
+ )
582
+ subschema["default"] = param_val.default # type: ignore
agenta/sdk/types.py CHANGED
@@ -1,7 +1,7 @@
1
1
  import json
2
- from typing import Any, Dict, List, Optional
2
+ from typing import Dict, List, Optional
3
3
 
4
- from pydantic import BaseModel, Extra, HttpUrl, Field
4
+ from pydantic import ConfigDict, BaseModel, HttpUrl
5
5
 
6
6
 
7
7
  class InFile:
@@ -24,87 +24,75 @@ class FuncResponse(BaseModel):
24
24
 
25
25
 
26
26
  class DictInput(dict):
27
- def __new__(cls, default_keys=None):
27
+ def __new__(cls, default_keys: Optional[List[str]] = None):
28
28
  instance = super().__new__(cls, default_keys)
29
29
  if default_keys is None:
30
30
  default_keys = []
31
- instance.data = [key for key in default_keys]
31
+ instance.data = [key for key in default_keys] # type: ignore
32
32
  return instance
33
33
 
34
34
  @classmethod
35
- def __modify_schema__(cls, field_schema):
36
- field_schema.update({"x-parameter": "dict"})
35
+ def __schema_type_properties__(cls) -> dict:
36
+ return {"x-parameter": "dict"}
37
37
 
38
38
 
39
39
  class TextParam(str):
40
40
  @classmethod
41
- def __modify_schema__(cls, field_schema):
42
- field_schema.update({"x-parameter": "text"})
41
+ def __schema_type_properties__(cls) -> dict:
42
+ return {"x-parameter": "text", "type": "string"}
43
43
 
44
44
 
45
45
  class BinaryParam(int):
46
46
  def __new__(cls, value: bool = False):
47
47
  instance = super().__new__(cls, int(value))
48
- instance.default = value
48
+ instance.default = value # type: ignore
49
49
  return instance
50
50
 
51
51
  @classmethod
52
- def __modify_schema__(cls, field_schema):
53
- field_schema.update(
54
- {
55
- "x-parameter": "bool",
56
- "type": "boolean",
57
- }
58
- )
52
+ def __schema_type_properties__(cls) -> dict:
53
+ return {
54
+ "x-parameter": "bool",
55
+ "type": "boolean",
56
+ }
59
57
 
60
58
 
61
59
  class IntParam(int):
62
60
  def __new__(cls, default: int = 6, minval: float = 1, maxval: float = 10):
63
61
  instance = super().__new__(cls, default)
64
- instance.minval = minval
65
- instance.maxval = maxval
62
+ instance.minval = minval # type: ignore
63
+ instance.maxval = maxval # type: ignore
66
64
  return instance
67
65
 
68
66
  @classmethod
69
- def __modify_schema__(cls, field_schema):
70
- field_schema.update(
71
- {
72
- "x-parameter": "int",
73
- "type": "integer",
74
- "minimum": 1,
75
- "maximum": 10,
76
- }
77
- )
67
+ def __schema_type_properties__(cls) -> dict:
68
+ return {"x-parameter": "int", "type": "integer"}
78
69
 
79
70
 
80
71
  class FloatParam(float):
81
72
  def __new__(cls, default: float = 0.5, minval: float = 0.0, maxval: float = 1.0):
82
73
  instance = super().__new__(cls, default)
83
- instance.minval = minval
84
- instance.maxval = maxval
74
+ instance.default = default # type: ignore
75
+ instance.minval = minval # type: ignore
76
+ instance.maxval = maxval # type: ignore
85
77
  return instance
86
78
 
87
79
  @classmethod
88
- def __modify_schema__(cls, field_schema):
89
- field_schema.update(
90
- {
91
- "x-parameter": "float",
92
- "type": "number",
93
- "minimum": 0.0,
94
- "maximum": 1.0,
95
- }
96
- )
80
+ def __schema_type_properties__(cls) -> dict:
81
+ return {"x-parameter": "float", "type": "number"}
97
82
 
98
83
 
99
84
  class MultipleChoiceParam(str):
100
- def __new__(cls, default: str = None, choices: List[str] = None):
101
- if type(default) is list:
85
+ def __new__(
86
+ cls, default: Optional[str] = None, choices: Optional[List[str]] = None
87
+ ):
88
+ if default is not None and type(default) is list:
102
89
  raise ValueError(
103
90
  "The order of the parameters for MultipleChoiceParam is wrong! It's MultipleChoiceParam(default, choices) and not the opposite"
104
91
  )
105
- if default is None and choices:
92
+
93
+ if not default and choices is not None:
106
94
  # if a default value is not provided,
107
- # uset the first value in the choices list
95
+ # set the first value in the choices list
108
96
  default = choices[0]
109
97
 
110
98
  if default is None and not choices:
@@ -112,23 +100,21 @@ class MultipleChoiceParam(str):
112
100
  raise ValueError("You must provide either a default value or choices")
113
101
 
114
102
  instance = super().__new__(cls, default)
115
- instance.choices = choices
116
- instance.default = default
103
+ instance.choices = choices # type: ignore
104
+ instance.default = default # type: ignore
117
105
  return instance
118
106
 
119
107
  @classmethod
120
- def __modify_schema__(cls, field_schema: dict[str, Any]):
121
- field_schema.update(
122
- {
123
- "x-parameter": "choice",
124
- "type": "string",
125
- "enum": [],
126
- }
127
- )
108
+ def __schema_type_properties__(cls) -> dict:
109
+ return {"x-parameter": "choice", "type": "string", "enum": []}
128
110
 
129
111
 
130
112
  class GroupedMultipleChoiceParam(str):
131
- def __new__(cls, default: str = None, choices: Dict[str, List[str]] = None):
113
+ def __new__(
114
+ cls,
115
+ default: Optional[str] = None,
116
+ choices: Optional[Dict[str, List[str]]] = None,
117
+ ):
132
118
  if choices is None:
133
119
  choices = {}
134
120
  if default and not any(
@@ -144,31 +130,23 @@ class GroupedMultipleChoiceParam(str):
144
130
  )
145
131
 
146
132
  if not default:
147
- for choices in choices.values():
148
- if choices:
149
- default = choices[0]
150
- break
133
+ default_selected_choice = next(
134
+ (choices for choices in choices.values()), None
135
+ )
136
+ if default_selected_choice:
137
+ default = default_selected_choice[0]
151
138
 
152
139
  instance = super().__new__(cls, default)
153
- instance.choices = choices
154
- instance.default = default
140
+ instance.choices = choices # type: ignore
141
+ instance.default = default # type: ignore
155
142
  return instance
156
143
 
157
144
  @classmethod
158
- def __modify_schema__(cls, field_schema: dict[str, Any], **kwargs):
159
- choices = kwargs.get("choices", {})
160
- field_schema.update(
161
- {
162
- "x-parameter": "grouped_choice",
163
- "type": "string",
164
- "choices": choices,
165
- }
166
- )
167
-
168
-
169
- class Message(BaseModel):
170
- role: str
171
- content: str
145
+ def __schema_type_properties__(cls) -> dict:
146
+ return {
147
+ "x-parameter": "grouped_choice",
148
+ "type": "string",
149
+ }
172
150
 
173
151
 
174
152
  class MessagesInput(list):
@@ -183,28 +161,32 @@ class MessagesInput(list):
183
161
 
184
162
  """
185
163
 
186
- def __new__(cls, messages: List[Dict[str, str]] = None):
187
- instance = super().__new__(cls, messages)
188
- instance.default = messages
164
+ def __new__(cls, messages: List[Dict[str, str]] = []):
165
+ instance = super().__new__(cls)
166
+ instance.default = messages # type: ignore
189
167
  return instance
190
168
 
191
169
  @classmethod
192
- def __modify_schema__(cls, field_schema: dict[str, Any]):
193
- field_schema.update({"x-parameter": "messages", "type": "array"})
170
+ def __schema_type_properties__(cls) -> dict:
171
+ return {"x-parameter": "messages", "type": "array"}
194
172
 
195
173
 
196
174
  class FileInputURL(HttpUrl):
175
+ def __new__(cls, url: str):
176
+ instance = super().__new__(cls, url)
177
+ instance.default = url # type: ignore
178
+ return instance
179
+
197
180
  @classmethod
198
- def __modify_schema__(cls, field_schema: Dict[str, Any]) -> None:
199
- field_schema.update({"x-parameter": "file_url", "type": "string"})
181
+ def __schema_type_properties__(cls) -> dict:
182
+ return {"x-parameter": "file_url", "type": "string"}
200
183
 
201
184
 
202
185
  class Context(BaseModel):
203
- class Config:
204
- extra = Extra.allow
186
+ model_config = ConfigDict(extra="allow")
205
187
 
206
188
  def to_json(self):
207
- return self.json()
189
+ return self.model_dump()
208
190
 
209
191
  @classmethod
210
192
  def from_json(cls, json_str: str):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: agenta
3
- Version: 0.16.0
3
+ Version: 0.17.0
4
4
  Summary: The SDK for agenta is an open-source LLMOps platform.
5
5
  Home-page: https://agenta.ai
6
6
  Keywords: LLMOps,LLM,evaluation,prompt engineering
@@ -18,12 +18,12 @@ Classifier: Topic :: Software Development :: Libraries
18
18
  Requires-Dist: cachetools (>=5.3.3,<6.0.0)
19
19
  Requires-Dist: click (>=8.1.3,<9.0.0)
20
20
  Requires-Dist: docker (>=6.1.1,<8.0.0)
21
- Requires-Dist: fastapi (>=0.96.1)
21
+ Requires-Dist: fastapi (>=0.100.0)
22
22
  Requires-Dist: httpx (>=0.24,<0.28)
23
23
  Requires-Dist: importlib-metadata (>=6.7,<8.0)
24
24
  Requires-Dist: ipdb (>=0.13)
25
25
  Requires-Dist: posthog (>=3.1.0,<4.0.0)
26
- Requires-Dist: pydantic (==1.10.13)
26
+ Requires-Dist: pydantic (>=2)
27
27
  Requires-Dist: pymongo (>=4.6.3,<5.0.0)
28
28
  Requires-Dist: python-dotenv (>=1.0.0,<2.0.0)
29
29
  Requires-Dist: python-multipart (>=0.0.6,<0.0.10)
@@ -119,7 +119,7 @@ agenta/client/client.py,sha256=DWOGS9A8u4wu28s9jGOR4eRhf7vo4zT7GyDvrIGu59Y,19648
119
119
  agenta/client/exceptions.py,sha256=cxLjjKvZKlUgBxt4Vn9J_SsezJPPNHvrZxnoq-D6zmw,94
120
120
  agenta/config.py,sha256=Id-Ie1yf9QRP1YPhRYaYSOruRe6RBrsCXkG9rAa-ZtA,732
121
121
  agenta/config.toml,sha256=ptE0P49bwsu3Luyn7OLFmk2buPhj5D-MA-O_ErOGoLg,223
122
- agenta/docker/docker-assets/Dockerfile.cloud.template,sha256=Mn9g7bTQSnPXcCLZo-iVirV3cveCQHC_F7IECQufmME,389
122
+ agenta/docker/docker-assets/Dockerfile.cloud.template,sha256=uJuXKvtkMY6f4KaOh3XE5pmuJR7mfZEXJk_8hj2uatc,386
123
123
  agenta/docker/docker-assets/Dockerfile.template,sha256=aVA_okx0xXalcTvdQGhSfzSjNpQZVoLJCGYA39-2Nwk,280
124
124
  agenta/docker/docker-assets/README.md,sha256=XHxwh2ks_ozrtAU7SLbL3J14SB2holG6buoTxwmMiZM,102
125
125
  agenta/docker/docker-assets/entrypoint.sh,sha256=29XK8VQjQsx4hN2j-4JDy-6kQb5y4LCqZEa7PD4eqCQ,74
@@ -131,14 +131,14 @@ agenta/sdk/agenta_init.py,sha256=j7qwyDtXfLozWpnayJHPz2aQOzHSGvHo9V6s0FXeUe8,993
131
131
  agenta/sdk/client.py,sha256=trKyBOYFZRk0v5Eptxvh87yPf50Y9CqY6Qgv4Fy-VH4,2142
132
132
  agenta/sdk/context.py,sha256=q-PxL05-I84puunUAs9LGsffEXcYhDxhQxjuOz2vK90,901
133
133
  agenta/sdk/decorators/base.py,sha256=9aNdX5h8a2mFweuhdO-BQPwXGKY9ONPIdLRhSGAGMfY,217
134
- agenta/sdk/decorators/llm_entrypoint.py,sha256=QjkpKEgsKzO83MNOb37MupwCX5hrm7_1-qbtbpqVMYM,19400
134
+ agenta/sdk/decorators/llm_entrypoint.py,sha256=YM7idjP3kWyZzcEBsBKOMU88zNQ1hq5S_c18FvvTX7c,22709
135
135
  agenta/sdk/decorators/tracing.py,sha256=bC-YlPQUrHBEqvhLJxr63N0qlo1jvrbt7ro2AMGXXZw,3160
136
136
  agenta/sdk/router.py,sha256=0sbajvn5C7t18anH6yNo7-oYxldHnYfwcbmQnIXBePw,269
137
137
  agenta/sdk/tracing/context_manager.py,sha256=HskDaiORoOhjeN375gm05wYnieQzh5UnoIsnSAHkAyc,252
138
138
  agenta/sdk/tracing/llm_tracing.py,sha256=PmMYQ5N8atYut85Rk2hZ1jmvSF80Duuy6Clf7URcTCA,8193
139
139
  agenta/sdk/tracing/logger.py,sha256=GfH7V-jBHcn7h5dbdrnkDMe_ml3wkXFBeoQiqR4KVRc,474
140
140
  agenta/sdk/tracing/tasks_manager.py,sha256=ROrWIaqS2J2HHiJtRWiHKlLY8CCsqToP5VeXu7mamck,3748
141
- agenta/sdk/types.py,sha256=pjVThuJ9iGbWnwmDmKJnG8S6Q_wHe1fRtMS6jknYSJM,5881
141
+ agenta/sdk/types.py,sha256=KMnQUOdjaHSWctDLIiMHnk0o3c-C47Vm4Mn2kIZ88YI,5740
142
142
  agenta/sdk/utils/globals.py,sha256=JmhJcCOSbwvjQ6GDyUc2_SYR27DZk7YcrRH80ktHHOM,435
143
143
  agenta/sdk/utils/helper/openai_cost.py,sha256=1VkgvucDnNZm1pTfcVLz9icWunntp1d7zwMmnviy3Uw,5877
144
144
  agenta/sdk/utils/preinit.py,sha256=YlJL7RLfel0R7DFp-jK7OV-z4ZIQJM0oupYlk7g8b5o,1278
@@ -157,7 +157,7 @@ agenta/templates/simple_prompt/app.py,sha256=kODgF6lhzsaJPdgL5b21bUki6jkvqjWZzWR
157
157
  agenta/templates/simple_prompt/env.example,sha256=g9AE5bYcGPpxawXMJ96gh8oenEPCHTabsiOnfQo3c5k,70
158
158
  agenta/templates/simple_prompt/requirements.txt,sha256=ywRglRy7pPkw8bljmMEJJ4aOOQKrt9FGKULZ-DGkoBU,23
159
159
  agenta/templates/simple_prompt/template.toml,sha256=DQBtRrF4GU8LBEXOZ-GGuINXMQDKGTEG5y37tnvIUIE,60
160
- agenta-0.16.0.dist-info/METADATA,sha256=YXLHN6SkpATo5TYjzvmgbMmpZAgRCVM6biTo3MUE6jM,26463
161
- agenta-0.16.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
162
- agenta-0.16.0.dist-info/entry_points.txt,sha256=PDiu8_8AsL7ibU9v4iNoOKR1S7F2rdxjlEprjM9QOgo,46
163
- agenta-0.16.0.dist-info/RECORD,,
160
+ agenta-0.17.0.dist-info/METADATA,sha256=wrmoUAYhdoykpo9vPctSciIt-vUuNuWRYCYcsLO-uzs,26458
161
+ agenta-0.17.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
162
+ agenta-0.17.0.dist-info/entry_points.txt,sha256=PDiu8_8AsL7ibU9v4iNoOKR1S7F2rdxjlEprjM9QOgo,46
163
+ agenta-0.17.0.dist-info/RECORD,,