---
outline: deep
---

# AI 辅助转换指南

如果你的聊天记录格式（如 CSV, HTML, TXT 或其他数据库导出）目前不被 ChatLab 直接支持，你可以利用 AI（如 ChatGPT, Claude, DeepSeek 等）快速编写一个转换脚本，将你的数据转换为 ChatLab 标准格式。

## 准备工作

1.  **查看标准规范**：[ChatLab 标准格式规范 v0.0.2](./chatlab-format.md)
2.  **准备数据**：准备好你导出的原始聊天记录文件（如果是在线服务，建议仅提供几百条脱敏后的样本即可）。

## 选择目标格式

请根据你的数据量大小，选择合适的提示词。

### 场景一：中小规模数据 (推荐)

- **目标格式**：JSON (`.json`)
- **适用场景**：记录数 < 100 万条，文件体积 < 100MB。
- **特点**：结构清晰，兼容性最好。

#### 复制 JSON 转换提示词

```markdown
**角色设定**：你是一个精通数据处理和脚本编写的专家。

**任务目标**：请根据我提供的【ChatLab 标准格式规范】（chatlab-format.md），编写一个脚本，将我上传的【原始聊天记录】转换为符合该规范的 **JSON 格式**。

**执行要求**：

1.  **分析结构**：分析原始聊天记录的文本规律或数据结构。
2.  **字段映射**：
    - 将原始字段映射到 ChatLab 标准字段（`timestamp`, `sender`, `content`, `type` 等）。
    - 如果原始数据缺少 `sender` (用户 ID)，请根据 `accountName` (用户名) 自动生成一个唯一的哈希值或虚拟 ID。
    - `type` 默认为 0 (文本)。如果能从内容中识别出图片、语音等类型，请尝试映射。
3.  **脚本生成**：
    - 请编写一个**完整的、可执行的脚本**（推荐 Python 或 Node.js）。
    - **输出结构**：脚本应构建一个包含 `chatlab`, `meta`, `members`, `messages` 的完整 JSON 对象，并一次性写入文件。
    - 脚本需包含必要的错误处理，并打印进度。
4.  **结果验证**：
    - 请确保生成的 JSON 结构严格符合 `chatlab-format.md` 中的定义。

**输出**：请直接提供代码，并简要说明如何运行该脚本。
```

### 场景二：超大规模数据

- **目标格式**：JSONL (`.jsonl`)
- **适用场景**：记录数 > 100 万条，或文件体积巨大。
- **特点**：流式读写，内存占用极低，不会因为数据量大而崩溃。

#### 复制 JSONL 转换提示词

```markdown
**角色设定**：你是一个精通大数据处理和流式计算的专家。

**任务目标**：请根据我提供的【ChatLab 标准格式规范】（chatlab-format.md），编写一个脚本，将我上传的【原始聊天记录】转换为符合该规范的 **JSONL (JSON Lines) 格式**。

**执行要求**：

1.  **分析结构**：分析原始聊天记录的文本规律。
2.  **流式处理**：
    - **必须采用流式读写**（Line-by-Line）的方式，不要一次性将所有数据加载到内存中。
    - 逐行读取原始文件，逐行写入目标文件。
3.  **JSONL 结构要求**：
    - **第一行**：必须写入 `_type: "header"` 行（包含 `chatlab` 和 `meta` 信息）。
    - **成员信息**：如果可能，先扫描一遍或在处理过程中收集成员信息，写入 `_type: "member"` 行。
    - **消息记录**：每一条聊天记录写入一行 `_type: "message"`。
4.  **脚本生成**：
    - 请编写一个**高效的 Python 脚本**。
    - 确保处理过程内存占用恒定，适合处理 GB 级别的大文件。

**输出**：请直接提供代码，并简要说明如何运行该脚本。
```

## 后续步骤

1.  **运行脚本**：在本地环境中运行 AI 生成的脚本。
2.  **检查结果**：打开生成的文件，确认格式是否正确。
3.  **导入 ChatLab**：将生成的文件导入 ChatLab 进行分析。
