hy commited on
Commit
482a197
ยท
1 Parent(s): 28beb39
Files changed (1) hide show
  1. crossref_model.py +3 -63
crossref_model.py CHANGED
@@ -29,8 +29,8 @@ import ssl
29
  def search_naver_api(keywords: list) -> list:
30
  """(API) Naver ๊ฒ€์ƒ‰ API๋กœ Snippet,Link ์ˆ˜์ง‘ (urllib.request + SSL ์šฐํšŒ)"""
31
 
32
- NAVER_ID = os.environ.get("NAVER_ID")
33
- NAVER_SECRET = os.environ.get("NAVER_SECRET")
34
 
35
  # --- Check : ํ‚ค์›Œ๋“œ ํ™•์ธ ---
36
  if not keywords:
@@ -152,7 +152,7 @@ def get_crossref_score_and_reason(article_body: str) -> dict:
152
  reason = f"๊ต์ฐจ ๊ฒ€์ฆ๋œ ๊ธฐ์‚ฌ {len(snippets)}๊ฑด๊ณผ์˜ ํ‰๊ท  ๋‚ด์šฉ ์ผ์น˜๋„๋Š” {avg_similarity*100:.0f}%์ž…๋‹ˆ๋‹ค."
153
  recommendation = "์–‘ํ˜ธํ•ฉ๋‹ˆ๋‹ค."
154
 
155
- if avg_similarity < 0.3:
156
  reason = f"๊ด€๋ จ ๊ธฐ์‚ฌ {len(snippets)}๊ฑด๊ณผ ๋‚ด์šฉ ์ผ์น˜๋„๊ฐ€ ๋งค์šฐ ๋‚ฎ์Šต๋‹ˆ๋‹ค. (ํ‰๊ท  {avg_similarity*100:.0f}%)"
157
  recommendation = "๊ธฐ์‚ฌ์˜ ํ•ต์‹ฌ ์‚ฌ์‹ค๊ด€๊ณ„๊ฐ€ ํƒ€ ์–ธ๋ก ์‚ฌ์—์„œ๋„ ๋‹ค๋ฃจ์–ด์ง€๋Š”์ง€ ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค."
158
 
@@ -162,63 +162,3 @@ def get_crossref_score_and_reason(article_body: str) -> dict:
162
  "recommendation": recommendation,
163
  "paired_results": paired_results
164
  }
