lfx-nightly 0.1.13.dev3__py3-none-any.whl → 0.1.13.dev5__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 lfx-nightly might be problematic. Click here for more details.
- lfx/_assets/component_index.json +1 -1
- lfx/base/composio/composio_base.py +24 -9
- lfx/base/datastax/astradb_base.py +3 -2
- lfx/base/io/chat.py +5 -4
- lfx/base/mcp/util.py +71 -5
- lfx/base/models/watsonx_constants.py +12 -0
- lfx/cli/commands.py +1 -1
- lfx/components/agents/agent.py +1 -1
- lfx/components/agents/cuga_agent.py +1 -1
- lfx/components/agents/mcp_component.py +16 -0
- lfx/components/amazon/amazon_bedrock_converse.py +1 -1
- lfx/components/apify/apify_actor.py +3 -3
- lfx/components/datastax/astradb_vectorstore.py +1 -1
- lfx/components/mistral/mistral_embeddings.py +1 -1
- lfx/components/models/embedding_model.py +85 -7
- lfx/components/openrouter/openrouter.py +49 -147
- lfx/custom/custom_component/component.py +3 -2
- lfx/graph/graph/base.py +1 -1
- lfx/graph/graph/schema.py +3 -2
- lfx/graph/vertex/vertex_types.py +1 -1
- lfx/io/schema.py +6 -0
- {lfx_nightly-0.1.13.dev3.dist-info → lfx_nightly-0.1.13.dev5.dist-info}/METADATA +1 -1
- {lfx_nightly-0.1.13.dev3.dist-info → lfx_nightly-0.1.13.dev5.dist-info}/RECORD +25 -24
- {lfx_nightly-0.1.13.dev3.dist-info → lfx_nightly-0.1.13.dev5.dist-info}/WHEEL +0 -0
- {lfx_nightly-0.1.13.dev3.dist-info → lfx_nightly-0.1.13.dev5.dist-info}/entry_points.txt +0 -0
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
from collections import defaultdict
|
|
2
|
-
from typing import Any
|
|
3
|
-
|
|
4
1
|
import httpx
|
|
5
2
|
from langchain_openai import ChatOpenAI
|
|
6
3
|
from pydantic.v1 import SecretStr
|
|
@@ -8,13 +5,7 @@ from pydantic.v1 import SecretStr
|
|
|
8
5
|
from lfx.base.models.model import LCModelComponent
|
|
9
6
|
from lfx.field_typing import LanguageModel
|
|
10
7
|
from lfx.field_typing.range_spec import RangeSpec
|
|
11
|
-
from lfx.inputs.inputs import
|
|
12
|
-
DropdownInput,
|
|
13
|
-
IntInput,
|
|
14
|
-
SecretStrInput,
|
|
15
|
-
SliderInput,
|
|
16
|
-
StrInput,
|
|
17
|
-
)
|
|
8
|
+
from lfx.inputs.inputs import DropdownInput, IntInput, SecretStrInput, SliderInput, StrInput
|
|
18
9
|
|
|
19
10
|
|
|
20
11
|
class OpenRouterComponent(LCModelComponent):
|
|
@@ -28,36 +19,13 @@ class OpenRouterComponent(LCModelComponent):
|
|
|
28
19
|
|
|
29
20
|
inputs = [
|
|
30
21
|
*LCModelComponent.get_base_inputs(),
|
|
31
|
-
SecretStrInput(
|
|
32
|
-
name="api_key", display_name="OpenRouter API Key", required=True, info="Your OpenRouter API key"
|
|
33
|
-
),
|
|
34
|
-
StrInput(
|
|
35
|
-
name="site_url",
|
|
36
|
-
display_name="Site URL",
|
|
37
|
-
info="Your site URL for OpenRouter rankings",
|
|
38
|
-
advanced=True,
|
|
39
|
-
),
|
|
40
|
-
StrInput(
|
|
41
|
-
name="app_name",
|
|
42
|
-
display_name="App Name",
|
|
43
|
-
info="Your app name for OpenRouter rankings",
|
|
44
|
-
advanced=True,
|
|
45
|
-
),
|
|
46
|
-
DropdownInput(
|
|
47
|
-
name="provider",
|
|
48
|
-
display_name="Provider",
|
|
49
|
-
info="The AI model provider",
|
|
50
|
-
options=["Loading providers..."],
|
|
51
|
-
value="Loading providers...",
|
|
52
|
-
real_time_refresh=True,
|
|
53
|
-
required=True,
|
|
54
|
-
),
|
|
22
|
+
SecretStrInput(name="api_key", display_name="API Key", required=True),
|
|
55
23
|
DropdownInput(
|
|
56
24
|
name="model_name",
|
|
57
25
|
display_name="Model",
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
26
|
+
options=[],
|
|
27
|
+
value="",
|
|
28
|
+
refresh_button=True,
|
|
61
29
|
real_time_refresh=True,
|
|
62
30
|
required=True,
|
|
63
31
|
),
|
|
@@ -66,137 +34,71 @@ class OpenRouterComponent(LCModelComponent):
|
|
|
66
34
|
display_name="Temperature",
|
|
67
35
|
value=0.7,
|
|
68
36
|
range_spec=RangeSpec(min=0, max=2, step=0.01),
|
|
69
|
-
info="Controls randomness. Lower values are more deterministic, higher values are more creative.",
|
|
70
|
-
advanced=True,
|
|
71
|
-
),
|
|
72
|
-
IntInput(
|
|
73
|
-
name="max_tokens",
|
|
74
|
-
display_name="Max Tokens",
|
|
75
|
-
info="Maximum number of tokens to generate",
|
|
76
37
|
advanced=True,
|
|
77
38
|
),
|
|
39
|
+
IntInput(name="max_tokens", display_name="Max Tokens", advanced=True),
|
|
40
|
+
StrInput(name="site_url", display_name="Site URL", advanced=True),
|
|
41
|
+
StrInput(name="app_name", display_name="App Name", advanced=True),
|
|
78
42
|
]
|
|
79
43
|
|
|
80
|
-
def fetch_models(self) -> dict
|
|
81
|
-
"""Fetch available models from OpenRouter
|
|
82
|
-
url = "https://openrouter.ai/api/v1/models"
|
|
83
|
-
|
|
44
|
+
def fetch_models(self) -> list[dict]:
|
|
45
|
+
"""Fetch available models from OpenRouter."""
|
|
84
46
|
try:
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
47
|
+
response = httpx.get("https://openrouter.ai/api/v1/models", timeout=10.0)
|
|
48
|
+
response.raise_for_status()
|
|
49
|
+
models = response.json().get("data", [])
|
|
50
|
+
return sorted(
|
|
51
|
+
[
|
|
52
|
+
{
|
|
53
|
+
"id": m["id"],
|
|
54
|
+
"name": m.get("name", m["id"]),
|
|
55
|
+
"context": m.get("context_length", 0),
|
|
56
|
+
}
|
|
57
|
+
for m in models
|
|
58
|
+
if m.get("id")
|
|
59
|
+
],
|
|
60
|
+
key=lambda x: x["name"],
|
|
61
|
+
)
|
|
62
|
+
except (httpx.RequestError, httpx.HTTPStatusError) as e:
|
|
63
|
+
self.log(f"Error fetching models: {e}")
|
|
64
|
+
return []
|
|
65
|
+
|
|
66
|
+
def update_build_config(self, build_config: dict, field_value: str, field_name: str | None = None) -> dict: # noqa: ARG002
|
|
67
|
+
"""Update model options."""
|
|
68
|
+
models = self.fetch_models()
|
|
69
|
+
if models:
|
|
70
|
+
build_config["model_name"]["options"] = [m["id"] for m in models]
|
|
71
|
+
build_config["model_name"]["tooltips"] = {m["id"]: f"{m['name']} ({m['context']:,} tokens)" for m in models}
|
|
72
|
+
else:
|
|
73
|
+
build_config["model_name"]["options"] = ["Failed to load models"]
|
|
74
|
+
build_config["model_name"]["value"] = "Failed to load models"
|
|
75
|
+
return build_config
|
|
110
76
|
|
|
111
77
|
def build_model(self) -> LanguageModel:
|
|
112
|
-
"""Build
|
|
113
|
-
model_not_selected = "Please select a model"
|
|
114
|
-
api_key_required = "API key is required"
|
|
115
|
-
|
|
116
|
-
if not self.model_name or self.model_name == "Select a provider first":
|
|
117
|
-
raise ValueError(model_not_selected)
|
|
118
|
-
|
|
78
|
+
"""Build the OpenRouter model."""
|
|
119
79
|
if not self.api_key:
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
80
|
+
msg = "API key is required"
|
|
81
|
+
raise ValueError(msg)
|
|
82
|
+
if not self.model_name or self.model_name == "Loading...":
|
|
83
|
+
msg = "Please select a model"
|
|
84
|
+
raise ValueError(msg)
|
|
123
85
|
|
|
124
|
-
|
|
125
|
-
kwargs: dict[str, Any] = {
|
|
86
|
+
kwargs = {
|
|
126
87
|
"model": self.model_name,
|
|
127
|
-
"openai_api_key": api_key,
|
|
88
|
+
"openai_api_key": SecretStr(self.api_key).get_secret_value(),
|
|
128
89
|
"openai_api_base": "https://openrouter.ai/api/v1",
|
|
129
90
|
"temperature": self.temperature if self.temperature is not None else 0.7,
|
|
130
91
|
}
|
|
131
92
|
|
|
132
|
-
# Add optional parameters
|
|
133
93
|
if self.max_tokens:
|
|
134
|
-
kwargs["max_tokens"] = self.max_tokens
|
|
94
|
+
kwargs["max_tokens"] = int(self.max_tokens)
|
|
135
95
|
|
|
136
96
|
headers = {}
|
|
137
97
|
if self.site_url:
|
|
138
98
|
headers["HTTP-Referer"] = self.site_url
|
|
139
99
|
if self.app_name:
|
|
140
100
|
headers["X-Title"] = self.app_name
|
|
141
|
-
|
|
142
101
|
if headers:
|
|
143
102
|
kwargs["default_headers"] = headers
|
|
144
103
|
|
|
145
|
-
|
|
146
|
-
return ChatOpenAI(**kwargs)
|
|
147
|
-
except (ValueError, httpx.HTTPError) as err:
|
|
148
|
-
error_msg = f"Failed to build model: {err!s}"
|
|
149
|
-
self.log(error_msg)
|
|
150
|
-
raise ValueError(error_msg) from err
|
|
151
|
-
|
|
152
|
-
def _get_exception_message(self, e: Exception) -> str | None:
|
|
153
|
-
"""Get a message from an OpenRouter exception.
|
|
154
|
-
|
|
155
|
-
Args:
|
|
156
|
-
e (Exception): The exception to get the message from.
|
|
157
|
-
|
|
158
|
-
Returns:
|
|
159
|
-
str | None: The message from the exception, or None if no specific message can be extracted.
|
|
160
|
-
"""
|
|
161
|
-
try:
|
|
162
|
-
from openai import BadRequestError
|
|
163
|
-
|
|
164
|
-
if isinstance(e, BadRequestError):
|
|
165
|
-
message = e.body.get("message")
|
|
166
|
-
if message:
|
|
167
|
-
return message
|
|
168
|
-
except ImportError:
|
|
169
|
-
pass
|
|
170
|
-
return None
|
|
171
|
-
|
|
172
|
-
def update_build_config(self, build_config: dict, field_value: str, field_name: str | None = None) -> dict:
|
|
173
|
-
"""Update build configuration based on field updates."""
|
|
174
|
-
try:
|
|
175
|
-
if field_name is None or field_name == "provider":
|
|
176
|
-
provider_models = self.fetch_models()
|
|
177
|
-
build_config["provider"]["options"] = sorted(provider_models.keys())
|
|
178
|
-
if build_config["provider"]["value"] not in provider_models:
|
|
179
|
-
build_config["provider"]["value"] = build_config["provider"]["options"][0]
|
|
180
|
-
|
|
181
|
-
if field_name == "provider" and field_value in self.fetch_models():
|
|
182
|
-
provider_models = self.fetch_models()
|
|
183
|
-
models = provider_models[field_value]
|
|
184
|
-
|
|
185
|
-
build_config["model_name"]["options"] = [model["id"] for model in models]
|
|
186
|
-
if models:
|
|
187
|
-
build_config["model_name"]["value"] = models[0]["id"]
|
|
188
|
-
|
|
189
|
-
tooltips = {
|
|
190
|
-
model["id"]: (f"{model['name']}\nContext Length: {model['context_length']}\n{model['description']}")
|
|
191
|
-
for model in models
|
|
192
|
-
}
|
|
193
|
-
build_config["model_name"]["tooltips"] = tooltips
|
|
194
|
-
|
|
195
|
-
except httpx.HTTPError as e:
|
|
196
|
-
self.log(f"Error updating build config: {e!s}")
|
|
197
|
-
build_config["provider"]["options"] = ["Error loading providers"]
|
|
198
|
-
build_config["provider"]["value"] = "Error loading providers"
|
|
199
|
-
build_config["model_name"]["options"] = ["Error loading models"]
|
|
200
|
-
build_config["model_name"]["value"] = "Error loading models"
|
|
201
|
-
|
|
202
|
-
return build_config
|
|
104
|
+
return ChatOpenAI(**kwargs)
|
|
@@ -154,7 +154,7 @@ class Component(CustomComponent):
|
|
|
154
154
|
self.trace_type = "chain"
|
|
155
155
|
|
|
156
156
|
# Setup inputs and outputs
|
|
157
|
-
self.
|
|
157
|
+
self.reset_all_output_values()
|
|
158
158
|
if self.inputs is not None:
|
|
159
159
|
self.map_inputs(self.inputs)
|
|
160
160
|
self.map_outputs()
|
|
@@ -330,7 +330,8 @@ class Component(CustomComponent):
|
|
|
330
330
|
def set_event_manager(self, event_manager: EventManager | None = None) -> None:
|
|
331
331
|
self._event_manager = event_manager
|
|
332
332
|
|
|
333
|
-
def
|
|
333
|
+
def reset_all_output_values(self) -> None:
|
|
334
|
+
"""Reset all output values to UNDEFINED."""
|
|
334
335
|
if isinstance(self._outputs_map, dict):
|
|
335
336
|
for output in self._outputs_map.values():
|
|
336
337
|
output.value = UNDEFINED
|
lfx/graph/graph/base.py
CHANGED
lfx/graph/graph/schema.py
CHANGED
|
@@ -4,11 +4,12 @@ from typing import TYPE_CHECKING, NamedTuple, Protocol
|
|
|
4
4
|
|
|
5
5
|
from typing_extensions import NotRequired, TypedDict
|
|
6
6
|
|
|
7
|
+
from lfx.graph.edge.schema import EdgeData
|
|
8
|
+
from lfx.graph.vertex.schema import NodeData
|
|
9
|
+
|
|
7
10
|
if TYPE_CHECKING:
|
|
8
|
-
from lfx.graph.edge.schema import EdgeData
|
|
9
11
|
from lfx.graph.schema import ResultData
|
|
10
12
|
from lfx.graph.vertex.base import Vertex
|
|
11
|
-
from lfx.graph.vertex.schema import NodeData
|
|
12
13
|
from lfx.schema.log import LoggableType
|
|
13
14
|
|
|
14
15
|
|
lfx/graph/vertex/vertex_types.py
CHANGED
|
@@ -65,7 +65,7 @@ class ComponentVertex(Vertex):
|
|
|
65
65
|
self.built_object, self.artifacts = result
|
|
66
66
|
elif len(result) == 3: # noqa: PLR2004
|
|
67
67
|
self.custom_component, self.built_object, self.artifacts = result
|
|
68
|
-
self.logs = self.custom_component.
|
|
68
|
+
self.logs = self.custom_component.get_output_logs()
|
|
69
69
|
for key in self.artifacts:
|
|
70
70
|
if self.artifacts_raw is None:
|
|
71
71
|
self.artifacts_raw = {}
|
lfx/io/schema.py
CHANGED
|
@@ -137,6 +137,12 @@ def schema_to_langflow_inputs(schema: type[BaseModel]) -> list[InputTypes]:
|
|
|
137
137
|
|
|
138
138
|
is_list = False
|
|
139
139
|
|
|
140
|
+
# Handle unparameterized list (e.g., coming from nullable array schemas)
|
|
141
|
+
# Treat it as a list of strings for input purposes
|
|
142
|
+
if ann is list:
|
|
143
|
+
is_list = True
|
|
144
|
+
ann = str
|
|
145
|
+
|
|
140
146
|
if get_origin(ann) is list:
|
|
141
147
|
is_list = True
|
|
142
148
|
ann = get_args(ann)[0]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lfx-nightly
|
|
3
|
-
Version: 0.1.13.
|
|
3
|
+
Version: 0.1.13.dev5
|
|
4
4
|
Summary: Langflow Executor - A lightweight CLI tool for executing and serving Langflow AI flows
|
|
5
5
|
Author-email: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
|
|
6
6
|
Requires-Python: <3.14,>=3.10
|
|
@@ -4,7 +4,7 @@ lfx/constants.py,sha256=Ert_SpwXhutgcTKEvtDArtkONXgyE5x68opMoQfukMA,203
|
|
|
4
4
|
lfx/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
lfx/settings.py,sha256=wnx4zkOLQ8mvampYsnnvVV9GvEnRUuWQpKFSbFTCIp4,181
|
|
6
6
|
lfx/type_extraction.py,sha256=eCZNl9nAQivKdaPv_9BK71N0JV9Rtr--veAht0dnQ4A,2921
|
|
7
|
-
lfx/_assets/component_index.json,sha256=
|
|
7
|
+
lfx/_assets/component_index.json,sha256=2hSLAb9KQz76HrOJ6qanuKq_sdO7QBEROA6qTcrhocg,3525354
|
|
8
8
|
lfx/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
lfx/base/constants.py,sha256=v9vo0Ifg8RxDu__XqgGzIXHlsnUFyWM-SSux0uHHoz8,1187
|
|
10
10
|
lfx/base/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -23,7 +23,7 @@ lfx/base/astra_assistants/util.py,sha256=T_W44VFoOXBF3m-0eCSrHvzbKx1gdyBF9IAWKMX
|
|
|
23
23
|
lfx/base/chains/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
24
|
lfx/base/chains/model.py,sha256=QSYJBc0Ygpx2Ko273u1idL_gPK2xpvRQgJb4oTx8x8s,766
|
|
25
25
|
lfx/base/composio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
|
-
lfx/base/composio/composio_base.py,sha256=
|
|
26
|
+
lfx/base/composio/composio_base.py,sha256=3mcseDIDIj25oKDsTnnelvSq8dIImzrFJDmkcNSWOy0,132478
|
|
27
27
|
lfx/base/compressors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
28
|
lfx/base/compressors/model.py,sha256=-FFBAPAy9bAgvklIo7x_uwShZR5NoMHakF6f_hNnLHg,2098
|
|
29
29
|
lfx/base/curl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -33,7 +33,7 @@ lfx/base/data/base_file.py,sha256=UKpF9BsNHgg-cdB1uVB8F00czvCTLfks320aLg3F_kM,28
|
|
|
33
33
|
lfx/base/data/docling_utils.py,sha256=gVDxOZghSJEo5n-UNkVGBQYqkvfNqkNkltBhAnoaJd4,13048
|
|
34
34
|
lfx/base/data/utils.py,sha256=dGqEO4zE5s_V2Cs4j0EEeyLjYLX6Zex-EGzIOznK76o,5960
|
|
35
35
|
lfx/base/datastax/__init__.py,sha256=s72q8NeqlMuNXb5WcYR2DTIuWOiBtfX23Z_Zte2PHGo,90
|
|
36
|
-
lfx/base/datastax/astradb_base.py,sha256
|
|
36
|
+
lfx/base/datastax/astradb_base.py,sha256=-6ROQSZtJ1tBXH6984bau-O4nl7NzB8C7Sz9T81YCdI,36776
|
|
37
37
|
lfx/base/document_transformers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
38
38
|
lfx/base/document_transformers/model.py,sha256=etVEmyakiEgflB-fayClPnFRhaEdXfdUu4cqpgtk8ek,1317
|
|
39
39
|
lfx/base/embeddings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -44,7 +44,7 @@ lfx/base/flow_processing/utils.py,sha256=G-MhVp_W9xdNVYrajovky31bNWgUqq5H4GDlEDW
|
|
|
44
44
|
lfx/base/huggingface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
45
|
lfx/base/huggingface/model_bridge.py,sha256=pObEcu70zRdSZItl9P5SfxdpxTQJeE9Sp79ISbGcoy0,4800
|
|
46
46
|
lfx/base/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
|
-
lfx/base/io/chat.py,sha256=
|
|
47
|
+
lfx/base/io/chat.py,sha256=9FjHtd8Qjl8TqNSCuij5LSO1HGs0FNreGFBZa8F-Edw,1016
|
|
48
48
|
lfx/base/io/text.py,sha256=uW2vdNIccZUzv0FUVafo4W-lOhm8YFJOMV2qytGYHPk,748
|
|
49
49
|
lfx/base/knowledge_bases/__init__.py,sha256=qn65fdRRbwoD1qxHd45sze1ylESqPJaq76TvBysLXbg,151
|
|
50
50
|
lfx/base/knowledge_bases/knowledge_base_utils.py,sha256=yxYm5DTk-TPkibFH_z44jql_MA21y_HaNbk7WZ3eW1Q,4399
|
|
@@ -55,7 +55,7 @@ lfx/base/langwatch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuF
|
|
|
55
55
|
lfx/base/langwatch/utils.py,sha256=N7rH3sRwgmNQzG0pKjj4wr_ans_drwtvkx4BQt-B0WA,457
|
|
56
56
|
lfx/base/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
57
57
|
lfx/base/mcp/constants.py,sha256=-1XnJxejlqm9zs1R91qGtOeX-_F1ZpdHVzCIqUCvhgE,62
|
|
58
|
-
lfx/base/mcp/util.py,sha256=
|
|
58
|
+
lfx/base/mcp/util.py,sha256=PpXfEpZTzPcwLXqKimBNh37k3s21wRErxKnNXIUd980,71844
|
|
59
59
|
lfx/base/memory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
60
60
|
lfx/base/memory/memory.py,sha256=kZ-aZoHvRW4PJAgY1LUt5UBj7YXbos_aVBPGjC1EFCY,1835
|
|
61
61
|
lfx/base/memory/model.py,sha256=2oDORZV_l-DHLx9j9--wYprQUIYKOb8aTJpXmR1qOLw,1330
|
|
@@ -76,6 +76,7 @@ lfx/base/models/novita_constants.py,sha256=_mgBYGwpddUw4CLhLKJl-psOUzA_SQGHrfZJU
|
|
|
76
76
|
lfx/base/models/ollama_constants.py,sha256=FM0BPEtuEmIoH2K1t6tTh5h_H2bK7-YSXe0x4-F4Mik,973
|
|
77
77
|
lfx/base/models/openai_constants.py,sha256=DSlnUjmtb6KXQNDifxop4VVQPvB1Y9vftK6ZmFiudf4,4798
|
|
78
78
|
lfx/base/models/sambanova_constants.py,sha256=mYPF7vUbMow9l4jQ2OJrIkAJhGs3fGWTCVNfG3oQZTc,519
|
|
79
|
+
lfx/base/models/watsonx_constants.py,sha256=lR0hOxcrQwHSMTH_49fmYlGJJb6KEeeyoUeXK8PUBf4,792
|
|
79
80
|
lfx/base/processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
80
81
|
lfx/base/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
81
82
|
lfx/base/prompts/api_utils.py,sha256=f1LHI6w4sVrSXxfi8zE9bfdre73sFrGtxr96VoLJByU,8032
|
|
@@ -93,7 +94,7 @@ lfx/base/vectorstores/model.py,sha256=pDAZ6D6XnMxGAV9hJjc3DYhjI9n77sc_FIs5lnpsDb
|
|
|
93
94
|
lfx/base/vectorstores/utils.py,sha256=OhBNYs9Z9poe82rTNFPdrESNRGuP6RO6-eOpwqJLBG0,750
|
|
94
95
|
lfx/base/vectorstores/vector_store_connection_decorator.py,sha256=2gh3DMhcMsCgVYFEFaVNMT3zsbd-fkFy5Bl_-jXDu8c,1998
|
|
95
96
|
lfx/cli/__init__.py,sha256=Oy17zrnwBlwJn80sMGyRJXos2n2eQGvSsh9CS_-v2R4,113
|
|
96
|
-
lfx/cli/commands.py,sha256=
|
|
97
|
+
lfx/cli/commands.py,sha256=kDqZj78QE0tcPCB-k8pTy6D_nRUFkUW2lsFGn7GQlU0,11898
|
|
97
98
|
lfx/cli/common.py,sha256=SvszBhWoOttM27rButhBOpvE8lO5UGMYL0NaG_OW8bc,22060
|
|
98
99
|
lfx/cli/run.py,sha256=U4oKC21-jOu1mBTkWI4aASnvKuzi_ak3egZEci51ofU,21593
|
|
99
100
|
lfx/cli/script_loader.py,sha256=xWSpx57cBeX0UHmUgAk97aye9-hhD2Y6nKh68A-xaTA,8997
|
|
@@ -115,21 +116,21 @@ lfx/components/Notion/update_page_property.py,sha256=tgmPMbD1eX58dQQNXv1w5FzDec7
|
|
|
115
116
|
lfx/components/agentql/__init__.py,sha256=Erl669Dzsk-SegsDPWTtkKbprMXVuv8UTCo5REzZGTc,56
|
|
116
117
|
lfx/components/agentql/agentql_api.py,sha256=N94yEK7ZuQCIsFBlr_8dqrJY-K1-KNb6QEEYfDIsDME,5569
|
|
117
118
|
lfx/components/agents/__init__.py,sha256=UBu5kO9hp8yFyxTU-u9KHN9zTSoHhJSYdKtRuT5ig9c,1164
|
|
118
|
-
lfx/components/agents/agent.py,sha256
|
|
119
|
-
lfx/components/agents/cuga_agent.py,sha256=
|
|
120
|
-
lfx/components/agents/mcp_component.py,sha256=
|
|
119
|
+
lfx/components/agents/agent.py,sha256=-pGSOYS-2pHoYq5VyNdDCnkQVzVz52as4hdF_BB1hVI,26993
|
|
120
|
+
lfx/components/agents/cuga_agent.py,sha256=JNi4MsSziTJQI3z_0KGzNWxm5RDaMk_W9zcTW2KcTtI,44499
|
|
121
|
+
lfx/components/agents/mcp_component.py,sha256=I8xAV7qGy67uV_4R6lrM4f6EOa9cFPQZDIcP3tiMuYk,26208
|
|
121
122
|
lfx/components/aiml/__init__.py,sha256=DNKB-HMFGFYmsdkON-s8557ttgBXVXADmS-BcuSQiIQ,1087
|
|
122
123
|
lfx/components/aiml/aiml.py,sha256=23Ineg1ajlCoqXgWgp50I20OnQbaleRNsw1c6IzPu3A,3877
|
|
123
124
|
lfx/components/aiml/aiml_embeddings.py,sha256=2uNwORuj55mxn2SfLbh7oAIfjuXwHbsnOqRjfMtQRqc,1095
|
|
124
125
|
lfx/components/amazon/__init__.py,sha256=QRsw-7ytuqZWhNPmlslCQEcpNsAw6dX5FV_8ihUdlPQ,1338
|
|
125
|
-
lfx/components/amazon/amazon_bedrock_converse.py,sha256=
|
|
126
|
+
lfx/components/amazon/amazon_bedrock_converse.py,sha256=VMM1-Gmf-XUfaW-LChb4DnFUF_5LfA1LIo84kmjvUGE,8195
|
|
126
127
|
lfx/components/amazon/amazon_bedrock_embedding.py,sha256=cNA5_3nwkegWS3BY75IfjOwpo-g8dpg-EgtQJSgVXfg,4261
|
|
127
128
|
lfx/components/amazon/amazon_bedrock_model.py,sha256=kiCTqDG2Krbe0i5YBG9UODxwNTB9ePZwLfgNMR91UwQ,5113
|
|
128
129
|
lfx/components/amazon/s3_bucket_uploader.py,sha256=bkui2vw8ibgg4dSUYZ7yAEbVOjgmB8oOYqH-3ZvTlBQ,7688
|
|
129
130
|
lfx/components/anthropic/__init__.py,sha256=SGllKMRoX3KQkDpdzsLUYqbfTbhFu9qjpM6bQHL2syQ,965
|
|
130
131
|
lfx/components/anthropic/anthropic.py,sha256=fIlMWma6rsfQ499vkkLSWFZqwKn5ifvhFQnC_quHkEw,7289
|
|
131
132
|
lfx/components/apify/__init__.py,sha256=ADNTjMjTglvdC34YEgMYWippzrXWiH3ku_3RvRQcOlw,89
|
|
132
|
-
lfx/components/apify/apify_actor.py,sha256=
|
|
133
|
+
lfx/components/apify/apify_actor.py,sha256=n8_bD7CAbGG-6FQrUYFlZGlQzl71wGXuOqHp-bHEoYc,12850
|
|
133
134
|
lfx/components/arxiv/__init__.py,sha256=g3uhahiWz1ZALR65oBFfO-hmrHcJLb5HuUqbeTFZ2Ss,64
|
|
134
135
|
lfx/components/arxiv/arxiv.py,sha256=IZI57itI_oiu_BA3q9QQRP8bh2TqIjrcOXCR7QT_DSM,6627
|
|
135
136
|
lfx/components/assemblyai/__init__.py,sha256=H0Rt2gzDDgj6IL8laOpolIFzhueT08VaMiVetGvlt0c,1632
|
|
@@ -248,7 +249,7 @@ lfx/components/datastax/astradb_cql.py,sha256=MQthGbCvoNl2ccqtiXN97T9D9yVlsqteGK
|
|
|
248
249
|
lfx/components/datastax/astradb_graph.py,sha256=-LQlwfU1NI2Pnzm4HWNmf0UonuCogzwpI3qNX32axvc,8415
|
|
249
250
|
lfx/components/datastax/astradb_tool.py,sha256=wMbRqH2Ovj8qTr4py2Vj4i1nmehX4FWLjkynYYoiF8g,15048
|
|
250
251
|
lfx/components/datastax/astradb_vectorize.py,sha256=PZdmkMJiPAnTankXjFjdG192OeHVetxBfGzbwxgPQ54,4912
|
|
251
|
-
lfx/components/datastax/astradb_vectorstore.py,sha256
|
|
252
|
+
lfx/components/datastax/astradb_vectorstore.py,sha256=KxLNuWtnar7NNh3DFIdFmcTYbKcj7ZfLSemaTWUnUJc,18869
|
|
252
253
|
lfx/components/datastax/create_assistant.py,sha256=jZhp2aid7fxH7yrDFOECmqVZ-56g4KAY_NUTIJvNN1o,2124
|
|
253
254
|
lfx/components/datastax/create_thread.py,sha256=XUCnOsz98fVRuTgoGgD5aw6KChIeomM1ikeXfc-zGaM,1103
|
|
254
255
|
lfx/components/datastax/dotenv.py,sha256=ND6pqsobuZXUg6dYJiHkrZmwWEl5bJl0gApsTVWg5J8,1116
|
|
@@ -412,9 +413,9 @@ lfx/components/milvus/__init__.py,sha256=ZNV3umCFDejy7MhaKOfp2M-LtJnQBY1rXbRDRDC
|
|
|
412
413
|
lfx/components/milvus/milvus.py,sha256=K17-MTsx3cAVLj_5v4e_YJ3UTnS4SdJlQirKp22X1hw,4402
|
|
413
414
|
lfx/components/mistral/__init__.py,sha256=EABXqA45Tz50vZRmhEisbIIPEcRCvV9j-Y9Hf2XevHs,1094
|
|
414
415
|
lfx/components/mistral/mistral.py,sha256=4heAlIFEeq_ljUZDPpNGyK_VRkWjwCfPbBaQK1mV4NY,3718
|
|
415
|
-
lfx/components/mistral/mistral_embeddings.py,sha256=
|
|
416
|
+
lfx/components/mistral/mistral_embeddings.py,sha256=QuqS_S3yHWCacs-Nc3qalpUsb-OACRWFZenUtCD_rLQ,1963
|
|
416
417
|
lfx/components/models/__init__.py,sha256=hhfj70MkcRATzAjJnntAg1A4E7kHlQn8GT0bizkB7L4,1113
|
|
417
|
-
lfx/components/models/embedding_model.py,sha256=
|
|
418
|
+
lfx/components/models/embedding_model.py,sha256=Tk-P9K5DanE0YuXauWMW_nOi08rnAaspiqJHbNYjoeA,7543
|
|
418
419
|
lfx/components/models/language_model.py,sha256=TA24DMAXrlruY3mNsfI9qGltfQ2h9cQpxe8DW8HLdeE,5992
|
|
419
420
|
lfx/components/mongodb/__init__.py,sha256=nFOQgiIvDnWGiWDSqZ0ERQme5DpA-cQgzybUiqXQtGw,953
|
|
420
421
|
lfx/components/mongodb/mongodb_atlas.py,sha256=OlAstNMToHuvGI-8djkiGr7kdGBr927O0SE5cnVd0O0,8594
|
|
@@ -439,7 +440,7 @@ lfx/components/openai/__init__.py,sha256=G4Fgw4pmmDohdIOmzaeSCGijzKjyqFXNJPLwlcU
|
|
|
439
440
|
lfx/components/openai/openai.py,sha256=imWO1tTJ0tTLqax1v5bNBPCRINTj2f2wN8j5G-a07GI,4505
|
|
440
441
|
lfx/components/openai/openai_chat_model.py,sha256=hZO79PqSI8ppnrEQFL_NL1issX6E5iCUPCycjX_d0Fs,6969
|
|
441
442
|
lfx/components/openrouter/__init__.py,sha256=sWZTr41sX09AYpeyd2NWHQpx9jPuc1Zc4KdmErP08uM,950
|
|
442
|
-
lfx/components/openrouter/openrouter.py,sha256=
|
|
443
|
+
lfx/components/openrouter/openrouter.py,sha256=g8PDEqeiP3C5iM5QDS_ABOeE1KNS_szBsX493u1dsic,3875
|
|
443
444
|
lfx/components/output_parsers/__init__.py,sha256=aZ7X5AJUmAOVa9BZPSqQKALpF4ZFiZD-M2mad34zj-w,67
|
|
444
445
|
lfx/components/perplexity/__init__.py,sha256=jITrDKNSr0CWAMIvoEaHSYkRG1OGy3zBOYIgblt5tNE,932
|
|
445
446
|
lfx/components/perplexity/perplexity.py,sha256=uXCETjdu7XaIH9XJYhEeKOOGeDbTOA0JJElEbuxTQ6E,2764
|
|
@@ -569,7 +570,7 @@ lfx/custom/code_parser/__init__.py,sha256=qIwZQdEp1z7ldn0z-GY44wmwRaywN3L6VPoPt6
|
|
|
569
570
|
lfx/custom/code_parser/code_parser.py,sha256=QAqsp4QF607319dClK60BsaiwZLV55n0xeGR-DthSoE,14280
|
|
570
571
|
lfx/custom/custom_component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
571
572
|
lfx/custom/custom_component/base_component.py,sha256=Pxi-qCocrGIwcG0x5fu-7ty1Py71bl_KG9Fku5SeO_M,4053
|
|
572
|
-
lfx/custom/custom_component/component.py,sha256=
|
|
573
|
+
lfx/custom/custom_component/component.py,sha256=rrtW0Ck0RtCIgyU7GfyY0IoR9Qk-70-7SzMdEXg5em4,75845
|
|
573
574
|
lfx/custom/custom_component/component_with_cache.py,sha256=por6CiPL3EHdLp_DvfI7qz1n4tc1KkqMOJNbsxoqVaI,313
|
|
574
575
|
lfx/custom/custom_component/custom_component.py,sha256=801FjGiQk7M7GD3CbU19AmCVS5KZjPVcKUy_wBXnm0o,22301
|
|
575
576
|
lfx/custom/directory_reader/__init__.py,sha256=eFjlhKjpt2Kha_sJ2EqWofLRbpvfOTjvDSCpdpaTqWk,77
|
|
@@ -591,10 +592,10 @@ lfx/graph/edge/schema.py,sha256=bKlprxymeV04bTMw3jDLpYQAA3eRc4BIdD_-4XGGU3c,3806
|
|
|
591
592
|
lfx/graph/edge/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
592
593
|
lfx/graph/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
593
594
|
lfx/graph/graph/ascii.py,sha256=-jYWI_Zmz24mfLOxJrzIINZ0dbQgd9PXJfqwZa03xas,6211
|
|
594
|
-
lfx/graph/graph/base.py,sha256
|
|
595
|
+
lfx/graph/graph/base.py,sha256=H1Be8kSvHuA5qNlGCS_AeIW8k2VaCZ_3mEt9ak_fXAk,96047
|
|
595
596
|
lfx/graph/graph/constants.py,sha256=jwjl4RydV_k_zawbI8FIgiLHeBBgH-cStVitxxSyXQs,1641
|
|
596
597
|
lfx/graph/graph/runnable_vertices_manager.py,sha256=c-qQP3koKyAsIADDSONiiz4FIRIn6q5kAMX6EQIBBfA,6148
|
|
597
|
-
lfx/graph/graph/schema.py,sha256=
|
|
598
|
+
lfx/graph/graph/schema.py,sha256=1a8pictdRVN6ByqpvhOYu7heDeVs7A3eGpZuYIF7kaY,1086
|
|
598
599
|
lfx/graph/graph/state_model.py,sha256=OJYIffeQ_3djtMdIsMmYduLr2JbX9GQ5N_SJ_PZeHJ4,2925
|
|
599
600
|
lfx/graph/graph/utils.py,sha256=rsUaMjhpZzyIFD8QSf-G5J5PDTPFNJXxV5zDs5eLPqw,37745
|
|
600
601
|
lfx/graph/state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -606,7 +607,7 @@ lfx/graph/vertex/exceptions.py,sha256=QTe-7TRCI0TXswRZh1kh0Z3KySjQsJgY5zTU6o0jbo
|
|
|
606
607
|
lfx/graph/vertex/param_handler.py,sha256=o6RmGvdo8rzasIZaalkAvC3LJA7oS8ETqpmXnOtarI8,12887
|
|
607
608
|
lfx/graph/vertex/schema.py,sha256=3h6c7TTdZI1mzfAebhD-6CCCRLu1mQ8UDmgJijx5zWg,552
|
|
608
609
|
lfx/graph/vertex/utils.py,sha256=iJmY4PXta5dYWTX2SMEbpfMKrzwkJVQmi8qstSv8D7I,738
|
|
609
|
-
lfx/graph/vertex/vertex_types.py,sha256=
|
|
610
|
+
lfx/graph/vertex/vertex_types.py,sha256=pHSzH0ePGWmYCbD67QlG3_kxRpM4OHbs3S6FYDj6Tjw,21145
|
|
610
611
|
lfx/helpers/__init__.py,sha256=XUsPqOxQNoleWGC4EtVxqgaEQjR4cHsHOsyJ3Kjm88I,2912
|
|
611
612
|
lfx/helpers/base_model.py,sha256=EiBdNJVE83BNKsg-IedyZYd78Mbl0m7BN2XTFeTlBhw,1956
|
|
612
613
|
lfx/helpers/custom.py,sha256=9Z6rVfIrih27qsGkV1lzVpkK-ifpQuOaGSUog_w4asM,306
|
|
@@ -627,7 +628,7 @@ lfx/interface/importing/utils.py,sha256=-3-M4MSzA_2zlwRWy1SdJHDsjeRkFvWZaTynITRj
|
|
|
627
628
|
lfx/interface/initialize/__init__.py,sha256=wxisnaYxjaqrjA_-By2oHmd4Fht5lAAJFYrotkPm7HA,45
|
|
628
629
|
lfx/interface/initialize/loading.py,sha256=WF6sp20wYvY52nKbAQpPDrzGKBHwW5xEz45qnGZBc_o,12229
|
|
629
630
|
lfx/io/__init__.py,sha256=hIH6GC2gKdupGZVyRqrbOIm9UyUhNqIga8z1jd4ri2w,1131
|
|
630
|
-
lfx/io/schema.py,sha256=
|
|
631
|
+
lfx/io/schema.py,sha256=aYkidiHBkD1AHUelj2UQpzIHLdIBEi0-NnzLucniufU,10618
|
|
631
632
|
lfx/load/__init__.py,sha256=y35GBUhVTOsG3GzL5UVL-RNAsu0D7T8MVPrNXoDMx7U,224
|
|
632
633
|
lfx/load/load.py,sha256=mpQG2RV2ZOysShEOguWKdnQI9TUub1Ds5j89ZbwiQhA,10451
|
|
633
634
|
lfx/load/utils.py,sha256=qa8aoMLW-X8FO8xVz3YVHQwjTSJYbYr_AOQAAp3smlc,3705
|
|
@@ -728,7 +729,7 @@ lfx/utils/schemas.py,sha256=NbOtVQBrn4d0BAu-0H_eCTZI2CXkKZlRY37XCSmuJwc,3865
|
|
|
728
729
|
lfx/utils/util.py,sha256=Ww85wbr1-vjh2pXVtmTqoUVr6MXAW8S7eDx_Ys6HpE8,20696
|
|
729
730
|
lfx/utils/util_strings.py,sha256=nU_IcdphNaj6bAPbjeL-c1cInQPfTBit8mp5Y57lwQk,1686
|
|
730
731
|
lfx/utils/version.py,sha256=cHpbO0OJD2JQAvVaTH_6ibYeFbHJV0QDHs_YXXZ-bT8,671
|
|
731
|
-
lfx_nightly-0.1.13.
|
|
732
|
-
lfx_nightly-0.1.13.
|
|
733
|
-
lfx_nightly-0.1.13.
|
|
734
|
-
lfx_nightly-0.1.13.
|
|
732
|
+
lfx_nightly-0.1.13.dev5.dist-info/METADATA,sha256=MueKtIgEmw2SHmgw7_qhLXEtkrf34M1Ho8e21VdQkTs,8289
|
|
733
|
+
lfx_nightly-0.1.13.dev5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
734
|
+
lfx_nightly-0.1.13.dev5.dist-info/entry_points.txt,sha256=1724p3RHDQRT2CKx_QRzEIa7sFuSVO0Ux70YfXfoMT4,42
|
|
735
|
+
lfx_nightly-0.1.13.dev5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|