> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xpertai.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 变量赋值

在 XpertAI 工作流系统中，**变量赋值节点**用于向可写入变量赋值，实现信息的记录、状态的更新和上下文的维护。该节点是实现用户偏好记忆、会话状态管理、流程数据中转的核心组件之一。
通过变量赋值节点，你可以将流程中已有的变量值，写入到可持久使用的变量中。

## 配置流程详解

以下是一个典型的「记忆写入」场景的变量赋值配置流程：

### 1. 设置会话变量结构

首先，在工作流中定义一个名为 `memories` 的会话变量：

* 类型：`array[object]`
* 用途：用于记录用户输入中提取出的事实、偏好和历史信息

### 2. 判断用户输入是否包含新信息

在用户输入后，使用一个**条件判断节点**结合 LLM 推理：

* 若判断出存在新信息，走上分支
* 若无新信息，走下分支，直接基于已有记忆生成回复

### 3. 提取新信息

在上分支中，添加一个 **LLM 节点**，将用户输入的文本提取成结构化的新事实。例如：

```json theme={null}
{
  "fact": "用户喜欢黑咖啡",
  "time": "2025-06-29"
}
```

### 4. 变量赋值/写入记忆

使用 **变量赋值节点**，将 LLM 输出的内容追加到 `memories` 数组中：

* 操作方式：选择变量类型为 `array`，操作为 `append`
* 内容：从 LLM 输出中提取对象，使用变量引用（如 `{llm.result}`）
* 如 LLM 输出为字符串，建议使用转义或解析步骤转换为标准对象结构再写入

### 5. 后续节点读取记忆

在后续 **LLM 节点**中，可将 `memories` 内容拼接为字符串用于上下文输入。例如：

```text theme={null}
历史信息：
1. 用户喜欢黑咖啡。
2. 用户常在早上查看订单状态。
```

插入位置通常为提示词的系统部分，使模型拥有个性化的回复能力。

## 总结

变量赋值节点为工作流提供了灵活的数据写入能力，是构建有状态、个性化、多轮对话体验的基础。搭配条件判断、LLM 节点与记忆机制，可以构建更智能的业务流程与用户交互体验。
