useChat
useChat(
options):UseChatReturn
Defined in: use-chat.ts:94
useChat - React hook for chat interfaces.
Provides state management, streaming, and utilities for building chat applications with AI backends.
Supports two modes:
- HTTP Mode (default): Uses
apiendpoint with fetch - Direct Mode: Uses
direct.backendfor direct backend access
Parameters
Section titled “Parameters”options
Section titled “options”UseChatOptions = {}
Returns
Section titled “Returns”Examples
Section titled “Examples”import { useChat } from 'ai.matey.react.core';
function ChatComponent() { const { messages, input, handleInputChange, handleSubmit, isLoading } = useChat({ api: '/api/chat', });
return ( <div> {messages.map((m) => ( <div key={m.id}>{m.role}: {m.content}</div> ))} <form onSubmit={handleSubmit}> <input value={input} onChange={handleInputChange} /> <button type="submit" disabled={isLoading}>Send</button> </form> </div> );}import { useChat } from 'ai.matey.react.core';import { AnthropicBackend } from 'ai.matey.backend/anthropic';
const backend = new AnthropicBackend({ apiKey: process.env.ANTHROPIC_API_KEY });
function ChatComponent() { const { messages, input, handleInputChange, handleSubmit, isLoading } = useChat({ direct: { backend, systemPrompt: 'You are a helpful assistant.', }, });
return ( <div> {messages.map((m) => ( <div key={m.id}>{m.role}: {m.content}</div> ))} <form onSubmit={handleSubmit}> <input value={input} onChange={handleInputChange} /> <button type="submit" disabled={isLoading}>Send</button> </form> </div> );}