Update app.py
Browse files
app.py
CHANGED
@@ -69,14 +69,8 @@ def filter_semantically_similar_texts_by_embedding(df, embedding_field='embeddin
|
|
69 |
|
70 |
return df.iloc[filtered_indices].reset_index(drop=True)
|
71 |
|
72 |
-
|
73 |
-
|
74 |
-
return "5~15사이의 값을 입력해주세요"
|
75 |
-
if list_number:
|
76 |
-
ori_num = 15 - list_number
|
77 |
-
return ori_num
|
78 |
-
|
79 |
-
def search_kpi(kpi_query, val=None):
|
80 |
results = kpi_pool.similarity_search_with_relevance_scores(kpi_query, k=50)
|
81 |
|
82 |
# 메타데이터 + 점수 추출
|
@@ -85,16 +79,11 @@ def search_kpi(kpi_query, val=None):
|
|
85 |
for doc, score in results
|
86 |
]
|
87 |
|
|
|
88 |
df = pd.DataFrame(records)
|
89 |
-
df['
|
90 |
-
|
91 |
-
|
92 |
-
min_num = find_ori_num(val)
|
93 |
-
if val:
|
94 |
-
df = filter_semantically_similar_texts_by_embedding(df, embedding_field='embedding', similarity_threshold=0.8)
|
95 |
-
df = df.iloc[min_num:15]
|
96 |
-
else:
|
97 |
-
df = filter_semantically_similar_texts_by_embedding(df, embedding_field='embedding', similarity_threshold=0.8).head(15)
|
98 |
|
99 |
# 카테고리 생성 (BSC 관점 + 전략방향)
|
100 |
df['카테고리'] = df['BSC 관점'] + " > " + df['전략방향']
|
@@ -238,7 +227,7 @@ with gr.Blocks(css=css) as demo:
|
|
238 |
kpi_query = gr.Textbox(scale=30, submit_btn=True,
|
239 |
label= "성과평가를 진행할 [핵심업무 or 핵심성공요인]을 입력해주세요😊! (검색 키워드는 직무기술서 또는 NCS 능력단위 참고)",
|
240 |
placeholder="예: 자금계획수립 정확성, 자금조달 적시성, 재무위험관리 효과성 등")
|
241 |
-
|
242 |
|
243 |
copyright = gr.Markdown(guide, visible=True, elem_classes="custom-markdown")
|
244 |
|
@@ -260,7 +249,7 @@ with gr.Blocks(css=css) as demo:
|
|
260 |
|
261 |
file_download = gr.Files(label="Download", interactive=False, visible=False)
|
262 |
|
263 |
-
kpi_query.submit(search_kpi, inputs = [kpi_query,
|
264 |
select_button.click(fn=toggle_selection, inputs=[kpi_checkbox, check_state], outputs=kpi_checkbox, show_progress='hidden')
|
265 |
download_button.click(
|
266 |
generate_excel,
|
|
|
69 |
|
70 |
return df.iloc[filtered_indices].reset_index(drop=True)
|
71 |
|
72 |
+
|
73 |
+
def search_kpi(kpi_query, kpi_count):
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
results = kpi_pool.similarity_search_with_relevance_scores(kpi_query, k=50)
|
75 |
|
76 |
# 메타데이터 + 점수 추출
|
|
|
79 |
for doc, score in results
|
80 |
]
|
81 |
|
82 |
+
# DataFrame으로 변환
|
83 |
df = pd.DataFrame(records)
|
84 |
+
df['카테고리'] = df['BSC 관점'] + " > " + df['전략방향']
|
85 |
+
df = df.drop_duplicates(subset=['정의', '산식']).head(15)
|
86 |
+
df = df.iloc[:kpi_count]
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
|
88 |
# 카테고리 생성 (BSC 관점 + 전략방향)
|
89 |
df['카테고리'] = df['BSC 관점'] + " > " + df['전략방향']
|
|
|
227 |
kpi_query = gr.Textbox(scale=30, submit_btn=True,
|
228 |
label= "성과평가를 진행할 [핵심업무 or 핵심성공요인]을 입력해주세요😊! (검색 키워드는 직무기술서 또는 NCS 능력단위 참고)",
|
229 |
placeholder="예: 자금계획수립 정확성, 자금조달 적시성, 재무위험관리 효과성 등")
|
230 |
+
kpi_count = gr.Slider(label="KPI 출력 개수", value = 15, minimum=5, maximum=15, step=1, scale=7)
|
231 |
|
232 |
copyright = gr.Markdown(guide, visible=True, elem_classes="custom-markdown")
|
233 |
|
|
|
249 |
|
250 |
file_download = gr.Files(label="Download", interactive=False, visible=False)
|
251 |
|
252 |
+
kpi_query.submit(search_kpi, inputs = [kpi_query, kpi_count], outputs = [output_area, kpi_checkbox, kpi_table, df_state, check_state, copyright])
|
253 |
select_button.click(fn=toggle_selection, inputs=[kpi_checkbox, check_state], outputs=kpi_checkbox, show_progress='hidden')
|
254 |
download_button.click(
|
255 |
generate_excel,
|