聊天数据转换工具

将原始聊天数据转换为前端可渲染的格式。转换规则:
  • 第一个 user 消息:用户的原始问题
  • assistant + user 对:AI工具调用 + 工具执行结果
  • finalResponse:最终回复
原始数据输入
使用说明

函数接口

import { transformChatData, validateChatData } from './utils/dataTransformer';

// 转换数据
const result = transformChatData(rawData);

// 验证数据格式
const validation = validateChatData(rawData);

数据格式要求

  • 数组格式,包含多个消息对象
  • 每个消息对象包含 type 和 data 字段
  • type 可以是 "message" 或 "finalResponse"
  • message 类型的 data 包含 role 和 content
  • role 可以是 "user" 或 "assistant"

转换后的数据特点

  • 保持原有的消息顺序和内容
  • 自动添加时间戳和唯一ID
  • 包含会话元数据(sessionId、创建时间等)
  • 兼容现有的聊天组件接口