1010
1111from llm_utils .chains import (
1212 query_refiner_chain ,
13+ query_redefined_again_chain ,
1314 query_maker_chain ,
1415)
1516
1617from llm_utils .tools import get_info_from_db
1718
1819# 노드 식별자 정의
1920QUERY_REFINER = "query_refiner"
21+ QUERY_REFINED_AGAIN = "query_redefined_again"
2022GET_TABLE_INFO = "get_table_info"
2123TOOL = "tool"
2224TABLE_FILTER = "table_filter"
@@ -30,6 +32,7 @@ class QueryMakerState(TypedDict):
3032 searched_tables : dict [str , dict [str , str ]]
3133 best_practice_query : str
3234 refined_input : str
35+ refined_input_again : str
3336 generated_query : str
3437
3538
@@ -90,6 +93,20 @@ def get_table_info_node(state: QueryMakerState):
9093 return state
9194
9295
96+ def query_redefined_again_node (state : QueryMakerState ):
97+ res = query_redefined_again_chain .invoke (
98+ input = {
99+ "user_input" : [state ["messages" ][0 ].content ],
100+ "refined_input" : [state ["refined_input" ]],
101+ "user_database_env" : [state ["user_database_env" ]],
102+ "searched_tables" : [json .dumps (state ["searched_tables" ])],
103+ }
104+ )
105+ state ["refined_input_again" ] = res
106+ print (state ["refined_input_again" ])
107+ return state
108+
109+
93110# 노드 함수: QUERY_MAKER 노드
94111def query_maker_node (state : QueryMakerState ):
95112 res = query_maker_chain .invoke (
@@ -121,7 +138,9 @@ def query_maker_node_with_db_guide(state: QueryMakerState):
121138 res = chain .invoke (
122139 input = {
123140 "input" : "\n \n ---\n \n " .join (
124- [state ["messages" ][0 ].content ] + [state ["refined_input" ].content ]
141+ [state ["messages" ][0 ].content ]
142+ # + [state["refined_input"].content]
143+ + [state ["refined_input_again" ].content ]
125144 ),
126145 "table_info" : [json .dumps (state ["searched_tables" ])],
127146 "top_k" : 10 ,
@@ -143,10 +162,12 @@ def query_maker_node_with_db_guide(state: QueryMakerState):
143162builder .add_node (
144163 QUERY_MAKER , query_maker_node_with_db_guide
145164) # query_maker_node_with_db_guide
165+ builder .add_node (QUERY_REFINED_AGAIN , query_redefined_again_node )
146166
147167# 기본 엣지 설정
148168builder .add_edge (QUERY_REFINER , GET_TABLE_INFO )
149- builder .add_edge (GET_TABLE_INFO , QUERY_MAKER )
169+ builder .add_edge (GET_TABLE_INFO , QUERY_REFINED_AGAIN )
170+ builder .add_edge (QUERY_REFINED_AGAIN , QUERY_MAKER )
150171
151172# QUERY_MAKER 노드 후 종료
152173builder .add_edge (QUERY_MAKER , END )
0 commit comments