165
-
166
- # --- 4. ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ---
167
- if __name__ == "__main__":
168
- print("CrossrefScore ๋ชจ๋“ˆ ํ…Œ์ŠคํŠธ ์‹œ์ž‘...")
169
- test_body="""
170
- ๋ฐฐ๋“œ๋ฏผํ„ด ๊ตญ๊ฐ€๋Œ€ํ‘œ ์•ˆ์„ธ์˜์ด ์ธ๋„์˜คํ”ˆ ๊ฒฐ์Šน์ „์—์„œ 2-0 ์™„์Šน์„ ๊ฑฐ๋‘๊ณ  2์ฃผ ์—ฐ์† ๊ตญ์ œ ๋Œ€ํšŒ์—์„œ ์šฐ์Šน์„ ์ฐจ์ง€ํ•˜๋Š” ์พŒ๊ฑฐ๋ฅผ ์ด๋ค˜๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์•ˆ์„ธ์˜์—๊ฒŒ '์ข‹์ง€ ์•Š์€' ์†Œ์‹๋„ ํ•จ๊ป˜ ์ „ํ•ด์กŒ๋‹ค.
171
- ์•ˆ์„ธ์˜์ด 2025๋…„ ์ƒˆํ•ด ๋“ค์–ด ์น˜๋ฅธ 2์ฐจ๋ก€ ๊ตญ์ œ ๋Œ€ํšŒ๋ฅผ ๋ชจ๋‘ ์ œํŒจํ–ˆ๋‹ค.
172
-
173
- ์•ˆ์„ธ์˜์€ ์ง€๋‚œ 19์ผ ์ธ๋„ ๋‰ด๋ธ๋ฆฌ์—์„œ ์—ด๋ฆฐ ์„ธ๊ณ„๋ฐฐ๋“œ๋ฏผํ„ด์—ฐ๋งน ์›”๋“œํˆฌ์–ด ์Šˆํผ 750 ์ธ๋„์˜คํ”ˆ ์—ฌ์ž ๋‹จ์‹ ๊ฒฐ์Šน์ „์—์„œ ์„ธ๊ณ„ 12์œ„ ํƒœ๊ตญ์˜ ํฌ๋ฅธํŒŒ์œ„ ์ดˆ์ถ”์›ก์„ 2-0์œผ๋กœ ๋ฌผ๋ฆฌ์น˜๋ฉฐ ์šฐ์Šน์„ ์ฐจ์ง€ํ–ˆ๋‹ค.
174
-
175
- ์•ˆ์„ธ์˜์€ ์ด๋‚  ๊ฒฐ์Šน์ „์—์„œ ์ผ์ฐŒ๊ฐ์น˜ ์Šน๊ธฐ๋ฅผ ์žก์•˜๋‹ค.
176
-
177
- ์•ˆ์„ธ์˜์€ 1๊ฒŒ์ž„์„ 21-12๋กœ ์••๋„ํ–ˆ๋‹ค. 2๊ฒŒ์ž„์—์„œ๋„ ํŠน์œ ์˜ ์ฒ ๋ฒฝ ์ˆ˜๋น„๋กœ 15-6๊นŒ์ง€ ๊ฒฉ์ฐจ๋ฅผ ๋ฒŒ๋ ธ๋‹ค. ํŠนํžˆ 9-18๋กœ ๋’ค์ง„ ์ƒํ™ฉ์—์„œ ๋งˆ์ง€๋ง‰ ํž˜์„ ๋‹คํ•ด ํƒœ๊ตญ์˜ ์ดˆ์ถ”์›ก์˜ ๋‚ ์นด๋กœ์šด ๊ณต๊ฒฉ์„ ๋ชจ๋‘ ๋งž๋ฐ›์•„์นœ ๋์— ์ƒ๋Œ€์˜ ๋ฒ”์‹ค์„ ์œ ๋„ํ•ด ๋‚ด๋ฉฐ ์ถ”๊ฒฉ ์˜์ง€๋ฅผ ๊บพ์–ด๋ฒ„๋ ธ๋‹ค. 2๊ฒŒ์ž„ ์Šค์ฝ”์–ด๋Š” 21-9์˜€๋‹ค.
178
-
179
- ์•ˆ์„ธ์˜์€ 12์ผ ๋ง๋ ˆ์ด์‹œ์•„ ์ฟ ์•Œ๋ผ๋ฃธํ‘ธ๋ฅด์—์„œ ๋๋‚œ ์›”๋“œํˆฌ์–ด ์Šˆํผ 1000 ๋ง๋ ˆ์ด์‹œ์•„์˜คํ”ˆ์—์„œ ์˜ฌํ•ด ์ฒซ ์šฐ์Šน์„ ์ฐจ์ง€ํ•œ ๋ฐ ์ด์–ด 2์ฃผ ์—ฐ์†์œผ๋กœ ์šฐ์Šน ํŠธ๋กœํ”ผ๋ฅผ ๋”ฐ๋ƒˆ๋‹ค.
180
-
181
- ์•ˆ์„ธ์˜์€ ์ด๋ฒˆ์— ์ถœ์ „ํ•œ ์ธ๋„์˜คํ”ˆ์—์„œ 5๊ฒฝ๊ธฐ๋ฅผ ์น˜๋ฅด๋Š” ๋™์•ˆ ํ•œ ๊ฒŒ์ž„๋„ ๋‚ด์ฃผ์ง€ ์•Š๋Š” ์™„๋ฒฝํ•œ ๊ฒฝ๊ธฐ ์šด์˜์œผ๋กœ ๋ฐฐ๋“œ๋ฏผํ„ด ์—ฌ์ž๋‹จ์‹ ์„ธ๊ณ„ 1์œ„ ๋‹ค์šด '์ตœ๊ฐ• ์‹ค๋ ฅ'์„ ์ž๋ž‘ํ–ˆ๋‹ค.
182
- ํ•ด 2์ฃผ ์—ฐ์† ๊ตญ์ œ ๋Œ€ํšŒ์—์„œ ์šฐ์Šนํ•˜๋ฉฐ ๊ธฐ์จ์„ ๋งŒ๋ฝํ•œ ์•ˆ์„ธ์˜ ์ž…์žฅ์—์„  ๋ถˆ์พŒํ•  ์ˆ˜ ์žˆ๋Š” ์†Œ์‹์ด ํ•จ๊ป˜ ์ „ํ•ด์กŒ๋‹ค. ๋Œ€ํ•œ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ ๊น€ํƒ๊ทœ ํšŒ์žฅ์ด ์ฐจ๊ธฐ ํšŒ์žฅ ์„ ๊ฑฐ์— '๊ธฐํ˜ธ 4๋ฒˆ'์„ ๋‹ฌ๊ณ  ์ถœ๋งˆํ•  ์˜ˆ์ •์ธ ๊ฒƒ์œผ๋กœ ์ „ํ•ด์กŒ๋‹ค.
183
- ์•ˆ์„ธ์˜์€ ์ง€๋‚œํ•ด ํŒŒ๋ฆฌ์˜ฌ๋ฆผํ”ฝ์—์„œ ๊ธˆ๋ฉ”๋‹ฌ์„ ๋”ด ์ดํ›„ ๊น€ํƒ๊ทœ ํšŒ์žฅ์ด ์ด๋Œ์–ด์˜จ ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ์™€ ๋ฐฐ๋“œ๋ฏผํ„ด๋Œ€ํ‘œํŒ€ ์šด์˜์˜ ๋ฌธ์ œ๋ฅผ ํญ๋กœํ•˜๋Š” '์ž‘์‹ฌ ๋ฐœ์–ธ'์„ ํ–ˆ๋‹ค. ๋‹น์‹œ ์•ˆ์„ธ์˜์˜ ์šฉ๊ธฐ ์žˆ๋Š” ์™ธ์นจ์€ ํ•œ๊ตญ ๋ฐฐ๋“œ๋ฏผํ„ด๊ณ„์˜ ๊ฐœํ˜์„ ์ด‰๊ตฌํ•˜๋Š” ๋ชฉ์†Œ๋ฆฌ๋กœ ์ด์–ด์กŒ๋‹ค.
184
-
185
- 20์ผ ์ดํˆฌ๋ฐ์ด ๋ณด๋„์— ๋”ฐ๋ฅด๋ฉด ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ๋Š” ๋ชฉ์š”์ผ์ธ 23์ผ ์ฐจ๊ธฐ ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ์žฅ ์„ ๊ฑฐ๋ฅผ ์น˜๋ฅด๊ธฐ๋กœ ํ–ˆ๋‹ค. ๊ถ์ง€์— ๋ชฐ๋ ธ๋‹ค๊ฐ€ ๊ทน์ ์œผ๋กœ ์ถœ๋งˆ ์ž๊ฒฉ์„ ํšŒ๋ณตํ•œ ๊น€ํƒ๊ทœ ํšŒ์žฅ ์—ญ์‹œ ๊ธฐํ˜ธ 4๋ฒˆ์œผ๋กœ ์ด๋ฒˆ ์„ ๊ฑฐ์— ๋‚˜์„œ๋Š” ๊ฒƒ์œผ๋กœ ์ „ํ•ด์กŒ๋‹ค.
186
-
187
- ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ๋Š” ์ด๋‚  "(๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ) ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ๋Š” ๋ฏธ๋ค„์กŒ๋˜ ์ฐจ๊ธฐ ํšŒ์žฅ ์„ ๊ฑฐ๋ฅผ 23์ผ ์˜ค์ „ 10์‹œ๋ถ€ํ„ฐ ์˜คํ›„ 5์‹œ๊นŒ์ง€ ์ง„ํ–‰ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค"๋ผ๊ณ  ๋ฐํ˜”๋‹ค.
188
- ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ์žฅ ์„ ๊ฑฐ๋Š” ์• ์ดˆ 16์ผ ์—ด๋ ธ์–ด์•ผ ํ–ˆ์ง€๋งŒ ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ๊ฐ€ ์ž…ํ›„๋ณด๋ฅผ ๋ถˆํ—ˆํ•œ ๊น€ํƒ๊ทœ ํšŒ์žฅ์ด ํ›„๋ณด์ž ๋“ฑ๋ก ๋ฌดํšจ ํšจ๋ ฅ ์ •์ง€ ๊ฐ€์ฒ˜๋ถ„ ์‹ ์ฒญ์„ ์ œ๊ธฐํ–ˆ๊ณ  ๋ฒ•์›์ด ์ด๋ฅผ ๋ฐ›์•„๋“ค์ด๋ฉด์„œ ์„ ๊ฑฐ๊ฐ€ 1์ฐจ๋ก€ ๋ฏธ๋ค„์กŒ๋‹ค. ๋ฒ•์›์€ ๊ธฐ์กด ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ์˜ ๊ฒฐ์ •์— ์ค‘๋Œ€ํ•œ ์ ˆ์ฐจ์  ํ•˜์ž๊ฐ€ ์žˆ๋Š” ๋งŒํผ ์ž…ํ›„๋ณด ๋ถˆํ—ˆ ์กฐ์ฒ˜์˜ ํšจ๋ ฅ์„ ์ž„์‹œ๋กœ๋ผ๋„ ์ •์ง€ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ํŒ๋‹จํ–ˆ๋‹ค.
189
-
190
- ํ›„๋ณด ์ž๊ฒฉ์„ ๋˜์ฐพ์€ ๊น€ํƒ๊ทœ ํšŒ์žฅ์€ ์ž…์žฅ๋ฌธ์„ ํ†ตํ•ด ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ๋ฅผ ๊ฐ•ํ•˜๊ฒŒ ๋น„ํŒํ–ˆ๋‹ค.
191
-
192
- ๊น€ ํšŒ์žฅ์€ "์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ๊ฐ€ 23์ผ๋กœ ๋‚ ์งœ๋ฅผ ์žก์€ ๊ฒƒ์€ ์ง€๋‚œ 9์ผ๋ถ€ํ„ฐ ์„ ๊ฑฐ ์šด๋™์— ๋Œ์ž…ํ•œ ์„ธ ํ›„๋ณด์™€ ๋น„๊ตํ•˜๋ฉด (๋‚˜์—๊ฒ) ๋„ˆ๋ฌด๋‚˜ ๋ถˆ๊ณต์ •ํ•œ ๊ฒฐ์ •"์ด๋ผ๊ณ  ์ง€์ ํ–ˆ๋‹ค.
193
-
194
- ์ด์–ด "๋ฒ•์›์˜ ํŒ๊ฒฐ์„ ๋ฌด์‹œํ•œ ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ์™€ ์ด๋ฅผ ๋ฐฉ๊ด€ ์ค‘์ธ ํ˜‘ํšŒ๋ฅผ ์ƒ๋Œ€๋กœ ๊ฐ•๋ ฅํ•œ ๋ฒ•์  ์กฐ์น˜์™€ ๋”๋ถˆ์–ด ๋‹ค์‹œ ์„ ๊ฑฐ ์ค‘์ง€ ๊ฐ€์ฒ˜๋ถ„ ์‹ ์ฒญ์„ ํ•˜๋ ค ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋Œ€ํ•œ๋ฏผ๊ตญ ๋ฐฐ๋“œ๋ฏผํ„ด๊ณผ ์„ ์ˆ˜, ์ง€๋„์ž, ๋™ํ˜ธ์ธ๋“ค์„ ์‚ฌ๋ž‘ํ•˜๋Š” ์‚ฌ๋žŒ์œผ๋กœ์„œ ์ฐจ๋งˆ ๊ทธ๋ ‡๊ฒŒ๊นŒ์ง€ ํ•˜๋ฉด ์•ˆ ๋œ๋‹ค๋Š” ๊ฒฐ๋ก ์„ ๋ƒˆ๋‹ค. ์ด ์‹œ๊ฐ„๋ถ€๋กœ ์„ ๊ฑฐ์šด์˜์œ„์›ํšŒ์˜ ๊ฒฐ์ •์„ ์ˆ˜์šฉํ•˜๊ณ  ์ด๋ฒˆ ์„ ๊ฑฐ์— ์ž„ํ•  ๊ฒƒ"์ด๋ผ๊ณ  ๋ง๋ถ™์˜€๋‹ค.
195
- ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ์žฅ ์„ ๊ฑฐ์—๋Š” ์ตœ์Šนํƒ ์ „ ๋Œ€๊ตฌ๋ฐฐ๋“œ๋ฏผํ„ดํ˜‘ํšŒ์žฅ(ํƒœ์„ฑ์‚ฐ์—… ๋Œ€ํ‘œ), ์ „๊ฒฝํ›ˆ ํ•œ๊ตญ์‹ค์—…๋ฐฐ๋“œ๋ฏผํ„ด์—ฐ๋งน ํšŒ์žฅ(์—ด์ •์ฝ”๋ฆฌ์•„ ๋Œ€ํ‘œ์ด์‚ฌ), ์˜ฌ๋ฆผํ”ฝ ๊ธˆ๋ฉ”๋‹ฌ๋ฆฌ์ŠคํŠธ ์ถœ์‹ ์˜ ๊น€๋™๋ฌธ ์›๊ด‘๋Œ€ ์Šคํฌ์ธ ๊ณผํ•™๋ถ€ ๊ต์ˆ˜๊ฐ€ ํ›„๋ณด๋กœ ๋“ฑ๋กํ–ˆ๋‹ค. ์—ฌ๊ธฐ์— ๊น€ํƒ๊ทœ ํšŒ์žฅ์ด ํ•จ๊ป˜ ํ›„๋ณด๋กœ ์„ ๊ฑฐ๋ฅผ ์น˜๋ฅด๊ฒŒ ๋๋‹ค.
196
- """
197
- # test_body = """
198
- # ์„ธ๊ณ„ 1์œ„ ์ธ๊ณต์ง€๋Šฅ(AI) ์นฉ ์ƒ์‚ฐ๊ธฐ์—… ์—”๋น„๋””์•„์˜ ์  ์Šจ ํ™ฉ ์ตœ๊ณ ๊ฒฝ์˜์ž(CEO)๊ฐ€ โ€œAI ๊ฒฝ์Ÿ์—์„œ ์ค‘๊ตญ์ด ๋ฏธ๊ตญ์„ ์ด๊ธธ ๊ฒƒโ€์ด๋ผ๊ณ  ๊ฒฝ๊ณ ํ–ˆ๋‹ค.
199
-
200
- # ํ™ฉ CEO๋Š” 5์ผ(ํ˜„์ง€ ์‹œ๊ฐ„) ์˜๊ตญ ๋Ÿฐ๋˜์—์„œ ํŒŒ์ด๋‚ธ์…œํƒ€์ž„์Šค(FT) ์ฃผ์ตœ๋กœ ์—ด๋ฆฐ ํ–‰์‚ฌ์—์„œ โ€œ๋ฏธ๊ตญ๊ณผ ์˜๊ตญ ๋“ฑ ์„œ๋ฐฉ๊ตญ๊ฐ€๋“ค์€ ๋ƒ‰์†Œ์ฃผ์˜์— ๋ฐœ๋ชฉ์ด ์žกํ˜€ ์žˆ๋‹ค. ์šฐ๋ฆฌ์—๊ฒ ๋” ๋งŽ์€ ๋‚™๊ด€์ฃผ์˜๊ฐ€ ํ•„์š”ํ•˜๋‹คโ€๋ฉฐ ์ด ๊ฐ™์ด ๋งํ–ˆ๋‹ค. ๊ทธ๋Š” ๋ฏธ๊ตญ ๊ฐ ์ฃผ(ๅทž)์—์„œ ์ œ์ • ์ค‘์ธ AI ๊ด€๋ จ ์ƒˆ๋กœ์šด ๊ทœ์ •์„ ์–ธ๊ธ‰ํ•˜๋ฉฐ โ€œ๊ทธ ๊ฒฐ๊ณผ 50๊ฐœ์˜ ์ƒˆ๋กœ์šด ๊ทœ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜๋„ ์žˆ๋‹คโ€๊ณ  ์šฐ๋ คํ–ˆ๋‹ค. ๊ทœ์ œ ํ™˜๊ฒฝ์ด ์„œ๋ฐฉ ๊ตญ๊ฐ€ ๊ธฐ์ˆ  ๊ฒฝ์Ÿ๋ ฅ์„ ๋–จ์–ด๋œจ๋ฆฐ๋‹ค๋Š” ์ง€์ ์ด๋‹ค.
201
-
202
- # ๋ฐ˜๋ฉด ์ค‘๊ตญ ๊ธฐ์—…์€ ์ •๋ถ€ ์ •์ฑ…์— ํž˜์ž…์–ด ๋น ๋ฅด๊ฒŒ ๊ธฐ์ˆ ์„ ๋ฐœ์ „์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ผ๊ณ  ๊ฐ•์กฐํ–ˆ๋‹ค. ํ™ฉ CEO๋Š” โ€œ์ค‘๊ตญ์—์„œ๋Š” ์ „๊ธฐ๊ฐ€ ๋ฌด๋ฃŒโ€๋ผ๋ฉฐ โ€œ์—๋„ˆ์ง€ ๋ณด์กฐ๊ธˆ ์ •์ฑ… ๋•๋ถ„์— ํ˜„์ง€ ๊ธฐ์ˆ ๊ธฐ์—…๋“ค์ด ์—”๋น„๋””์•„ ๋Œ€์ฒด AI ์นฉ์„ ํ›จ์”ฌ ์ €๋ ดํ•˜๊ฒŒ ์šด์šฉํ•  ์ˆ˜ ์žˆ๋‹คโ€๊ณ  ๋งํ–ˆ๋‹ค.
203
-
204
- # ์ผ๋ฐ˜์ ์œผ๋กœ ์—”๋น„๋””์•„ ๊ณ ์„ฑ๋Šฅ ์นฉ์ด ์—ฐ์‚ฐ ๋Šฅ๋ ฅ๊ณผ ์ „๋ ฅ ํšจ์œจ์„ฑ ๋ฉด์—์„œ ํ™”์›จ์ด ๋“ฑ ์ค‘๊ตญ์‚ฐ ์นฉ์„ ์••๋„ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ‰๊ฐ€๋˜์ง€๋งŒ, ์ค‘๊ตญ์ด ์—๋„ˆ์ง€ ๋ณด์กฐ๊ธˆ์„ ์ง€๊ธ‰ํ•˜๋ฉด ๊ธฐ์—…๋“ค์ด ํ™”์›จ์ด ์นฉ์„ ์“ฐ๋”๋ผ๋„ ์—๋„ˆ์ง€ ๋น„์šฉ์„ ๋งŽ์ด ๋ถ€๋‹ดํ•˜์ง€ ์•Š๊ฒŒ ๋จ์œผ๋กœ์จ ์—”๋น„๋””์•„ ์นฉ ์žฅ์ ์ด ์ผ์ • ๋ถ€๋ถ„ ์ƒ์‡„๋œ๋‹ค๋Š” ๋œป์ด๋‹ค.
205
-
206
- # ์‹ค์ œ๋กœ ์ค‘๊ตญ์ด ๋ฐ”์ดํŠธ๋Œ„์Šค, ์•Œ๋ฆฌ๋ฐ”๋ฐ”, ํ…์„ผํŠธ ๋“ฑ ์ฃผ์š” ๊ธฐ์ˆ  ๊ธฐ์—…์ด ์šด์˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ์ „๋ ฅ ์š”๊ธˆ์„ ์ตœ๋Œ€ 50%๊นŒ์ง€ ์ธํ•˜ํ•˜๋Š” ๋ณด์กฐ๊ธˆ ์ œ๋„๋ฅผ ๋„์ž…ํ–ˆ๋‹ค๊ณ  FT๊ฐ€ ์ตœ๊ทผ ๋ณด๋„ํ–ˆ๋‹ค. ์ง€๋ฐฉ ์ •๋ถ€๊ฐ€ ์ž๊ตญ์‚ฐ ์นฉ์„ ์‚ฌ์šฉํ•˜๋ฉด ์—”๋น„๋””์•„๋ณด๋‹ค ์—๋„ˆ์ง€ ํšจ์œจ์ด ๋–จ์–ด์ ธ ๋ฐ์ดํ„ฐ์„ผํ„ฐ ์šด์˜๋น„ ๋ถ€๋‹ด์ด ํฌ๋‹ค๋Š” ์—…๊ณ„ ๋ถˆ๋งŒ์„ ์ ‘์ˆ˜ํ•œ ๋’ค ์ธ์„ผํ‹ฐ๋ธŒ๋ฅผ ํ™•๋Œ€ํ–ˆ๋‹ค.
207
-
208
- # ํ™ฉ CEO์˜ ์ด๋‚  ๋ฐœ์–ธ์€ ๋„๋„๋“œ ํŠธ๋Ÿผํ”„ ๋ฏธ๊ตญ ๋Œ€ํ†ต๋ น์ด ์—”๋น„๋””์•„ ์ตœ์ฒจ๋‹จ ์นฉ ์ค‘๊ตญ ์ˆ˜์ถœ๊ธˆ์ง€๋ฅผ ๊ณ„์† ๊ณ ์ˆ˜ํ•˜๊ฒ ๋‹ค๋Š” ๋ฐฉ์นจ์„ ๋ฐํžŒ ์ดํ›„ ๋‚˜์™€ ๋”์šฑ ์ฃผ๋ชฉ๋ฐ›์•˜๋‹ค. ํŠธ๋Ÿผํ”„ ๋Œ€ํ†ต๋ น์€ ์ง€๋‚œ 2์ผ ๊ณต๊ฐœ๋œ CBS์™€์˜ ์ธํ„ฐ๋ทฐ์—์„œ โ€œ์ค‘๊ตญ์ด ์—”๋น„๋””์•„์™€ ๊ฑฐ๋ž˜ํ•˜๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•˜๊ฒ ์ง€๋งŒ ์ตœ์ฒจ๋‹จ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ํ—ˆ์šฉํ•˜์ง€ ์•Š์„ ๊ฒƒโ€์ด๋ผ๋ฉฐ โ€œ์ตœ์ฒจ๋‹จ ๊ธฐ์ˆ ์€ ๋ฏธ๊ตญ ์™ธ์—๋Š” ๋ˆ„๊ตฌ๋„ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•  ๊ฒƒโ€์ด๋ผ๊ณ  ๋ชป ๋ฐ•์•˜๋‹ค.
209
-
210
- # ์—”๋น„๋””์•„๋Š” ํ˜„์žฌ AI ์นฉ ์‹œ์žฅ 80% ์ด์ƒ์„ ์žฅ์•…ํ•œ ๋…์  ๊ธฐ์—…์ด์ง€๋งŒ, ๊ฐ€์žฅ ํฐ ์ค‘๊ตญ ์‹œ์žฅ์ด ํŠธ๋Ÿผํ”„ ํ–‰์ •๋ถ€๊ฐ€ ์ฃผ๋„ํ•˜๋Š” ๊ณ ๊ฐ•๋„ ์ˆ˜์ถœ ๊ทœ์ œ๋กœ ์‚ฌ์‹ค์ƒ ๋ง‰ํ˜€์žˆ๋‹ค. ์ด์— ์—”๋น„๋””์•„๋Š” ์ค‘๊ตญ ์‹œ์žฅ์šฉ์œผ๋กœ ์ €(ไฝŽ)์„ฑ๋Šฅ AI ์นฉ์„ ๋”ฐ๋กœ ์ œ์ž‘ํ•˜๊ณ  ํ•ด๋‹น ์นฉ ๋งค์ถœ 15%๋ฅผ ๋ฏธ ์ •๋ถ€์— ์ง€๋ถˆํ•˜๊ธฐ๋กœ ํ•ฉ์˜ํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋งˆ์ €๋„ ๋ฏธ ์ •๋ถ€๊ฐ€ ๊ด€๋ จ ๊ทœ์ • ์ฑ„ํƒ์„ ๋ฏธ๋ฃจ๊ณ  ์žˆ์–ด ์‚ฌ์‹ค์ƒ ํŒ๋งค๊ฐ€ ์ค‘๋‹จ๋œ ์ƒํƒœ๋ผ๊ณ  FT๋Š” ๋ณด๋„ํ–ˆ๋‹ค.
211
-
212
- # ํŠธ๋Ÿผํ”„ ๋Œ€ํ†ต๋ น์€ ํ™ฉ CEO์˜ ๋ˆ์งˆ๊ธด ๋กœ๋น„์— ํ•œ๋•Œ ์ง€๋‚œ 10์›” 30์ผ ์—ด๋ฆฐ ๋ฏธ์ค‘ ์ •์ƒํšŒ๋‹ด์—์„œ ์—”๋น„๋””์•„ ์ฒจ๋‹จ AI ๋Œ€์ค‘ ์ˆ˜์ถœ ๋ฌธ์ œ๋ฅผ ์˜์ œ์— ํฌํ•จ์‹œํ‚ฌ ๊ณ„ํš์ด์—ˆ์œผ๋‚˜ ์ฐธ๋ชจ์ง„์˜ ๊ฐ•๋ ฅํ•œ ๋ฐ˜๋Œ€๋กœ ๋งˆ์Œ์„ ๋ฐ”๊พผ ๊ฒƒ์œผ๋กœ ์•Œ๋ ค์กŒ๋‹ค. ํŠธ๋Ÿผํ”„ ๋Œ€ํ†ต๋ น์€ ๋ฏธ์ค‘ ์ •์ƒํšŒ๋‹ด ์ดํ›„ ๊ธฐ์ž๋“ค์—๊ฒŒ โ€œํšŒ๋‹ด์—์„œ ๋ธ”๋ž™์›ฐ(์—”๋น„๋””์•„ ์ตœ์ฒจ๋‹จ AI ์นฉ ์‹œ๋ฆฌ์ฆˆ) ์ด์•ผ๊ธฐ๋Š” ๋‚˜์˜ค์ง€ ์•Š์•˜๋‹คโ€๊ณ  ์ „ํ–ˆ๋‹ค.
213
- # """
214
-
215
- # if "์—ฌ๊ธฐ์—" in test_body:
216
- # print("\n๐Ÿšจ ๊ฒฝ๊ณ : 'test_body' ๋ณ€์ˆ˜์— ํ…Œ์ŠคํŠธํ•  ์‹ค์ œ ๊ธฐ์‚ฌ ๋ณธ๋ฌธ์„ ๋„ฃ์–ด์ฃผ์„ธ์š”!\n")
217
- # else:
218
- result = get_crossref_score_and_reason(test_body)
219
-
220
- print("\n--- ์ตœ์ข… ๊ฒฐ๊ณผ ---")
221
- print(f"Score: {result['score']}")
222
- print(f"Reason: {result['reason']}")
223
- print(f"Recommendation: {result['recommendation']}")
224
- print(f"Found URLs: {result['paired_results']}")
 
