Skip to main content

Crate lellm_graph

Crate lellm_graph 

Source
Expand description

lellm-graph — Graph/Node/Edge 编排层 + 状态管理 + Checkpoint。

通用工作流引擎(类似 LangGraph / Temporal / Prefect)。

Re-exports§

pub use checkpoint::TraceId;
pub use ids::SpanId;
pub use state::ExecutionEntry;
pub use state::GraphResult;
pub use state::State;
pub use state::StateError;
pub use state::StateExt;
pub use state::StateMerge;
pub use state::StateMutation;
pub use state::StateReducer;
pub use state::array_reducer;
pub use statekey::Reducer;
pub use statekey::SK_COUNT;
pub use statekey::SK_ITERATIONS;
pub use statekey::SK_MESSAGES;
pub use statekey::SK_OUTPUT_TOKENS;
pub use statekey::SK_PENDING_TOOL_CALLS;
pub use statekey::SK_REASONING_TOKENS;
pub use statekey::SK_STEPS;
pub use statekey::SK_TOTAL_TOOL_CALLS;
pub use statekey::StateKey;
pub use statekey::StateKeyExt;
pub use checkpoint::Checkpoint;
pub use checkpoint::CheckpointBlob;
pub use checkpoint::CheckpointId;
pub use checkpoint::CheckpointPolicy;Deprecated
pub use checkpoint::CheckpointStoreError;
pub use checkpoint::NodeId;
pub use checkpoint_policy::RetentionPolicy;
pub use checkpoint_policy::TriggerPolicy;
pub use checkpoint_codec::CheckpointCodec;
pub use checkpoint_codec::SerdeCheckpointCodec;
pub use checkpoint_codec::TypedCheckpointStore;
pub use store::BlobCheckpointStore;
pub use store::InMemoryBlobStore;
pub use error::BuildError;
pub use error::BuildErrors;
pub use error::Diagnostic;
pub use error::DiagnosticCategory;
pub use error::DiagnosticSeverity;
pub use error::GraphDiagnostics;
pub use error::GraphError;
pub use error::ObservedError;
pub use error::TerminalError;
pub use event::BarrierDecision;
pub use event::BarrierId;
pub use event::FlowEvent;
pub use event::GraphEvent;
pub use event::GraphExecution;
pub use event::GraphHandle;
pub use event::GraphStream;
pub use graph::Edge;
pub use graph::Graph;
pub use graph::GraphBuilder;
pub use graph_analysis::CycleAnalysis;
pub use node::BarrierDefaultAction;
pub use node::BarrierNode;
pub use node::BranchCondition;
pub use node::ConditionNode;
pub use node::ConditionNodeBuilder;
pub use node::ExecutorOperation;
pub use node::FlowNode;
pub use node::LeafNode;
pub use node::NodeKind;
pub use node::ParallelErrorStrategy;
pub use node::ParallelNode;
pub use node::ParallelNodeBuilder;
pub use node::TaskFn;
pub use node::TaskNode;
pub use compiled_subgraph::CompiledSubgraph;
pub use compiled_subgraph::StateProjector;
pub use state_lens::IdentityLens;
pub use state_lens::StateLens;
pub use subgraph_spec::SubgraphSpec;
pub use session::ExecutionSession;
pub use session::SessionCheckpoint;
pub use session::SessionError;
pub use test_executor::SimpleExecutor;
pub use execution_engine::ExecutionContext;
pub use execution_engine::ExecutionControl;
pub use execution_engine::ExecutionEngine;
pub use execution_engine::ExecutionSignal;
pub use execution_engine::ExecutionView;
pub use execution_engine::ExecutorState;
pub use execution_engine::NextAction;
pub use execution_engine::NodeMetadata;
pub use execution_engine::OwnedExecutionEngine;
pub use node_context::LeafContext;
pub use node_context::NodeContext;
pub use runtime_event::RuntimeEvent;
pub use stream_chunk::StreamChunk;
pub use stream_chunk::ToolPhase;
pub use stream_emitter::BufferedSink;
pub use stream_emitter::ChannelSink;
pub use stream_emitter::NoopSink;
pub use stream_emitter::StreamHub;
pub use stream_emitter::StreamSink;
pub use stream_emitter::noop_sink;
pub use stream_emitter::sink_arc;
pub use stream_emitter::spawn_forward_task;
pub use workflow_state::LastWriteWins;
pub use workflow_state::MergeStrategy;
pub use workflow_state::WorkflowError;
pub use workflow_state::WorkflowState;
pub use trace::ExecutionTrace;
pub use trace::ExportedTrace;
pub use trace::ExportedTraceStep;
pub use trace::MemoryTraceSink;
pub use trace::TraceSink;
pub use trace::TraceStep;
pub use mutation_log::InMemoryMutationLog;
pub use mutation_log::MutationLogEntry;
pub use mutation_log::MutationLogStore;
pub use mutation_log::mutations_to_log_entries;

Modules§

barrier_node
Human-in-the-loop 审批节点。
barrier_wait
Barrier 等待与决策应用。
checkpoint
Checkpoint — 执行恢复的唯一数据源。
checkpoint_codec
CheckpointCodec — 序列化层,对象 ↔ 二进制表示。
checkpoint_policy
Checkpoint 策略 — Trigger / Retention 分层。
compiled_subgraph
CompiledSubgraph — 编译后的 Subgraph 描述符。
compiler
Compiler — 图优化 pass 框架。
error
Graph 错误类型。
event
Graph 层流式事件。
execution_engine
ExecutionEngine — 执行引擎核心类型。
execution_loop
Graph 流式执行循环 — SimpleExecutor::execute_stream() 的核心逻辑。
graph
Graph 和 GraphBuilder。
graph_analysis
Graph 静态分析 — 环检测、不可达节点、Fallback 诊断。
ids
TraceId / SpanId — 执行追踪标识符。
mutation_log
MutationLog — 持久化审计日志,独立于 Checkpoint。
node
节点核心类型与模块。
node_context
NodeContext + LeafContext — 节点能力视图。
parallel_node
ParallelNode — 并行执行多个分支,通过 MergeStrategy 合并 State。
runtime_event
RuntimeEvent — Control Plane 控制面事件。
session
ExecutionSession — 执行会话,持有 FrameStack,管理恢复。
state
State 和执行结果。
state_lens
StateLens — 状态投影,不是状态转换。
statekey
StateKey — 编译期类型安全的 State 键。
store
Checkpoint 存储后端 — BlobCheckpointStore SPI + 内存后端实现。
stream_chunk
StreamChunk — Data Plane 数据面事件。
stream_emitter
StreamSink — 数据面发射抽象。
subgraph_spec
SubgraphSpec — Builder 阶段的强类型 Subgraph 描述。
test_executor
测试用执行器 — 替代已删除的 SimpleExecutor。
trace
ExecutionTrace + TraceSink — 审计日志,与 Checkpoint 分离。
workflow_state
WorkflowState + Mutation + MergeStrategy — Typed State 框架。

Structs§

CancellationToken
A token which can be used to signal a cancellation request to one or more tasks.