langgraph-executor 0.0.1a7__tar.gz → 0.0.1a9__tar.gz
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.
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/.gitignore +3 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/PKG-INFO +2 -2
- langgraph_executor-0.0.1a9/langgraph_executor/__init__.py +1 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/executor_base.py +47 -15
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/pyproject.toml +2 -2
- langgraph_executor-0.0.1a7/langgraph_executor/__init__.py +0 -1
- langgraph_executor-0.0.1a7/langgraph_executor/setup.sh +0 -29
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/README.md +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/__init__.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/patch.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/utils.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/common.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/example.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/execute_task.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/executor.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/extract_graph.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/info_logger.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/__init__.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2_grpc.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2_grpc.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2_grpc.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2_grpc.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2_grpc.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2_grpc.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2_grpc.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2_grpc.pyi +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/py.typed +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/serde.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/server.py +0 -0
- {langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/stream_utils.py +0 -0
@@ -1,11 +1,11 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: langgraph-executor
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.1a9
|
4
4
|
Summary: LangGraph python RPC server executable by the langgraph-go orchestrator.
|
5
5
|
Requires-Python: >=3.11
|
6
6
|
Requires-Dist: grpcio>=1.73.1
|
7
7
|
Requires-Dist: langgraph>=0.6.5
|
8
|
-
Requires-Dist: protobuf
|
8
|
+
Requires-Dist: protobuf<7,>=6.31.1
|
9
9
|
Requires-Dist: psutil>=7.0.0
|
10
10
|
Description-Content-Type: text/markdown
|
11
11
|
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "0.0.1a9"
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/executor_base.py
RENAMED
@@ -91,14 +91,16 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
91
91
|
get_graph: GetGraph,
|
92
92
|
runtime_channel: grpc.Channel | None = None,
|
93
93
|
logger: Logger | None = None,
|
94
|
-
on_message:
|
95
|
-
[
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
94
|
+
on_message: (
|
95
|
+
Callable[
|
96
|
+
[
|
97
|
+
BaseMessageChunk,
|
98
|
+
dict[str, Any],
|
99
|
+
],
|
100
|
+
None,
|
101
|
+
]
|
102
|
+
| None
|
103
|
+
) = None,
|
102
104
|
on_custom: Callable[[Any], None] | None = None,
|
103
105
|
get_store: Callable[[], Awaitable[BaseStore]] | None = None,
|
104
106
|
):
|
@@ -143,7 +145,9 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
143
145
|
) -> executor_pb2.GetGraphResponse: # type: ignore[name-defined]
|
144
146
|
"""Get graph definition."""
|
145
147
|
try:
|
146
|
-
self.logger.debug(
|
148
|
+
self.logger.debug(
|
149
|
+
"GetGraph called", extra={"graph_name": request.graph_name}
|
150
|
+
)
|
147
151
|
graph_name: str = request.graph_name
|
148
152
|
return await self._get_graph_definition(graph_name)
|
149
153
|
|
@@ -183,7 +187,14 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
183
187
|
self, request: Any, context: grpc.aio.ServicerContext
|
184
188
|
) -> executor_pb2.ChannelsFromCheckpointResponse: # type: ignore[name-defined]
|
185
189
|
try:
|
186
|
-
self.logger.debug(
|
190
|
+
self.logger.debug(
|
191
|
+
"ChannelsFromCheckpoint called",
|
192
|
+
extra={
|
193
|
+
"graph_name": request.graph_name,
|
194
|
+
"specs": request.specs,
|
195
|
+
"checkpoint_channel_values": request.checkpoint_channel_values,
|
196
|
+
},
|
197
|
+
)
|
187
198
|
async with self.get_graph(request.graph_name, RunnableConfig()) as graph:
|
188
199
|
# reconstruct specs
|
189
200
|
specs, _ = reconstruct_channels(
|
@@ -215,11 +226,16 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
215
226
|
request_iterator: Iterator[executor_pb2.ExecuteTaskRequest], # type: ignore[name-defined]
|
216
227
|
context: grpc.aio.ServicerContext,
|
217
228
|
) -> AsyncIterator[executor_pb2.ExecuteTaskResponse]: # type: ignore[name-defined]
|
218
|
-
self.logger.debug("ExecuteTask called")
|
219
|
-
|
220
|
-
# Right now, only handle task execution without interrupts, etc
|
221
229
|
try:
|
222
230
|
request = await _get_init_request(request_iterator)
|
231
|
+
self.logger.debug(
|
232
|
+
"ExecuteTask called",
|
233
|
+
extra={
|
234
|
+
"graph_name": request.graph_name,
|
235
|
+
"task": request.task,
|
236
|
+
"stream_modes": request.stream_modes,
|
237
|
+
},
|
238
|
+
)
|
223
239
|
config = reconstruct_config(request.task.config)
|
224
240
|
store = await self.get_store() if self.get_store is not None else None
|
225
241
|
async with self.get_graph(request.graph_name, config) as graph:
|
@@ -338,7 +354,15 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
338
354
|
self, request: Any, context: grpc.aio.ServicerContext
|
339
355
|
) -> executor_pb2.ApplyWritesResponse: # type: ignore[name-defined]
|
340
356
|
# get graph
|
341
|
-
self.logger.debug(
|
357
|
+
self.logger.debug(
|
358
|
+
"ApplyWrites called",
|
359
|
+
extra={
|
360
|
+
"graph_name": request.graph_name,
|
361
|
+
"tasks": request.tasks,
|
362
|
+
"channels": request.channels,
|
363
|
+
"checkpoint": request.checkpoint,
|
364
|
+
},
|
365
|
+
)
|
342
366
|
try:
|
343
367
|
async with self.get_graph(request.graph_name, RunnableConfig()) as graph:
|
344
368
|
channels, _ = reconstruct_channels(
|
@@ -382,7 +406,15 @@ class LangGraphExecutorServicer(executor_pb2_grpc.LangGraphExecutorServicer):
|
|
382
406
|
request: executor_pb2.StateUpdateRequest,
|
383
407
|
context: grpc.aio.ServicerContext,
|
384
408
|
) -> executor_pb2.TaskResult | None:
|
385
|
-
self.logger.debug(
|
409
|
+
self.logger.debug(
|
410
|
+
"StateUpdate called",
|
411
|
+
extra={
|
412
|
+
"graph_name": request.graph_name,
|
413
|
+
"node_name": request.node_name,
|
414
|
+
"task_id": request.task_id,
|
415
|
+
"values": request.values,
|
416
|
+
},
|
417
|
+
)
|
386
418
|
|
387
419
|
try:
|
388
420
|
async with self.get_graph(request.graph_name, RunnableConfig()) as graph:
|
@@ -11,7 +11,7 @@ readme = "README.md"
|
|
11
11
|
requires-python = ">=3.11"
|
12
12
|
dependencies = [
|
13
13
|
"grpcio>=1.73.1",
|
14
|
-
"protobuf>=
|
14
|
+
"protobuf>=6.31.1,<7",
|
15
15
|
"langgraph>=0.6.5",
|
16
16
|
"psutil>=7.0.0",
|
17
17
|
]
|
@@ -99,4 +99,4 @@ patterns = ["*.py", "../api/**/*.py"]
|
|
99
99
|
# https://docs.pytest.org/en/7.1.x/reference/reference.html
|
100
100
|
# --strict-config any warnings encountered while parsing the `pytest`
|
101
101
|
# section of the configuration file raise errors.
|
102
|
-
addopts = "--strict-markers --strict-config --durations=5 -vv"
|
102
|
+
addopts = "--strict-markers --strict-config --durations=5 -vv"
|
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = "0.0.1a7"
|
@@ -1,29 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
|
3
|
-
echo "Setting up Python environment..."
|
4
|
-
|
5
|
-
# Create virtual environment if it doesn't exist
|
6
|
-
if [ ! -d ".venv" ]; then
|
7
|
-
echo "Creating virtual environment..."
|
8
|
-
python -m venv .venv
|
9
|
-
fi
|
10
|
-
|
11
|
-
# Activate virtual environment
|
12
|
-
source .venv/bin/activate
|
13
|
-
|
14
|
-
# Install dependencies
|
15
|
-
echo "Installing dependencies..."
|
16
|
-
python -m pip install -r requirements.txt
|
17
|
-
|
18
|
-
# Deactivate environment
|
19
|
-
deactivate
|
20
|
-
|
21
|
-
# Generate protobuf files
|
22
|
-
# echo "Generating Python protobuf files..."
|
23
|
-
# source .venv/bin/activate
|
24
|
-
# ./generate_proto.sh
|
25
|
-
|
26
|
-
echo "Python setup complete!"
|
27
|
-
echo ""
|
28
|
-
echo "To activate the environment:"
|
29
|
-
echo " source .venv/bin/activate"
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/__init__.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/patch.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/client/utils.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/execute_task.py
RENAMED
File without changes
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/extract_graph.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/executor_pb2_grpc.py
RENAMED
File without changes
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2_grpc.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/graph_pb2_grpc.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2_grpc.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/runtime_pb2_grpc.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2.pyi
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2_grpc.py
RENAMED
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/pb/types_pb2_grpc.pyi
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{langgraph_executor-0.0.1a7 → langgraph_executor-0.0.1a9}/langgraph_executor/stream_utils.py
RENAMED
File without changes
|