29
  def search_naver_api(keywords: list) -> list:
30
  """(API) Naver ๊ฒ€์ƒ‰ API๋กœ Snippet,Link ์ˆ˜์ง‘ (urllib.request + SSL ์šฐํšŒ)"""
31
 
32
+ NAVER_ID =os.environ.get("NAVER_ID")
33
+ NAVER_SECRET =os.environ.get("NAVER_SECRET")
34
 
35
  # --- Check : ํ‚ค์›Œ๋“œ ํ™•์ธ ---
36
  if not keywords:
 
152
  reason = f"๊ต์ฐจ ๊ฒ€์ฆ๋œ ๊ธฐ์‚ฌ {len(snippets)}๊ฑด๊ณผ์˜ ํ‰๊ท  ๋‚ด์šฉ ์ผ์น˜๋„๋Š” {avg_similarity*100:.0f}%์ž…๋‹ˆ๋‹ค."
153
  recommendation = "์–‘ํ˜ธํ•ฉ๋‹ˆ๋‹ค."
154
 
155
+ if avg_similarity < 0.55:
156
  reason = f"๊ด€๋ จ ๊ธฐ์‚ฌ {len(snippets)}๊ฑด๊ณผ ๋‚ด์šฉ ์ผ์น˜๋„๊ฐ€ ๋งค์šฐ ๋‚ฎ์Šต๋‹ˆ๋‹ค. (ํ‰๊ท  {avg_similarity*100:.0f}%)"
157
  recommendation = "๊ธฐ์‚ฌ์˜ ํ•ต์‹ฌ ์‚ฌ์‹ค๊ด€๊ณ„๊ฐ€ ํƒ€ ์–ธ๋ก ์‚ฌ์—์„œ๋„ ๋‹ค๋ฃจ์–ด์ง€๋Š”์ง€ ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค."
158
 
 
162
  "recommendation": recommendation,
163
  "paired_results": paired_results
164
  }