lionagi 0.3.5__py3-none-any.whl → 0.3.7__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- lionagi/core/collections/abc/component.py +26 -29
- lionagi/core/collections/abc/concepts.py +0 -6
- lionagi/core/collections/flow.py +0 -1
- lionagi/core/collections/model.py +3 -2
- lionagi/core/collections/pile.py +1 -1
- lionagi/core/collections/progression.py +4 -5
- lionagi/core/director/models/__init__.py +13 -0
- lionagi/core/director/models/action_model.py +61 -0
- lionagi/core/director/models/brainstorm_model.py +42 -0
- lionagi/core/director/models/plan_model.py +51 -0
- lionagi/core/director/models/reason_model.py +63 -0
- lionagi/core/director/models/step_model.py +65 -0
- lionagi/core/director/operations/__init__.py +0 -0
- lionagi/core/director/operations/select.py +93 -0
- lionagi/core/director/operations/utils.py +6 -0
- lionagi/core/generic/registry/component_registry/__init__.py +0 -0
- lionagi/core/operations/__init__.py +0 -0
- lionagi/core/operations/chat/__init__.py +0 -0
- lionagi/core/operations/direct/__init__.py +0 -0
- lionagi/core/operative/__init__.py +0 -0
- lionagi/core/unit/unit_mixin.py +3 -3
- lionagi/integrations/langchain_/__init__.py +0 -0
- lionagi/integrations/llamaindex_/__init__.py +0 -0
- lionagi/libs/sys_util.py +196 -32
- lionagi/lions/director/__init__.py +0 -0
- lionagi/operations/brainstorm/__init__.py +0 -0
- lionagi/operations/brainstorm.py +0 -0
- lionagi/operations/chat/__init__.py +0 -0
- lionagi/operations/models/__init__.py +0 -0
- lionagi/operations/plan/__init__.py +0 -0
- lionagi/operations/plan/base.py +0 -0
- lionagi/operations/query/__init__.py +0 -0
- lionagi/operations/rank/__init__.py +0 -0
- lionagi/operations/react/__init__.py +0 -0
- lionagi/operations/route/__init__.py +0 -0
- lionagi/operations/score/__init__.py +0 -0
- lionagi/operations/select/__init__.py +0 -0
- lionagi/operations/strategize/__init__.py +0 -0
- lionagi/version.py +1 -1
- {lionagi-0.3.5.dist-info → lionagi-0.3.7.dist-info}/METADATA +3 -2
- {lionagi-0.3.5.dist-info → lionagi-0.3.7.dist-info}/RECORD +43 -13
- {lionagi-0.3.5.dist-info → lionagi-0.3.7.dist-info}/LICENSE +0 -0
- {lionagi-0.3.5.dist-info → lionagi-0.3.7.dist-info}/WHEEL +0 -0
lionagi/libs/sys_util.py
CHANGED
@@ -7,11 +7,17 @@ import re
|
|
7
7
|
import subprocess
|
8
8
|
import sys
|
9
9
|
import time
|
10
|
+
from collections.abc import Sequence
|
10
11
|
from datetime import datetime, timezone
|
11
12
|
from hashlib import sha256
|
12
13
|
from pathlib import Path
|
13
14
|
from typing import Any
|
14
15
|
|
16
|
+
from lion_core.setting import DEFAULT_LION_ID_CONFIG, LionIDConfig
|
17
|
+
from lion_core.sys_utils import SysUtil as _u
|
18
|
+
from lionabc import Observable
|
19
|
+
from typing_extensions import deprecated
|
20
|
+
|
15
21
|
_timestamp_syms = ["-", ":", "."]
|
16
22
|
|
17
23
|
PATH_TYPE = str | Path
|
@@ -20,24 +26,74 @@ PATH_TYPE = str | Path
|
|
20
26
|
class SysUtil:
|
21
27
|
|
22
28
|
@staticmethod
|
29
|
+
def id(
|
30
|
+
config: LionIDConfig = DEFAULT_LION_ID_CONFIG,
|
31
|
+
n: int = None,
|
32
|
+
prefix: str = None,
|
33
|
+
postfix: str = None,
|
34
|
+
random_hyphen: bool = None,
|
35
|
+
num_hyphens: int = None,
|
36
|
+
hyphen_start_index: int = None,
|
37
|
+
hyphen_end_index: int = None,
|
38
|
+
) -> str:
|
39
|
+
return _u.id(
|
40
|
+
config=config,
|
41
|
+
n=n,
|
42
|
+
prefix=prefix,
|
43
|
+
postfix=postfix,
|
44
|
+
random_hyphen=random_hyphen,
|
45
|
+
num_hyphens=num_hyphens,
|
46
|
+
hyphen_start_index=hyphen_start_index,
|
47
|
+
hyphen_end_index=hyphen_end_index,
|
48
|
+
)
|
49
|
+
|
50
|
+
@staticmethod
|
51
|
+
def get_id(
|
52
|
+
item: Sequence[Observable] | Observable | str,
|
53
|
+
config: LionIDConfig = DEFAULT_LION_ID_CONFIG,
|
54
|
+
/,
|
55
|
+
) -> str:
|
56
|
+
return _u.get_id(item, config)
|
57
|
+
|
58
|
+
@staticmethod
|
59
|
+
def is_id(
|
60
|
+
item: Sequence[Observable] | Observable | str,
|
61
|
+
config: LionIDConfig = DEFAULT_LION_ID_CONFIG,
|
62
|
+
/,
|
63
|
+
) -> bool:
|
64
|
+
return _u.is_id(item, config)
|
65
|
+
|
66
|
+
# legacy methods, kept for backward compatibility
|
67
|
+
|
68
|
+
@staticmethod
|
69
|
+
@deprecated(
|
70
|
+
"Deprecated since v0.3, will be removed in v1.0. Use time.sleep instead.",
|
71
|
+
category=DeprecationWarning,
|
72
|
+
stacklevel=2,
|
73
|
+
)
|
23
74
|
def sleep(delay: float) -> None:
|
24
75
|
"""
|
25
76
|
Pauses execution for a specified duration.
|
26
77
|
|
27
78
|
Args:
|
28
|
-
|
79
|
+
delay (float): The amount of time, in seconds, to pause execution.
|
29
80
|
"""
|
30
81
|
time.sleep(delay)
|
31
82
|
|
32
83
|
@staticmethod
|
84
|
+
@deprecated(
|
85
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.time instead",
|
86
|
+
category=DeprecationWarning,
|
87
|
+
stacklevel=2,
|
88
|
+
)
|
33
89
|
def get_now(datetime_: bool = False, tz=None) -> float | datetime:
|
34
90
|
"""Returns the current time either as a Unix timestamp or a datetime object.
|
35
91
|
|
36
92
|
Args:
|
37
|
-
|
93
|
+
datetime_ (bool): If True, returns a datetime object; otherwise, returns a Unix timestamp.
|
38
94
|
|
39
95
|
Returns:
|
40
|
-
|
96
|
+
Union[float, datetime.datetime]: The current time as a Unix timestamp or a datetime object.
|
41
97
|
"""
|
42
98
|
|
43
99
|
if not datetime_:
|
@@ -48,6 +104,11 @@ class SysUtil:
|
|
48
104
|
return datetime.now(**config_)
|
49
105
|
|
50
106
|
@staticmethod
|
107
|
+
@deprecated(
|
108
|
+
"Deprecated since v0.3, will be removed in v1.0. Use d_[k2] = d_.pop(k1) instead",
|
109
|
+
category=DeprecationWarning,
|
110
|
+
stacklevel=2,
|
111
|
+
)
|
51
112
|
def change_dict_key(
|
52
113
|
dict_: dict[Any, Any], old_key: str, new_key: str
|
53
114
|
) -> None:
|
@@ -65,15 +126,20 @@ class SysUtil:
|
|
65
126
|
dict_[new_key] = dict_.pop(old_key)
|
66
127
|
|
67
128
|
@staticmethod
|
129
|
+
@deprecated(
|
130
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.time instead",
|
131
|
+
category=DeprecationWarning,
|
132
|
+
stacklevel=2,
|
133
|
+
)
|
68
134
|
def get_timestamp(tz: timezone = timezone.utc, sep: str = "_") -> str:
|
69
135
|
"""Returns a timestamp string with optional custom separators and timezone.
|
70
136
|
|
71
137
|
Args:
|
72
|
-
|
73
|
-
|
138
|
+
tz (timezone): The timezone for the timestamp.
|
139
|
+
sep (str): The separator to use in the timestamp string, replacing '-', ':', and '.'.
|
74
140
|
|
75
141
|
Returns:
|
76
|
-
|
142
|
+
str: A string representation of the current timestamp.
|
77
143
|
"""
|
78
144
|
str_ = datetime.now(tz=tz).isoformat()
|
79
145
|
if sep is not None:
|
@@ -82,6 +148,11 @@ class SysUtil:
|
|
82
148
|
return str_
|
83
149
|
|
84
150
|
@staticmethod
|
151
|
+
@deprecated(
|
152
|
+
"Deprecated since v0.3, will be removed in v1.0. Deprecated without replacement",
|
153
|
+
category=DeprecationWarning,
|
154
|
+
stacklevel=2,
|
155
|
+
)
|
85
156
|
def is_schema(dict_: dict[Any, Any], schema: dict[Any, type]) -> bool:
|
86
157
|
"""Validates if the given dictionary matches the expected schema types."""
|
87
158
|
return all(
|
@@ -90,6 +161,11 @@ class SysUtil:
|
|
90
161
|
)
|
91
162
|
|
92
163
|
@staticmethod
|
164
|
+
@deprecated(
|
165
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.copy instead",
|
166
|
+
category=DeprecationWarning,
|
167
|
+
stacklevel=2,
|
168
|
+
)
|
93
169
|
def create_copy(input_: Any, num: int = 1) -> Any | list[Any]:
|
94
170
|
"""Creates deep copies of the input, either as a single copy or a list of copies.
|
95
171
|
|
@@ -109,6 +185,11 @@ class SysUtil:
|
|
109
185
|
)
|
110
186
|
|
111
187
|
@staticmethod
|
188
|
+
@deprecated(
|
189
|
+
"Deprecated since v0.3, will be removed in v1.0. Use SysUtil.id instead",
|
190
|
+
category=DeprecationWarning,
|
191
|
+
stacklevel=2,
|
192
|
+
)
|
112
193
|
def create_id(n: int = 32) -> str:
|
113
194
|
"""
|
114
195
|
Generates a unique identifier based on the current time and random bytes.
|
@@ -124,17 +205,22 @@ class SysUtil:
|
|
124
205
|
return sha256(current_time + random_bytes).hexdigest()[:n]
|
125
206
|
|
126
207
|
@staticmethod
|
208
|
+
@deprecated(
|
209
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.get_bins instead",
|
210
|
+
category=DeprecationWarning,
|
211
|
+
stacklevel=2,
|
212
|
+
)
|
127
213
|
def get_bins(
|
128
214
|
input_: list[str], upper: int | None = 2000
|
129
215
|
) -> list[list[int]]:
|
130
216
|
"""Organizes indices of strings into bins based on a cumulative upper limit.
|
131
217
|
|
132
218
|
Args:
|
133
|
-
|
134
|
-
|
219
|
+
input_ (List[str]): The list of strings to be binned.
|
220
|
+
upper (int): The cumulative length upper limit for each bin.
|
135
221
|
|
136
222
|
Returns:
|
137
|
-
|
223
|
+
List[List[int]]: A list of bins, each bin is a list of indices from the input list.
|
138
224
|
"""
|
139
225
|
current = 0
|
140
226
|
bins = []
|
@@ -152,13 +238,18 @@ class SysUtil:
|
|
152
238
|
return bins
|
153
239
|
|
154
240
|
@staticmethod
|
241
|
+
@deprecated(
|
242
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.get_cpu_architecture instead",
|
243
|
+
category=DeprecationWarning,
|
244
|
+
stacklevel=2,
|
245
|
+
)
|
155
246
|
def get_cpu_architecture() -> str:
|
156
247
|
"""Returns a string identifying the CPU architecture.
|
157
248
|
|
158
249
|
This method categorizes some architectures as 'apple_silicon'.
|
159
250
|
|
160
251
|
Returns:
|
161
|
-
|
252
|
+
str: A string identifying the CPU architecture ('apple_silicon' or 'other_cpu').
|
162
253
|
"""
|
163
254
|
arch: str = platform.machine().lower()
|
164
255
|
return (
|
@@ -168,6 +259,11 @@ class SysUtil:
|
|
168
259
|
)
|
169
260
|
|
170
261
|
@staticmethod
|
262
|
+
@deprecated(
|
263
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.install_import instead",
|
264
|
+
category=DeprecationWarning,
|
265
|
+
stacklevel=2,
|
266
|
+
)
|
171
267
|
def install_import(
|
172
268
|
package_name: str,
|
173
269
|
module_name: str = None,
|
@@ -180,10 +276,10 @@ class SysUtil:
|
|
180
276
|
to install the package using pip and then retries the import.
|
181
277
|
|
182
278
|
Args:
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
279
|
+
package_name: The base name of the package to import.
|
280
|
+
module_name: The submodule name to import from the package, if applicable. Defaults to None.
|
281
|
+
import_name: The specific name to import from the module or package. Defaults to None.
|
282
|
+
pip_name: The pip package name if different from `package_name`. Defaults to None.
|
187
283
|
|
188
284
|
Prints a message indicating success or attempts installation if the import fails.
|
189
285
|
"""
|
@@ -215,23 +311,38 @@ class SysUtil:
|
|
215
311
|
__import__(full_import_path)
|
216
312
|
|
217
313
|
@staticmethod
|
314
|
+
@deprecated(
|
315
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.import_module instead",
|
316
|
+
category=DeprecationWarning,
|
317
|
+
stacklevel=2,
|
318
|
+
)
|
218
319
|
def import_module(module_path: str):
|
219
320
|
return importlib.import_module(module_path)
|
220
321
|
|
221
322
|
@staticmethod
|
323
|
+
@deprecated(
|
324
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.is_package_installed instead",
|
325
|
+
category=DeprecationWarning,
|
326
|
+
stacklevel=2,
|
327
|
+
)
|
222
328
|
def is_package_installed(package_name: str) -> bool:
|
223
329
|
"""Checks if a package is currently installed.
|
224
330
|
|
225
331
|
Args:
|
226
|
-
|
332
|
+
package_name: The name of the package to check.
|
227
333
|
|
228
334
|
Returns:
|
229
|
-
|
335
|
+
A boolean indicating whether the package is installed.
|
230
336
|
"""
|
231
337
|
package_spec = importlib.util.find_spec(package_name)
|
232
338
|
return package_spec is not None
|
233
339
|
|
234
340
|
@staticmethod
|
341
|
+
@deprecated(
|
342
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.check_import instead",
|
343
|
+
category=DeprecationWarning,
|
344
|
+
stacklevel=2,
|
345
|
+
)
|
235
346
|
def check_import(
|
236
347
|
package_name: str,
|
237
348
|
module_name: str | None = None,
|
@@ -246,12 +357,12 @@ class SysUtil:
|
|
246
357
|
it attempts to install the package using `install_import` and then retries the import.
|
247
358
|
|
248
359
|
Args:
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
360
|
+
package_name: The name of the package to check and potentially install.
|
361
|
+
module_name: The submodule name to import from the package, if applicable. Defaults to None.
|
362
|
+
import_name: The specific name to import from the module or package. Defaults to None.
|
363
|
+
pip_name: The pip package name if different from `package_name`. Defaults to None.
|
364
|
+
attempt_install: If attempt to install the package if uninstalled. Defaults to True.
|
365
|
+
error_message: Error message when the package is not installed and not attempt to install.
|
255
366
|
"""
|
256
367
|
try:
|
257
368
|
if not SysUtil.is_package_installed(package_name):
|
@@ -277,6 +388,11 @@ class SysUtil:
|
|
277
388
|
) from e
|
278
389
|
|
279
390
|
@staticmethod
|
391
|
+
@deprecated(
|
392
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.list_installed_packages instead",
|
393
|
+
category=DeprecationWarning,
|
394
|
+
stacklevel=2,
|
395
|
+
)
|
280
396
|
def list_installed_packages() -> list:
|
281
397
|
"""list all installed packages using importlib.metadata."""
|
282
398
|
return [
|
@@ -285,6 +401,11 @@ class SysUtil:
|
|
285
401
|
]
|
286
402
|
|
287
403
|
@staticmethod
|
404
|
+
@deprecated(
|
405
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.uninstall_package instead",
|
406
|
+
category=DeprecationWarning,
|
407
|
+
stacklevel=2,
|
408
|
+
)
|
288
409
|
def uninstall_package(package_name: str) -> None:
|
289
410
|
"""Uninstall a specified package."""
|
290
411
|
try:
|
@@ -296,6 +417,11 @@ class SysUtil:
|
|
296
417
|
print(f"Failed to uninstall {package_name}. Error: {e}")
|
297
418
|
|
298
419
|
@staticmethod
|
420
|
+
@deprecated(
|
421
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.update_package instead",
|
422
|
+
category=DeprecationWarning,
|
423
|
+
stacklevel=2,
|
424
|
+
)
|
299
425
|
def update_package(package_name: str) -> None:
|
300
426
|
"""Update a specified package."""
|
301
427
|
try:
|
@@ -314,6 +440,11 @@ class SysUtil:
|
|
314
440
|
print(f"Failed to update {package_name}. Error: {e}")
|
315
441
|
|
316
442
|
@staticmethod
|
443
|
+
@deprecated(
|
444
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.clear_path instead",
|
445
|
+
category=DeprecationWarning,
|
446
|
+
stacklevel=2,
|
447
|
+
)
|
317
448
|
def clear_dir(
|
318
449
|
dir_path: Path | str,
|
319
450
|
recursive: bool = False,
|
@@ -324,12 +455,12 @@ class SysUtil:
|
|
324
455
|
excluding files that match any pattern in the exclude list.
|
325
456
|
|
326
457
|
Args:
|
327
|
-
|
328
|
-
|
329
|
-
|
458
|
+
dir_path (Union[Path, str]): The path to the directory to clear.
|
459
|
+
recursive (bool): If True, clears directories recursively. Defaults to False.
|
460
|
+
exclude (List[str]): A list of string patterns to exclude from deletion. Defaults to None.
|
330
461
|
|
331
462
|
Raises:
|
332
|
-
|
463
|
+
FileNotFoundError: If the specified directory does not exist.
|
333
464
|
"""
|
334
465
|
dir_path = Path(dir_path)
|
335
466
|
if not dir_path.exists():
|
@@ -356,6 +487,11 @@ class SysUtil:
|
|
356
487
|
raise
|
357
488
|
|
358
489
|
@staticmethod
|
490
|
+
@deprecated(
|
491
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.split_path instead",
|
492
|
+
category=DeprecationWarning,
|
493
|
+
stacklevel=2,
|
494
|
+
)
|
359
495
|
def split_path(path: Path | str) -> tuple[Path, str]:
|
360
496
|
"""
|
361
497
|
Splits a path into its directory and filename components.
|
@@ -370,6 +506,11 @@ class SysUtil:
|
|
370
506
|
return path.parent, path.name
|
371
507
|
|
372
508
|
@staticmethod
|
509
|
+
@deprecated(
|
510
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.create_path instead",
|
511
|
+
category=DeprecationWarning,
|
512
|
+
stacklevel=2,
|
513
|
+
)
|
373
514
|
def create_path(
|
374
515
|
directory: Path | str,
|
375
516
|
filename: str,
|
@@ -383,12 +524,12 @@ class SysUtil:
|
|
383
524
|
Creates a path with an optional timestamp in the specified directory.
|
384
525
|
|
385
526
|
Args:
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
527
|
+
directory (Union[Path, str]): The directory where the file will be located.
|
528
|
+
filename (str): The filename. Must include a valid extension.
|
529
|
+
timestamp (bool): If True, adds a timestamp to the filename. Defaults to True.
|
530
|
+
dir_exist_ok (bool): If True, does not raise an error if the directory exists. Defaults to True.
|
531
|
+
time_prefix (bool): If True, adds the timestamp as a prefix; otherwise, as a suffix. Defaults to False.
|
532
|
+
custom_timestamp_format (str): A custom format for the timestamp. Defaults to "%Y%m%d%H%M%S".
|
392
533
|
|
393
534
|
Returns:
|
394
535
|
Path: The full path to the file.
|
@@ -432,6 +573,11 @@ class SysUtil:
|
|
432
573
|
return full_path
|
433
574
|
|
434
575
|
@staticmethod
|
576
|
+
@deprecated(
|
577
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.list_files instead",
|
578
|
+
category=DeprecationWarning,
|
579
|
+
stacklevel=2,
|
580
|
+
)
|
435
581
|
def list_files(dir_path: Path | str, extension: str = None) -> list[Path]:
|
436
582
|
"""
|
437
583
|
Lists all files in a specified directory with an optional filter for file extensions.
|
@@ -455,6 +601,11 @@ class SysUtil:
|
|
455
601
|
return list(dir_path.glob("*"))
|
456
602
|
|
457
603
|
@staticmethod
|
604
|
+
@deprecated(
|
605
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.copy_file instead",
|
606
|
+
category=DeprecationWarning,
|
607
|
+
stacklevel=2,
|
608
|
+
)
|
458
609
|
def copy_file(src: Path | str, dest: Path | str) -> None:
|
459
610
|
"""
|
460
611
|
Copies a file from a source path to a destination path.
|
@@ -475,6 +626,11 @@ class SysUtil:
|
|
475
626
|
copy2(src, dest)
|
476
627
|
|
477
628
|
@staticmethod
|
629
|
+
@deprecated(
|
630
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.get_file_size instead",
|
631
|
+
category=DeprecationWarning,
|
632
|
+
stacklevel=2,
|
633
|
+
)
|
478
634
|
def get_size(path: Path | str) -> int:
|
479
635
|
"""
|
480
636
|
Gets the size of a file or total size of files in a directory.
|
@@ -499,6 +655,11 @@ class SysUtil:
|
|
499
655
|
raise FileNotFoundError(f"{path} does not exist.")
|
500
656
|
|
501
657
|
@staticmethod
|
658
|
+
@deprecated(
|
659
|
+
"Deprecated since v0.3, will be removed in v1.0. Use lionfuncs.save_to_file instead",
|
660
|
+
category=DeprecationWarning,
|
661
|
+
stacklevel=2,
|
662
|
+
)
|
502
663
|
def save_to_file(
|
503
664
|
text,
|
504
665
|
directory: Path | str,
|
@@ -544,3 +705,6 @@ class SysUtil:
|
|
544
705
|
print(f"Text saved to: {file_path}")
|
545
706
|
|
546
707
|
return True
|
708
|
+
|
709
|
+
|
710
|
+
__all__ = ["SysUtil"]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
lionagi/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.3.
|
1
|
+
__version__ = "0.3.7"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lionagi
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.7
|
4
4
|
Summary: Towards automated general intelligence.
|
5
5
|
Author: HaiyangLi
|
6
6
|
Author-email: quantocean.li@gmail.com
|
@@ -11,8 +11,9 @@ Classifier: Programming Language :: Python :: 3.11
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.12
|
12
12
|
Requires-Dist: aiocache (>=0.12.0,<0.13.0)
|
13
13
|
Requires-Dist: ipython (>=8.0.0,<9.0.0)
|
14
|
-
Requires-Dist: lion-core (>=0.
|
14
|
+
Requires-Dist: lion-core (>=0.4.0,<0.5.0)
|
15
15
|
Requires-Dist: lion-openai (>=0.1.5,<0.2.0)
|
16
|
+
Requires-Dist: lionfuncs (>=1.2.1,<2.0.0)
|
16
17
|
Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
|
17
18
|
Description-Content-Type: text/markdown
|
18
19
|
|
@@ -26,20 +26,29 @@ lionagi/core/collections/__init__.py,sha256=RgnaBHgeUlPQyPfraE2MI86wAZpHAtmfgU0h
|
|
26
26
|
lionagi/core/collections/_logger.py,sha256=zAGvx5SWWkeI2_n8Jh69ToYvyn5LLlww91SRKcrxLDU,11696
|
27
27
|
lionagi/core/collections/abc/README.md,sha256=N3s0qQglL2PkriZ0hWDTh0ytJjubqkXVyUB0x9kpi6U,5524
|
28
28
|
lionagi/core/collections/abc/__init__.py,sha256=cCPlUaXtXXPdQamXWQAf8MHKck7sa1asu6TDLX1W6S0,984
|
29
|
-
lionagi/core/collections/abc/component.py,sha256=
|
30
|
-
lionagi/core/collections/abc/concepts.py,sha256=
|
29
|
+
lionagi/core/collections/abc/component.py,sha256=R3lU2I9cefeKNQ-2EmUq487MRYdBHR50g5iZ9BmudKU,21280
|
30
|
+
lionagi/core/collections/abc/concepts.py,sha256=iYaI97A9qWrH_aPt_Fx60qgMfoGKqhzD0-efgH8lSj0,7799
|
31
31
|
lionagi/core/collections/abc/exceptions.py,sha256=raqjWSHGYhm-tUAmn1QK_NlkM3MQfjc1cOD_kobUdyc,4065
|
32
32
|
lionagi/core/collections/abc/util.py,sha256=CjJs-PgK0t4MAG1AJUdgrxQg7v2Ou-ixv-gWjatu7d4,779
|
33
33
|
lionagi/core/collections/exchange.py,sha256=7h9kI7gNRyCYFZUd-686ClPZXFZLtrEn7pVHjk4ol60,4274
|
34
|
-
lionagi/core/collections/flow.py,sha256=
|
35
|
-
lionagi/core/collections/model.py,sha256=
|
36
|
-
lionagi/core/collections/pile.py,sha256=
|
37
|
-
lionagi/core/collections/progression.py,sha256=
|
34
|
+
lionagi/core/collections/flow.py,sha256=yaCdLhilcBrPdsZ46RcApgi8p-7O0D97OYnNVkEZja4,12726
|
35
|
+
lionagi/core/collections/model.py,sha256=dU6NOmy3c2aX9XqM5Y2CMx9_wuRCDtFAJyu5njBEysM,15848
|
36
|
+
lionagi/core/collections/pile.py,sha256=Zjzjo1eb0V7_9ONDpZgT65jLaAM04_zWK01zNS3OI_M,37937
|
37
|
+
lionagi/core/collections/progression.py,sha256=oFXvsGe84ZcHvacGc1MDGn4bE4h5wRUq8h9wcBXr8Ok,6657
|
38
38
|
lionagi/core/collections/util.py,sha256=AWfwuIIwbakpF0_swWUVSGTeN26XWL6UlmgW5mh4qDA,2005
|
39
39
|
lionagi/core/director/README.md,sha256=HoIDnEmWmWXVeDfUvkyf4nXQOYqzy2jhToZcJz0zmUw,55
|
40
40
|
lionagi/core/director/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
41
41
|
lionagi/core/director/direct.py,sha256=vKcirI2vp9CvU6Y7SoznaLwppJpI9j9YBo0cvfWwxiM,9552
|
42
42
|
lionagi/core/director/director.py,sha256=E-zgbAj5gbUgDrfE0YzFoipZnr0WWGZwIreEGGY2KJc,103
|
43
|
+
lionagi/core/director/models/__init__.py,sha256=2SSysv4nrZ998HRt9a1BeoWcgVu91Nx3dy2NL4kkHDc,300
|
44
|
+
lionagi/core/director/models/action_model.py,sha256=Wj04sHRlgPYiQJWEbJlzQsxKPsW4f0KkZsSWYqCcfME,1843
|
45
|
+
lionagi/core/director/models/brainstorm_model.py,sha256=1P2qX58qJDb1r4U14iFdl5aHtKCg7oYBUXavYc1xzIc,1177
|
46
|
+
lionagi/core/director/models/plan_model.py,sha256=SqaJlUXT7un-VTHk_LS3jjd00drMJEY4mJfNRwtalXk,1453
|
47
|
+
lionagi/core/director/models/reason_model.py,sha256=anY5fvszbABci74YvQnTVtvSh59I1cj9ZNw6A8GHfB8,2124
|
48
|
+
lionagi/core/director/models/step_model.py,sha256=oB_mSwlZjp5csX4YDgdX9BIu0iIefLxAhqoZU0qetXs,2008
|
49
|
+
lionagi/core/director/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
50
|
+
lionagi/core/director/operations/select.py,sha256=6oqZVQMzkgizzHXuhuUmdySfDTLGRTzFEr1yTyRw9No,2834
|
51
|
+
lionagi/core/director/operations/utils.py,sha256=nuCvA6hXAi0oPFPdV_5kyHLGLlk1FbqhGfH2N0kPF9I,132
|
43
52
|
lionagi/core/engine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
44
53
|
lionagi/core/engine/branch_engine.py,sha256=l59CTLk-ecsc_NgNgT3DkgP4OuuQ1lzdcOdDqie0H-k,12700
|
45
54
|
lionagi/core/engine/instruction_map_engine.py,sha256=xjvqHLc7T2Hk7MoFA8y9DgMAmFKk56vTSTL-90SiAWc,8600
|
@@ -56,6 +65,7 @@ lionagi/core/generic/edge_condition.py,sha256=ZvQMYDl4WFXrwkvjQajVFluF5FNosw_OLe
|
|
56
65
|
lionagi/core/generic/graph.py,sha256=kOq2DvZaAFmgHIZUlFlxUgSh4rzqQP6fMmQtrWhTjfM,7838
|
57
66
|
lionagi/core/generic/hyperedge.py,sha256=DkeLUlrb7rGx3nZ04aADU9HXXu5mZTf_DBwT0xhzIv4,7
|
58
67
|
lionagi/core/generic/node.py,sha256=vf26Q8-V3wh5qr8TdFGena_SCkp_39eCO6n23TjbuMo,7156
|
68
|
+
lionagi/core/generic/registry/component_registry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
59
69
|
lionagi/core/generic/tree.py,sha256=YVlJT1_gN96utEUB1Uc4pmHEeFVyJrtSF6cqIBWZDJI,1541
|
60
70
|
lionagi/core/generic/tree_node.py,sha256=vHOELePsn-Vqlpi7V4-UteGR-Vht4FddJL6UmNVbab8,2475
|
61
71
|
lionagi/core/mail/__init__.py,sha256=_-C11e519cBCuEuYhCgsQnzph2vDpUaLEfsKNwz33AQ,202
|
@@ -71,6 +81,10 @@ lionagi/core/message/instruction.py,sha256=I_ZqMx3IjIwGlAx3bdlBuyVycTZ9yO1i-kEP5
|
|
71
81
|
lionagi/core/message/message.py,sha256=Etl4a3mUrXLsym7i6ILqTV_Xun0xZw0UCoBMl1OtsNE,2403
|
72
82
|
lionagi/core/message/system.py,sha256=48mvib50mno9F-8fkLa8SzPxz3G1KlRgz3GkIluMFUQ,2318
|
73
83
|
lionagi/core/message/util.py,sha256=7CFw90QA3CdnV43aQ3PU6p1fhtaTixnlj_SBkLyQmpM,9313
|
84
|
+
lionagi/core/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
85
|
+
lionagi/core/operations/chat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
86
|
+
lionagi/core/operations/direct/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
87
|
+
lionagi/core/operative/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
88
|
lionagi/core/report/__init__.py,sha256=KqfJNaSx9fzRw3eyrlIlYIiueo-jVYMgjaOdfzTUAN4,80
|
75
89
|
lionagi/core/report/base.py,sha256=_PRSd92JttwEKnW_UX7SszpV29bLg6wPwJ_Lav-Z-9k,7173
|
76
90
|
lionagi/core/report/form.py,sha256=IPZk5D5Ai-GV6DrvrZBoEkwIFT7_vwv8h3qME8Tph-M,7040
|
@@ -107,7 +121,7 @@ lionagi/core/unit/template/score.py,sha256=ReUaIIr-NLjunSy4NNXQpIsH28NNceGBAUuPC
|
|
107
121
|
lionagi/core/unit/template/select.py,sha256=VSpkphJl9bHSE8i0X6MMJD8LB5QwOj1UORHm8VDIRKE,3047
|
108
122
|
lionagi/core/unit/unit.py,sha256=a3rauBXe50SBUgndv7Q9bqF4h7pJCYdsoTfPf1e8GCs,15548
|
109
123
|
lionagi/core/unit/unit_form.py,sha256=zK_ij3Tod5FwMVdIIhdVoEFvD3br-YM9RPe7WsOIW2s,10980
|
110
|
-
lionagi/core/unit/unit_mixin.py,sha256=
|
124
|
+
lionagi/core/unit/unit_mixin.py,sha256=gLyqtyiwWIyfibhNUJzMpAGfcMmLdo86xjbGZFyGILA,38803
|
111
125
|
lionagi/core/unit/util.py,sha256=WN2Jop-LUwQNYJNubFPhOZrisQ6SQq-XMhD_KhzLkgE,2707
|
112
126
|
lionagi/core/validator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
113
127
|
lionagi/core/validator/validator.py,sha256=901wwmqL92XNi25ajv57bNKIKZhmu-KprNLArMUiGqg,12255
|
@@ -171,6 +185,8 @@ lionagi/integrations/config/mlx_configs.py,sha256=xbostqjnk3aAN-qKyC54YBprHPA38C
|
|
171
185
|
lionagi/integrations/config/oai_configs.py,sha256=fgby-3o_tO24QhSiPyko-oeAMEa0cWCThh6L6ChiXoo,3625
|
172
186
|
lionagi/integrations/config/ollama_configs.py,sha256=GUn0kagrQA3gpIiaxYyfdi2LAf_Ohz1sVrsAb20OBwo,17
|
173
187
|
lionagi/integrations/config/openrouter_configs.py,sha256=x5LjLx-aqCLzzrqr15gVzuTTG4Y_BVS6tRrKout5vPQ,1690
|
188
|
+
lionagi/integrations/langchain_/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
189
|
+
lionagi/integrations/llamaindex_/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
174
190
|
lionagi/integrations/loader/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
175
191
|
lionagi/integrations/loader/load.py,sha256=KhsbLPwqNK1wRDKSoZPd5yeyMGAPc9Xt_ISR8PK6PCk,8651
|
176
192
|
lionagi/integrations/loader/load_util.py,sha256=65qP5kytBJFTaSg7lNCO7rfw6GpPQuvZxoqJ7s83A48,6616
|
@@ -205,7 +221,7 @@ lionagi/libs/ln_queue.py,sha256=kJ-81XNnu2gcHyQ9XL62kCnAzk_0tmRmvhAaj30wIjM,3498
|
|
205
221
|
lionagi/libs/ln_tokenize.py,sha256=SP3mGljwaaxqH0ced54v4lFs8LXU-oIpb33mdrzRSEA,5400
|
206
222
|
lionagi/libs/ln_validate.py,sha256=huTnLNaAITni49PK_uI2CXvnFETt87j8-4lF8e5yy0o,8469
|
207
223
|
lionagi/libs/special_tokens.py,sha256=ViFaql64LgEGHSXzODzaVMh4GfteN8D2ogmqWYTYwiQ,2411
|
208
|
-
lionagi/libs/sys_util.py,sha256=
|
224
|
+
lionagi/libs/sys_util.py,sha256=Xin0U3-oBUJZJUhdHRjDyyNVJS-resfGFooDUTAtH0M,24919
|
209
225
|
lionagi/lions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
210
226
|
lionagi/lions/coder/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
211
227
|
lionagi/lions/coder/add_feature.py,sha256=mLMfz9V9yYbdH6DJs39FOz9IHdhdyPZajocQtQhjgcA,703
|
@@ -213,6 +229,7 @@ lionagi/lions/coder/base_prompts.py,sha256=SLpC442nZm2cEkB8o9j28kpkB-WzKLjH6sOTS
|
|
213
229
|
lionagi/lions/coder/code_form.py,sha256=xW66cWCsrZu2qGu-wGUGSIPL1uZevGQVCE_vBRH9Kmc,384
|
214
230
|
lionagi/lions/coder/coder.py,sha256=u-n_7PVdKCAz28SAA2bO4oy1qxGIzEl1PX6iqz7oSoI,5829
|
215
231
|
lionagi/lions/coder/util.py,sha256=m9H18JrePpuP1VyjxVXQaLXCGBed04jZIkfNXvF7_gU,2751
|
232
|
+
lionagi/lions/director/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
216
233
|
lionagi/lions/judge/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
217
234
|
lionagi/lions/judge/config.py,sha256=hJNMI-07zf5cqU2tr22fzkGvhR7RdtckkYg8UhLTKec,185
|
218
235
|
lionagi/lions/judge/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -229,8 +246,21 @@ lionagi/lions/researcher/data_source/finhub_.py,sha256=W63daXgIwHJQ6TDMR2ALQIDk1
|
|
229
246
|
lionagi/lions/researcher/data_source/google_.py,sha256=401SKHQaSpxiOUoXl7stadl4qeF7SIX72lUNK7bKesg,6797
|
230
247
|
lionagi/lions/researcher/data_source/wiki_.py,sha256=UPoa2dk_y5sELu7_rkdme2auDpUmc_Dn0Avgjwr2X2g,3145
|
231
248
|
lionagi/lions/researcher/data_source/yfinance_.py,sha256=snAf897J69MyAc6fcFjF0irrMjbAh81EZ3RvaFT3hxE,977
|
232
|
-
lionagi/
|
233
|
-
lionagi
|
234
|
-
lionagi
|
235
|
-
lionagi
|
236
|
-
lionagi-0
|
249
|
+
lionagi/operations/brainstorm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
250
|
+
lionagi/operations/brainstorm.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
251
|
+
lionagi/operations/chat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
252
|
+
lionagi/operations/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
253
|
+
lionagi/operations/plan/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
254
|
+
lionagi/operations/plan/base.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
255
|
+
lionagi/operations/query/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
256
|
+
lionagi/operations/rank/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
257
|
+
lionagi/operations/react/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
258
|
+
lionagi/operations/route/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
259
|
+
lionagi/operations/score/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
260
|
+
lionagi/operations/select/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
261
|
+
lionagi/operations/strategize/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
262
|
+
lionagi/version.py,sha256=J0I0c7-a50EOnWXMryTu_E6xhXSYFBPjVpeYP_a3vRI,22
|
263
|
+
lionagi-0.3.7.dist-info/LICENSE,sha256=VXFWsdoN5AAknBCgFqQNgPWYx7OPp-PFEP961zGdOjc,11288
|
264
|
+
lionagi-0.3.7.dist-info/METADATA,sha256=6F2nnUX1ORQQo6giNHPHh3iuZb8AZxNs5Nw-XsqqutQ,3190
|
265
|
+
lionagi-0.3.7.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
266
|
+
lionagi-0.3.7.dist-info/RECORD,,
|
File without changes
|
File without changes
|