AI SDK 6의 streamUI로 챗봇 만들고 있는데 tool의 generate가 두 번 실행됩니다.
const result = await streamUI({
model: anthropic('sonnet-4-9'),
prompt: query,
tools: {
search: {
description: '검색',
parameters: z.object({ q: z.string() }),
generate: async ({ q }) => {
console.log('search called:', q) // 같은 query에 2번 로그
const results = await db.search(q)
return <Results data={results} />
},
},
},
})
console.log에 같은 query 2번 출력. DB query도 2번 실행. 비용 부담 + 부작용 우려.
댓글 0