`useChat`이 응답하지 않음
useChat이 응답하지 않음 (useChat No Response)
useChat을 사용할 때 모델이 응답하지 않는 문제와 해결 방법을 다루는 문서예요.
출처: 문서
본문
문제 (Issue)
저는 useChat을 사용하고 있어요.
서버에서 들어오는 메시지를 로깅해 보면 툴 호출과 툴 결과는 보이는데, 모델이 아무 것도 응답하지 않아요.
해결 방법 (Solution)
이 문제를 해결하려면 convertToModelMessages 함수를 사용해 들어오는 메시지를 ModelMessage 형식으로 변환하세요.
import { openai } from '@ai-sdk/openai';
import {
convertToModelMessages,
createUIMessageStreamResponse,
streamText,
toUIMessageStream,
} from 'ai';
__PROVIDER_IMPORT__;
export async function POST(req: Request) {
const { messages } = await req.json();
const result = streamText({
model: __MODEL__,
messages: await convertToModelMessages(messages),
});
return createUIMessageStreamResponse({
stream: toUIMessageStream({ stream: result.stream }),
});
}
이렇게 하면 UI 메시지 형식이 모델이 받아들일 수 있는 ModelMessage 형식으로 올바르게 변환되어, 모델이 정상적으로 응답하게 돼요.