in resume-extraction/app/api/extract_resume/route.ts [12:46]
function extractValues(resumeText: string): ReadableStream {
console.log('Extract values from resume text:', resumeText)
const stream = openai.beta.chat.completions.stream({
model: MODEL,
messages: [
{ role: 'system', content: EXTRACT_VALUES_PROMPT },
{ role: 'user', content: resumeText }
],
response_format: zodResponseFormat(ResumeSchema, 'event')
})
const encoder = new TextEncoder()
const readableStream = new ReadableStream({
start(controller) {
stream
.on('content.delta', ({ parsed }) => {
console.log('content.delta parsed:', parsed)
// Send the parsed data as JSON
controller.enqueue(encoder.encode(JSON.stringify(parsed) + '\n'))
})
.on('content.done', () => {
console.log('content.done')
controller.close()
})
.on('error', error => {
console.error('Error in OpenAI stream:', error)
controller.error(error)
})
}
})
return readableStream
}