XChat 数据管理

配合 XAgent 进行对话数据管理。
使用

何时使用#

通过 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']-
resolveAbortControllerAbortController 控制器,用于控制流状态(abortController: AbortController) => void-

XChatConfigReturnType#

属性说明类型默认值
messages当前管理的内容{id: string | number; message: AgentMessage; status: MessageStatus;}[]-
parsedMessages经过 parser 转译过的内容{id: string | number; message: ParsedMessage; status: MessageStatus;}[]-
onRequest添加一条 Message,并且触发请求,若无keymessage的数据则会将整个数据做为消息处理(requestParams: AgentMessage | RequestParams) => void-
setMessages直接修改 messages,不会触发请求(messages: {id: string | number; message: AgentMessage; status: MessageStatus;}[]) => void-

RequestParams#

继承 XRequestParams

属性说明类型默认值
message当前消息的内容AgentMessage-