File size: 930 Bytes
9acd478
3c1150c
d98138c
a0929ab
9acd478
 
 
 
 
3c1150c
 
9acd478
 
3c1150c
a0929ab
 
9acd478
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from .prompts import idea_refinement_prompt
from langchain_core.messages import SystemMessage , HumanMessage, ToolMessage, FunctionMessage
from src.genai.utils.models_loader import  llm_gpt
from .state import State, IdeationFormatter

def run_refiner(state:State):
    template = idea_refinement_prompt()
    messages = [
        SystemMessage(content=template),
        # ToolMessage(content=f"The four ideas are:\n{state.final_ideation}.\nThe business details is:\n{state.business_details}", tool_call_id='refiner_tool'),
        FunctionMessage(name='idea_refiner',content=f'''The four ideas are:\n{state.final_ideation}.\nThe business details is:\n{state.business_details}''',tool_call_id='refiner_tool'),
        HumanMessage(content=str(state.query))
    ]
    result = llm_gpt.with_structured_output(IdeationFormatter).invoke(messages)
    print(result.refined_idea)
    state.result = result.refined_idea
    return state