XChat 数据管理
使用 |
文档 |
何时使用#
通过 Agent 进行会话数据管理,并产出供页面渲染使用的数据。
代码演示 #
加载中
加载中
Hello, what can I do for you?
加载中
加载中
API#
XChatConfig#
| 属性 | 说明 | 类型 | 默认值 |
|---|---|---|---|
agent | 通过 useXAgent 生成的 agent,当使用 onRequest 方法时, agent 参数是必需的。 | XAgent | - |
defaultMessages | 默认展示信息 | { status, message }[] | - |
parser | 将 AgentMessage 转换成消费使用的 ParsedMessage,不设置时则直接消费 AgentMessage。支持将一条 AgentMessage 转换成多条 ParsedMessage | (message: AgentMessage) => BubbleMessage | BubbleMessage[] | - |
requestFallback | 请求失败的兜底信息,不提供则不会展示 | AgentMessage | () => AgentMessage | - |
requestPlaceholder | 请求中的占位信息,不提供则不会展示 | AgentMessage | () => AgentMessage | - |
transformMessage | 可在更新数据时对messages做转换,同时会更新到messages | (info: {originMessage?: AgentMessage,chunk: Output,chunks: Output[],status: MessageStatus}) => AgentMessage | - |
transformStream | 可选的转换函数,用于处理流数据 | XStreamOptions<Output>['transformStream'] | - |
resolveAbortController | AbortController 控制器,用于控制流状态 | (abortController: AbortController) => void | - |
XChatConfigReturnType#
| 属性 | 说明 | 类型 | 默认值 |
|---|---|---|---|
messages | 当前管理的内容 | {id: string | number; message: AgentMessage; status: MessageStatus;}[] | - |
parsedMessages | 经过 parser 转译过的内容 | {id: string | number; message: ParsedMessage; status: MessageStatus;}[] | - |
onRequest | 添加一条 Message,并且触发请求,若无key为message的数据则会将整个数据做为消息处理 | (requestParams: AgentMessage | RequestParams) => void | - |
setMessages | 直接修改 messages,不会触发请求 | (messages: {id: string | number; message: AgentMessage; status: MessageStatus;}[]) => void | - |
RequestParams#
继承 XRequestParams。
| 属性 | 说明 | 类型 | 默认值 |
|---|---|---|---|
message | 当前消息的内容 | AgentMessage | - |