lionagi 0.17.9__py3-none-any.whl → 0.17.11__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.
- lionagi/__init__.py +1 -2
- lionagi/_class_registry.py +1 -2
- lionagi/_errors.py +1 -2
- lionagi/adapters/async_postgres_adapter.py +2 -10
- lionagi/config.py +1 -2
- lionagi/fields/action.py +1 -2
- lionagi/fields/base.py +3 -0
- lionagi/fields/code.py +3 -0
- lionagi/fields/file.py +3 -0
- lionagi/fields/instruct.py +1 -2
- lionagi/fields/reason.py +3 -2
- lionagi/fields/research.py +3 -0
- lionagi/libs/__init__.py +1 -2
- lionagi/libs/file/__init__.py +1 -2
- lionagi/libs/file/chunk.py +1 -2
- lionagi/libs/file/process.py +1 -2
- lionagi/libs/schema/__init__.py +1 -2
- lionagi/libs/schema/as_readable.py +1 -2
- lionagi/libs/schema/extract_code_block.py +1 -2
- lionagi/libs/schema/extract_docstring.py +1 -2
- lionagi/libs/schema/function_to_schema.py +1 -2
- lionagi/libs/schema/load_pydantic_model_from_schema.py +1 -2
- lionagi/libs/validate/__init__.py +1 -2
- lionagi/libs/validate/common_field_validators.py +1 -2
- lionagi/libs/validate/validate_boolean.py +1 -2
- lionagi/ln/fuzzy/_string_similarity.py +1 -2
- lionagi/ln/types.py +45 -0
- lionagi/models/__init__.py +1 -2
- lionagi/models/field_model.py +392 -286
- lionagi/models/hashable_model.py +98 -14
- lionagi/models/model_params.py +272 -271
- lionagi/models/operable_model.py +9 -10
- lionagi/models/schema_model.py +1 -2
- lionagi/operations/ReAct/ReAct.py +1 -2
- lionagi/operations/ReAct/__init__.py +1 -2
- lionagi/operations/ReAct/utils.py +1 -2
- lionagi/operations/__init__.py +1 -2
- lionagi/operations/_act/__init__.py +1 -2
- lionagi/operations/_act/act.py +1 -2
- lionagi/operations/brainstorm/__init__.py +1 -2
- lionagi/operations/brainstorm/brainstorm.py +1 -2
- lionagi/operations/brainstorm/prompt.py +1 -2
- lionagi/operations/builder.py +1 -2
- lionagi/operations/chat/__init__.py +1 -2
- lionagi/operations/chat/chat.py +1 -2
- lionagi/operations/communicate/communicate.py +1 -2
- lionagi/operations/flow.py +1 -2
- lionagi/operations/instruct/__init__.py +1 -2
- lionagi/operations/instruct/instruct.py +1 -2
- lionagi/operations/interpret/__init__.py +1 -2
- lionagi/operations/interpret/interpret.py +1 -2
- lionagi/operations/operate/__init__.py +1 -2
- lionagi/operations/operate/operate.py +1 -2
- lionagi/operations/parse/__init__.py +1 -2
- lionagi/operations/parse/parse.py +1 -2
- lionagi/operations/plan/__init__.py +1 -2
- lionagi/operations/plan/plan.py +1 -2
- lionagi/operations/plan/prompt.py +1 -2
- lionagi/operations/select/__init__.py +1 -2
- lionagi/operations/select/select.py +1 -2
- lionagi/operations/select/utils.py +1 -2
- lionagi/operations/types.py +1 -2
- lionagi/operations/utils.py +1 -2
- lionagi/protocols/__init__.py +1 -2
- lionagi/protocols/_concepts.py +1 -2
- lionagi/protocols/action/__init__.py +1 -2
- lionagi/protocols/action/function_calling.py +3 -20
- lionagi/protocols/action/manager.py +34 -4
- lionagi/protocols/action/tool.py +1 -2
- lionagi/protocols/contracts.py +1 -2
- lionagi/protocols/forms/__init__.py +1 -2
- lionagi/protocols/forms/base.py +1 -2
- lionagi/protocols/forms/flow.py +1 -2
- lionagi/protocols/forms/form.py +1 -2
- lionagi/protocols/forms/report.py +1 -2
- lionagi/protocols/generic/__init__.py +1 -2
- lionagi/protocols/generic/element.py +17 -65
- lionagi/protocols/generic/event.py +1 -2
- lionagi/protocols/generic/log.py +14 -12
- lionagi/protocols/generic/pile.py +6 -4
- lionagi/protocols/generic/processor.py +1 -2
- lionagi/protocols/generic/progression.py +1 -2
- lionagi/protocols/graph/__init__.py +1 -2
- lionagi/protocols/graph/edge.py +1 -2
- lionagi/protocols/graph/graph.py +1 -2
- lionagi/protocols/graph/node.py +1 -2
- lionagi/protocols/ids.py +1 -2
- lionagi/protocols/mail/__init__.py +1 -2
- lionagi/protocols/mail/exchange.py +1 -2
- lionagi/protocols/mail/mail.py +1 -2
- lionagi/protocols/mail/mailbox.py +1 -2
- lionagi/protocols/mail/manager.py +1 -2
- lionagi/protocols/mail/package.py +1 -2
- lionagi/protocols/messages/__init__.py +1 -2
- lionagi/protocols/messages/action_request.py +1 -2
- lionagi/protocols/messages/action_response.py +1 -2
- lionagi/protocols/messages/assistant_response.py +1 -2
- lionagi/protocols/messages/base.py +1 -2
- lionagi/protocols/messages/instruction.py +1 -2
- lionagi/protocols/messages/manager.py +1 -2
- lionagi/protocols/messages/message.py +1 -2
- lionagi/protocols/messages/system.py +1 -2
- lionagi/protocols/operatives/__init__.py +1 -2
- lionagi/protocols/operatives/operative.py +30 -8
- lionagi/protocols/operatives/step.py +1 -2
- lionagi/protocols/types.py +1 -2
- lionagi/service/connections/__init__.py +1 -2
- lionagi/service/connections/api_calling.py +1 -2
- lionagi/service/connections/endpoint.py +1 -2
- lionagi/service/connections/endpoint_config.py +1 -2
- lionagi/service/connections/header_factory.py +1 -2
- lionagi/service/connections/match_endpoint.py +1 -2
- lionagi/service/connections/mcp/__init__.py +1 -2
- lionagi/service/connections/mcp/wrapper.py +1 -2
- lionagi/service/connections/providers/__init__.py +1 -2
- lionagi/service/connections/providers/anthropic_.py +1 -2
- lionagi/service/connections/providers/claude_code_cli.py +1 -2
- lionagi/service/connections/providers/exa_.py +1 -2
- lionagi/service/connections/providers/nvidia_nim_.py +2 -27
- lionagi/service/connections/providers/oai_.py +1 -2
- lionagi/service/connections/providers/ollama_.py +1 -2
- lionagi/service/connections/providers/perplexity_.py +1 -2
- lionagi/service/hooks/__init__.py +1 -1
- lionagi/service/hooks/_types.py +1 -1
- lionagi/service/hooks/_utils.py +1 -1
- lionagi/service/hooks/hook_event.py +1 -1
- lionagi/service/hooks/hook_registry.py +1 -1
- lionagi/service/hooks/hooked_event.py +1 -2
- lionagi/service/imodel.py +1 -2
- lionagi/service/manager.py +1 -2
- lionagi/service/rate_limited_processor.py +1 -2
- lionagi/service/resilience.py +1 -2
- lionagi/service/third_party/anthropic_models.py +3 -5
- lionagi/service/third_party/claude_code.py +1 -2
- lionagi/service/token_calculator.py +1 -2
- lionagi/service/types.py +1 -2
- lionagi/session/__init__.py +1 -2
- lionagi/session/branch.py +1 -2
- lionagi/session/session.py +1 -2
- lionagi/tools/__init__.py +1 -2
- lionagi/tools/base.py +1 -2
- lionagi/tools/file/__init__.py +1 -2
- lionagi/tools/file/reader.py +1 -2
- lionagi/tools/types.py +1 -2
- lionagi/utils.py +1 -2
- lionagi/version.py +1 -1
- {lionagi-0.17.9.dist-info → lionagi-0.17.11.dist-info}/METADATA +2 -2
- lionagi-0.17.11.dist-info/RECORD +199 -0
- lionagi-0.17.9.dist-info/RECORD +0 -199
- {lionagi-0.17.9.dist-info → lionagi-0.17.11.dist-info}/WHEEL +0 -0
- {lionagi-0.17.9.dist-info → lionagi-0.17.11.dist-info}/licenses/LICENSE +0 -0
lionagi/__init__.py
CHANGED
lionagi/_class_registry.py
CHANGED
lionagi/_errors.py
CHANGED
@@ -1,13 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
This adapter leverages pydapter's improved raw SQL handling.
|
5
|
-
No workarounds needed - pydapter now properly handles:
|
6
|
-
- Raw SQL without table parameter
|
7
|
-
- No table inspection for raw SQL
|
8
|
-
- ORDER BY operations
|
9
|
-
- Both SQLite and PostgreSQL connections
|
10
|
-
"""
|
1
|
+
# Copyright (c) 2023-2025, HaiyangLi <quantocean.li at gmail dot com>
|
2
|
+
# SPDX-License-Identifier: Apache-2.0
|
11
3
|
|
12
4
|
from __future__ import annotations
|
13
5
|
|
lionagi/config.py
CHANGED
lionagi/fields/action.py
CHANGED
lionagi/fields/base.py
CHANGED
lionagi/fields/code.py
CHANGED
lionagi/fields/file.py
CHANGED
lionagi/fields/instruct.py
CHANGED
lionagi/fields/reason.py
CHANGED
@@ -1,5 +1,4 @@
|
|
1
|
-
# Copyright (c) 2023
|
2
|
-
#
|
1
|
+
# Copyright (c) 2023-2025, HaiyangLi <quantocean.li at gmail dot com>
|
3
2
|
# SPDX-License-Identifier: Apache-2.0
|
4
3
|
|
5
4
|
from pydantic import Field, field_validator
|
@@ -32,6 +31,8 @@ class Reason(HashableModel):
|
|
32
31
|
|
33
32
|
|
34
33
|
def validate_confidence_score(cls, v):
|
34
|
+
if v is None:
|
35
|
+
return None
|
35
36
|
try:
|
36
37
|
return to_num(
|
37
38
|
v,
|
lionagi/fields/research.py
CHANGED
lionagi/libs/__init__.py
CHANGED
lionagi/libs/file/__init__.py
CHANGED
lionagi/libs/file/chunk.py
CHANGED
lionagi/libs/file/process.py
CHANGED
lionagi/libs/schema/__init__.py
CHANGED
lionagi/ln/types.py
CHANGED
@@ -24,6 +24,7 @@ __all__ = (
|
|
24
24
|
"Params",
|
25
25
|
"DataClass",
|
26
26
|
"KeysLike",
|
27
|
+
"Meta",
|
27
28
|
)
|
28
29
|
|
29
30
|
T = TypeVar("T")
|
@@ -312,3 +313,47 @@ class DataClass:
|
|
312
313
|
|
313
314
|
|
314
315
|
KeysLike = Sequence[str] | KeysDict
|
316
|
+
|
317
|
+
|
318
|
+
@dataclass(slots=True, frozen=True)
|
319
|
+
class Meta:
|
320
|
+
"""Immutable metadata container for field templates and other configurations."""
|
321
|
+
|
322
|
+
key: str
|
323
|
+
value: Any
|
324
|
+
|
325
|
+
@override
|
326
|
+
def __hash__(self) -> int:
|
327
|
+
"""Make metadata hashable for caching.
|
328
|
+
|
329
|
+
Note: For callables, we hash by id to maintain identity semantics.
|
330
|
+
"""
|
331
|
+
# For callables, use their id
|
332
|
+
if callable(self.value):
|
333
|
+
return hash((self.key, id(self.value)))
|
334
|
+
# For other values, try to hash directly
|
335
|
+
try:
|
336
|
+
return hash((self.key, self.value))
|
337
|
+
except TypeError:
|
338
|
+
# Fallback for unhashable types
|
339
|
+
return hash((self.key, str(self.value)))
|
340
|
+
|
341
|
+
@override
|
342
|
+
def __eq__(self, other: object) -> bool:
|
343
|
+
"""Compare metadata for equality.
|
344
|
+
|
345
|
+
For callables, compare by id to increase cache hits when the same
|
346
|
+
validator instance is reused. For other values, use standard equality.
|
347
|
+
"""
|
348
|
+
if not isinstance(other, Meta):
|
349
|
+
return NotImplemented
|
350
|
+
|
351
|
+
if self.key != other.key:
|
352
|
+
return False
|
353
|
+
|
354
|
+
# For callables, compare by identity
|
355
|
+
if callable(self.value) and callable(other.value):
|
356
|
+
return id(self.value) == id(other.value)
|
357
|
+
|
358
|
+
# For other values, use standard equality
|
359
|
+
return bool(self.value == other.value)
|
lionagi/models/__init__.py
CHANGED