const result = await lumina.trace('rag_pipeline', async (parentSpan) => {
parentSpan.setAttribute('user_query', query);
// Child span 1
const docs = await lumina.trace('retrieval', async () => {
return await vectorDB.search(query);
});
// Child span 2
const response = await lumina.traceLLM(
() => llm.generate(buildPrompt(query, docs)),
{ name: 'synthesis', system: 'anthropic' }
);
return response;
});