ElGraph.Nodes.Memory (ElGraph v0.3.0)

Copy Markdown View Source

ElGraph.Memory를 그래프 노드로 끼우는 헬퍼 (트렌드 보고서 Tier 2.6).

Memory는 그 자체로는 스탠드얼론 계층이다 — 이 모듈이 그것을 그래프 런타임의 노드로 연결한다. 빌더는 MFA({__MODULE__, :recall, [{memory, ns, opts}]})를 돌려주므로 durable 그래프(체크포인트 재개)와 호환된다 (SPEC §3.2).

graph
|> ElGraph.add_node(:remember, ElGraph.Nodes.Memory.record_node(mem, ["users", "u1"]))
|> ElGraph.add_node(:recall, ElGraph.Nodes.Memory.recall_node(mem, ["users", "u1"]))

recall_node 옵션

  • :into — 회수 결과를 넣을 상태 키 (기본 :recalled)
  • :limit — 회수 개수 상한
  • :embedder — 주면 :query_key 상태 필드를 쿼리로 시맨틱 회수(recall_relevant/4)
  • :query_key — 시맨틱 회수 쿼리를 읽을 상태 키 (기본 :query)
  • :scope — 시맨틱 회수 스코프 (기본 "episodic")

record_node 옵션

  • :from — 기록할 값을 읽을 상태 키. 기본은 :messages의 마지막 메시지 content.

Summary

Functions

관련 기억을 상태 키(기본 :recalled)로 회수하는 노드 MFA를 만든다.

상태에서 에피소드를 기록하는 노드 MFA를 만든다.

Types

mfa_node()

@type mfa_node() :: {module(), atom(), [term()]}

ns()

@type ns() :: ElGraph.Memory.namespace()

Functions

recall_node(memory, ns, opts \\ [])

@spec recall_node(ElGraph.Memory.t(), ns(), keyword()) :: mfa_node()

관련 기억을 상태 키(기본 :recalled)로 회수하는 노드 MFA를 만든다.

record_node(memory, ns, opts \\ [])

@spec record_node(ElGraph.Memory.t(), ns(), keyword()) :: mfa_node()

상태에서 에피소드를 기록하는 노드 MFA를 만든다.