logoAnt Design X

DesignDevelopmentComponentsX SDKX MarkdownPlayground
  • Introduction
  • Data Flow
    • useXChatConversation Data
    • useXConversationsConversation Management
  • Utilities
    • XRequestRequest
    • XStreamStream

useXChat
Conversation Data

Manage conversation data through Agent and generate data for page rendering.

Resources

Ant Design
Ant Design Charts
Ant Design Pro
Pro Components
Ant Design Mobile
Ant Design Mini
Ant Design Web3
Ant Design Landing-Landing Templates
Scaffolds-Scaffold Market
Umi-React Application Framework
dumi-Component doc generator
qiankun-Micro-Frontends Framework
Ant Motion-Motion Solution
China Mirror 🇨🇳

Community

Awesome Ant Design
Medium
Twitter
yuque logoAnt Design in YuQue
Ant Design in Zhihu
Experience Cloud Blog
seeconf logoSEE Conf-Experience Tech Conference

Help

GitHub
Change Log
FAQ
Bug Report
Issues
Discussions
StackOverflow
SegmentFault

Ant XTech logoMore Products

yuque logoYuQue-Document Collaboration Platform
AntV logoAntV-Data Visualization
Egg logoEgg-Enterprise Node.js Framework
Kitchen logoKitchen-Sketch Toolkit
Galacean logoGalacean-Interactive Graphics Solution
xtech logoAnt Financial Experience Tech
Theme Editor
Made with ❤ by
Ant Group and Ant Design Community

When To Use

Manage conversation data through Agent and generate data for page rendering.

Code Demo

API

tsx
type useXChat<
AgentMessage,
ParsedMessage = AgentMessage,
Input = RequestParams<AgentMessage>,
Output = SSEOutput,
> = (config: XChatConfig<AgentMessage, ParsedMessage>) => XChatConfigReturnType;

XChatConfig

PropertyDescriptionTypeDefaultVersion
agentThe agent generated by useXAgent. When using the onRequest method, the agent parameter is required.XAgent--
defaultMessagesDefault display messages{ status, message }[]--
parserConverts AgentMessage to consumable ParsedMessage. If not set, AgentMessage will be consumed directly. Supports converting one AgentMessage to multiple ParsedMessages(message: AgentMessage) => BubbleMessage | BubbleMessage[]--
requestFallbackFallback message for failed requests. Will not be displayed if not providedAgentMessage | () => AgentMessage--
requestPlaceholderPlaceholder message during requests. Will not be displayed if not providedAgentMessage | () => AgentMessage--
transformMessageCan transform messages when updating data, which will also update messages(info: {originMessage?: AgentMessage,chunk: Output,chunks: Output[],status: MessageStatus}) => AgentMessage--
transformStreamOptional transformation function for processing stream dataXStreamOptions<Output>['transformStream']--
resolveAbortControllerAbortController for controlling stream state(abortController: AbortController) => void--

XChatConfigReturnType

PropertyDescriptionTypeDefaultVersion
messagesCurrently managed contentAgentMessages[]--
parsedMessagesContent translated by parserParsedMessages[]--
onRequestAdd a Message and trigger a request. If there is no data with key as message, the entire data will be processed as a message(requestParams: AgentMessage | RequestParams) => void--
setMessagesDirectly modify messages without triggering requests(messages: { message, status }[]) => void--

RequestParams

Extends XRequestParams.

PropertyDescriptionTypeDefaultVersion
messageContent of current messageAgentMessage--
Basic

Basic usage.

CodeSandbox Icon
codepen icon
External Link Icon
expand codeexpand code
Model Integration

Access to cloud service platform,can send messages, process data, abort stream.

CodeSandbox Icon
codepen icon
External Link Icon
expand codeexpand code