magictreee commited on
Commit
6c11fd0
ยท
verified ยท
1 Parent(s): 3fb0e3d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +117 -42
app.py CHANGED
@@ -355,6 +355,7 @@ def get_category_outline_prompt(category="์—ฌํ–‰ ๋‹จ์ผ"):
355
  5. ์†Œ์ฃผ์ œ๋“ค์ด ์ „์ฒด ์—ฌํ–‰ ํ๋ฆ„์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ด๋Œ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•˜๋ผ.
356
  6. ์—ฌํ–‰์ž๊ฐ€ ์‹ค์ œ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์ •๋ณด ์ค‘์‹ฌ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ผ.
357
  7. ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ๊ณผ ํŠน์„ฑ์— ๋”ฐ๋ผ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์†Œ์ฃผ์ œ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜๋ผ.
 
358
  [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ]
359
  ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋กœ ์†Œ์ฃผ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ผ:
360
  - ๋„์ž…๋ถ€: [์—ฌํ–‰ ์ฝ”์Šค ๊ฐœ์š” ๋ฐ ํŠน์ง•]
@@ -885,44 +886,96 @@ def get_category_outline_prompt(category="์—ฌํ–‰ ๋‹จ์ผ"):
885
  prompts = {
886
  "์—ฌํ–‰ ๋‹จ์ผ": """
887
  [์—ฌํ–‰ ๋‹จ์ผ์ง€์  ์†Œ์ฃผ์ œ(Outline) ์ƒ์„ฑ ๊ทœ์น™]
888
- 1. ๋„ˆ๋Š” ์ตœ๊ณ ์˜ ์—ฌํ–‰ ๋ธ”๋กœ๊ทธ ์ž‘๊ฐ€์ด์ž ์—ฌํ–‰ ์ฝ˜ํ…์ธ  ๊ตฌ์„ฑ ์ „๋ฌธ๊ฐ€์ด๋‹ค.
889
- 2. ์ฃผ์–ด์ง„ ์ฐธ๊ณ ๊ธ€์„ ๊นŠ์ด ๋ถ„์„ํ•˜์—ฌ ํ•ด๋‹น ์—ฌํ–‰์ง€์— ๋Œ€ํ•œ ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ์ฝ˜ํ…์ธ  ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด๋ผ.
890
- 3. ์—ฌํ–‰์ž์˜ ๊ด€์‹ฌ์„ ๋Œ๊ณ  ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐ ์ดˆ์ ์„ ๋งž์ถฐ๋ผ.
891
- 4. ์—ฌํ–‰์ง€์— ๋Œ€ํ•œ ํ†ต์ฐฐ๋ ฅ ์žˆ๋Š” ๋ถ„์„๊ณผ ์‹ค์šฉ์ ์ธ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ์„ค๊ณ„ํ•˜๋ผ.
892
- [์•„์›ƒ๋ผ์ธ ์ž‘์„ฑ ๊ทœ์น™]
893
- 1. ๋ฐ˜๋“œ์‹œ ์ฐธ๊ณ ๊ธ€์„ ๊นŠ์ด ๋ถ„์„ํ•˜์—ฌ ์—ฌํ–‰์ง€์˜ ํ•ต์‹ฌ ํŠน์ง•๊ณผ ๊ฐ€์น˜ ์žˆ๋Š” ์ •๋ณด๋ฅผ ํŒŒ์•…ํ•˜๋ผ.
894
- 2. ์—ฌํ–‰์ž์˜ ๊ด€์‹ฌ์„ ๋Œ๊ธฐ ์œ„ํ•œ ๋งค๋ ฅ์ ์ธ ์†Œ๊ฐœ๋กœ ์‹œ์ž‘ํ•˜๋ผ.
895
- 3. ์—ฌํ–‰์ง€์— ๋Œ€ํ•œ ์‹ฌ์ธต์  ์ดํ•ด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด๋ผ.
896
- 4. ๊ฐ ์†Œ์ฃผ์ œ๋Š” 20์ž ์ด๋‚ด์˜ ๋ช…ํ™•ํ•˜๊ณ  ๋งค๋ ฅ์ ์ธ ์ œ๋ชฉ์œผ๋กœ ์ž‘์„ฑํ•˜๋ผ.
897
- 5. ์†Œ์ฃผ์ œ๋“ค์€ ์ „์ฒด์ ์œผ๋กœ ์ผ๊ด€๋œ ํ๋ฆ„๊ณผ ์—ฐ๊ฒฐ์„ฑ์„ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค.
898
- 6. ์—ฌํ–‰์ž์—๊ฒŒ ์‹ค์งˆ์ ์ธ ๊ฐ€์น˜์™€ ํ†ต์ฐฐ์„ ์ œ๊ณตํ•˜๋Š” ์ •๋ณด ์ค‘์‹ฌ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ผ.
899
- 7. ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ๊ณผ ํŠน์„ฑ์— ๋”ฐ๋ผ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์†Œ์ฃผ์ œ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜๋ผ.
900
-
901
- [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ]
902
- ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋กœ ์†Œ์ฃผ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ผ:
903
- - ๋„์ž…๋ถ€: [์—ฌํ–‰์ง€ ์†Œ๊ฐœ ๋ฐ ํŠน์ง•]
904
- - ๋ณธ๋ก 1~5: [์ฐธ๊ณ ๊ธ€์—์„œ ํŒŒ์•…๋œ ์ฃผ์š” ๋‚ด์šฉ์— ๋”ฐ๋ผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑ]
905
- - ๊ฒฐ๋ก : [์—ฌํ–‰์ง€ ์ตœ์ข… ํ‰๊ฐ€ ๋ฐ ์ถ”์ฒœ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
906
  """,
907
  "์—ฌํ–‰ ์ฝ”์Šค": """
908
  [์—ฌํ–‰ ์ฝ”์Šค ์†Œ์ฃผ์ œ(Outline) ์ƒ์„ฑ ๊ทœ์น™]
909
- 1. ๋„ˆ๋Š” ์ตœ๊ณ ์˜ ์—ฌํ–‰ ๋ธ”๋กœ๊ทธ ์ž‘๊ฐ€์ด์ž ์—ฌํ–‰ ์ฝ”์Šค ๊ธฐํš ์ „๋ฌธ๊ฐ€์ด๋‹ค.
910
- 2. ์ฃผ์–ด์ง„ ์ฐธ๊ณ ๊ธ€์„ ๊นŠ์ด ๋ถ„์„ํ•˜์—ฌ ์ตœ์ ์˜ ์—ฌํ–‰ ์ฝ”์Šค ๊ตฌ์„ฑ๊ณผ ์ฝ˜ํ…์ธ  ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด๋ผ.
911
- 3. ์—ฌํ–‰์ž์˜ ์‹œ๊ฐ„๊ณผ ๊ฒฝํ—˜์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์ฝ”์Šค ๊ตฌ์„ฑ์— ์ดˆ์ ์„ ๋งž์ถฐ๋ผ.
912
- 4. ์‹ค์šฉ์ ์ด๊ณ  ํšจ์œจ์ ์ธ ์—ฌํ–‰ ๊ณ„ํš์„ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ์„ค๊ณ„ํ•˜๋ผ.
913
- [์•„์›ƒ๋ผ์ธ ์ž‘์„ฑ ๊ทœ์น™]
914
- 1. ์ฐธ๊ณ ๊ธ€์„ ์ฒ ์ €ํžˆ ๋ถ„์„ํ•˜์—ฌ ์—ฌํ–‰ ์ฝ”์Šค์˜ ํ•ต์‹ฌ ์š”์†Œ์™€ ํ๋ฆ„์„ ํŒŒ์•…ํ•˜๋ผ.
915
- 2. ์—ฌํ–‰ ์ฝ”์Šค์˜ ๋งค๋ ฅ๊ณผ ํŠน์ง•์„ ๊ฐ•์กฐํ•˜๋Š” ์†Œ๊ฐœ๋กœ ์‹œ์ž‘ํ•˜๋ผ.
916
- 3. ์—ฌํ–‰ ์ผ์ •์˜ ๋…ผ๋ฆฌ์  ํ๋ฆ„์„ ๋ฐ˜์˜ํ•œ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด๋ผ.
917
- 4. ๊ฐ ์†Œ์ฃผ์ œ๋Š” 20์ž ์ด๋‚ด์˜ ๋ช…ํ™•ํ•˜๊ณ  ๋งค๋ ฅ์ ์ธ ์ œ๋ชฉ์œผ๋กœ ์ž‘์„ฑํ•˜๋ผ.
918
- 5. ์†Œ์ฃผ์ œ๋“ค์ด ์ „์ฒด ์—ฌํ–‰ ํ๋ฆ„์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ด๋Œ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•˜๋ผ.
919
- 6. ์—ฌํ–‰์ž๊ฐ€ ์‹ค์ œ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์ •๋ณด ์ค‘์‹ฌ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ผ.
920
- 7. ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ๊ณผ ํŠน์„ฑ์— ๋”ฐ๋ผ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์†Œ์ฃผ์ œ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜๋ผ.
921
- [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ]
922
- ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋กœ ์†Œ์ฃผ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ผ:
923
- - ๋„์ž…๋ถ€: [์—ฌํ–‰ ์ฝ”์Šค ๊ฐœ์š” ๋ฐ ํŠน์ง•]
924
- - ๋ณธ๋ก 1~5: [์ฐธ๊ณ ๊ธ€์—์„œ ํŒŒ์•…๋œ ์ฃผ์š” ๋‚ด์šฉ์— ๋”ฐ๋ผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑ]
925
- - ๊ฒฐ๋ก : [์ฝ”์Šค์˜ ์žฅ์  ๋ฐ ์ตœ์ข… ์กฐ์–ธ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
926
  """
927
  }
928
  return prompts.get(category, prompts["์—ฌํ–‰ ๋‹จ์ผ"])
@@ -955,17 +1008,15 @@ def generate_outline(category, style, references1, references2, references3):
955
  {references[1] if len(meaningful_refs) > 1 else ""}
956
  {references[2] if len(meaningful_refs) > 2 else ""}
957
  {category_prompt}
958
- {style_prompt}
959
  ์•„์›ƒ๋ผ์ธ ์ƒ์„ฑ ์‹œ ์ถ”๊ฐ€ ์ง€์นจ:
960
  1. ์ฐธ๊ณ ๊ธ€์˜ ํ•ต์‹ฌ ์ฃผ์ œ์™€ ๊ฐ€์น˜ ์žˆ๋Š” ์ •๋ณด๋ฅผ ์ •ํ™•ํžˆ ํŒŒ์•…ํ•˜๋ผ.
961
  2. ๊ฐ ์†Œ์ฃผ์ œ๋Š” 20์ž ์ด๋‚ด๋กœ ๋ช…ํ™•ํ•˜๊ณ  ๋งค๋ ฅ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋ผ.
962
  3. ์ „์ฒด ์•„์›ƒ๋ผ์ธ์ด ๋…ผ๋ฆฌ์  ํ๋ฆ„๊ณผ ์ผ๊ด€์„ฑ์„ ๊ฐ€์ง€๋„๋ก ๊ตฌ์„ฑํ•˜๋ผ.
963
  4. ๋…์ž์˜ ๊ด€์‹ฌ๊ณผ ํ˜ธ๊ธฐ์‹ฌ์„ ์œ ๋ฐœํ•˜๋Š” ์†Œ์ฃผ์ œ๋ฅผ ์„ค๊ณ„ํ•˜๋ผ.
964
- 5. ์—ฌํ–‰์ž์˜ ์‹ค์งˆ์ ์ธ ํ•„์š”์™€ ๊ด€์‹ฌ์‚ฌ๋ฅผ ๋ฐ˜์˜ํ•œ ์†Œ์ฃผ์ œ๋ฅผ ๊ตฌ์„ฑํ•˜๋ผ.
965
- 6. ์†Œ์ฃผ์ œ๋งŒ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ถœ๋ ฅํ•˜๊ณ  ์„ค๋ช…์€ ํฌํ•จํ•˜์ง€ ๋ง๋ผ.
966
- 7. ๊ฐ ์†Œ์ฃผ์ œ๋Š” ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ์— ๋”ฐ๋ผ ์ž์œ ๋กญ๊ฒŒ ๊ตฌ์„ฑํ•˜๋˜, ๋„์ž…๋ถ€์™€ ๊ฒฐ๋ก ์€ ๋ฐ˜๋“œ์‹œ ํฌํ•จํ•˜๋ผ.
967
- 8. ๋ณธ๋ก ์˜ ์ฃผ์ œ๋Š” ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ์„ ๋ฉด๋ฐ€ํžˆ ๋ถ„์„ํ•˜์—ฌ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์ฃผ์ œ๋กœ ๊ตฌ์„ฑํ•˜๋ผ.
968
- 9. ๋ฐ˜๋“œ์‹œ ์ด 7๊ฐœ์˜ ์„น์…˜(๋„์ž…๋ถ€ 1๊ฐœ, ๋ณธ๋ก  5๊ฐœ, ๊ฒฐ๋ก  1๊ฐœ)์„ ๊ตฌ์„ฑํ•˜๋ผ.
969
  """
970
 
971
  # Gemini API ํ˜ธ์ถœ
@@ -975,7 +1026,31 @@ def generate_outline(category, style, references1, references2, references3):
975
  outline_result = re.sub(r'^\s*[-*]\s+', '', outline_result, flags=re.MULTILINE)
976
  outline_result = re.sub(r'^\s*\d+\.\s+', '', outline_result, flags=re.MULTILINE)
977
 
978
- return outline_result
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
979
 
980
  except Exception as e:
981
  logging.error(f"์•„์›ƒ๋ผ์ธ ์ƒ์„ฑ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}")
 
355
  5. ์†Œ์ฃผ์ œ๋“ค์ด ์ „์ฒด ์—ฌํ–‰ ํ๋ฆ„์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ด๋Œ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•˜๋ผ.
356
  6. ์—ฌํ–‰์ž๊ฐ€ ์‹ค์ œ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์ •๋ณด ์ค‘์‹ฌ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ผ.
357
  7. ์ฐธ๊ณ ๊ธ€์˜ ๋‚ด์šฉ๊ณผ ํŠน์„ฑ์— ๋”ฐ๋ผ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์†Œ์ฃผ์ œ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜๋ผ.
358
+
359
  [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ]
360
  ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋กœ ์†Œ์ฃผ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ผ:
361
  - ๋„์ž…๋ถ€: [์—ฌํ–‰ ์ฝ”์Šค ๊ฐœ์š” ๋ฐ ํŠน์ง•]
 
886
  prompts = {
887
  "์—ฌํ–‰ ๋‹จ์ผ": """
888
  [์—ฌํ–‰ ๋‹จ์ผ์ง€์  ์†Œ์ฃผ์ œ(Outline) ์ƒ์„ฑ ๊ทœ์น™]
889
+ [์‹œ์Šคํ…œ ์—ญํ• ]
890
+ ๋‹น์‹ ์€ ์ˆ˜๋…„๊ฐ„์˜ ๊ฒฝํ—˜์„ ๊ฐ€์ง„ ์ „๋ฌธ ์—ฌํ–‰ ๋ธ”๋กœ๊ฑฐ์ž…๋‹ˆ๋‹ค. ํŠน์ • ๋ช…์†Œ, ์ถ•์ œ, ์ด๋ฒคํŠธ ๋“ฑ ๋‹จ์ผ ์—ฌํ–‰ ์ฝ”์Šค์— ๋Œ€ํ•œ ์ƒ์ƒํ•œ ๊ฒฝํ—˜๊ณผ ์œ ์šฉํ•œ ์ •๋ณด๋กœ ๋งŽ์€ ๋…์ž๋“ค์˜ ์‹ ๋ขฐ๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
891
+
892
+ [๋ถ„์„ ๋‹จ๊ณ„]
893
+ 1.์ฐธ๊ณ  ์ž๋ฃŒ 3๊ฐœ๋ฅผ ์ฒ ์ €ํžˆ ๋ถ„์„ํ•˜์—ฌ ํ•ด๋‹น ๋ช…์†Œ/์ถ•์ œ์˜ ํ•ต์‹ฌ ํŠน์ง•๊ณผ ์ค‘์š” ์ •๋ณด ํŒŒ์•…
894
+ 2. ์—ฌํ–‰ ๋ช…์†Œ/์ถ•์ œ์˜ ์œ ํ˜•๊ณผ ํŠน์„ฑ ์‹๋ณ„ (๊ณ„์ ˆ ์ถ•์ œ, ๋ฌธํ™” ํ–‰์‚ฌ, ์ž์—ฐ ๋ช…์†Œ, ์—ญ์‚ฌ ์œ ์ ์ง€ ๋“ฑ)
895
+ 3. ํฌ์ŠคํŒ…์˜ ํ•ต์‹ฌ์ด ๋  5๊ฐ€์ง€ ์ฃผ์š” ์š”์†Œ ํŒŒ์•… (ํ–‰์‚ฌ ํŠน์ง•, ๋ณผ๊ฑฐ๋ฆฌ, ์ฆ๊ธธ๊ฑฐ๋ฆฌ, ๋ฐฉ๋ฌธ ํŒ, ๊ตํ†ต/ํŽธ์˜์‹œ์„ค ๋“ฑ)
896
+
897
+ [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ ์›์น™]
898
+ 1. ๋„์ž…๋ถ€(1๊ฐœ) - ํ•ด๋‹น ๋ช…์†Œ/์ถ•์ œ์˜ ๋งค๋ ฅ์„ ์ง‘์•ฝํ•œ ํฅ๋ฏธ๋กœ์šด ์ œ๋ชฉ์œผ๋กœ ์‹œ์ž‘
899
+ 2. ๋ณธ๋ก (4-5๊ฐœ) - ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ๋ฐœ๊ฒฌํ•œ ๋ช…์†Œ/์ถ•์ œ์˜ ํ•ต์‹ฌ ํŠน์ง•๊ณผ ๋ฐฉ๋ฌธ ์ •๋ณด๋ฅผ ๋‹ด์€ ์†Œ์ œ๋ชฉ
900
+ - ๋ช…์†Œ/์ถ•์ œ์˜ ์ฃผ์š” ํŠน์ง•๊ณผ ์—ญ์‚ฌ์ /๋ฌธํ™”์  ์˜๋ฏธ
901
+ - ๋ฐ˜๋“œ์‹œ ๋†“์น˜์ง€ ๋ง์•„์•ผ ํ•  ํ•ต์‹ฌ ๋ณผ๊ฑฐ๋ฆฌ์™€ ์ฆ๊ธธ๊ฑฐ๋ฆฌ
902
+ - ๋ฐฉ๋ฌธ ์‹œ๊ธฐ, ์‹œ๊ฐ„๋Œ€, ๊ณ„์ ˆ๋ณ„ ํŠน์ง•
903
+ - ๊ตํ†ต, ์ž…์žฅ๋ฃŒ, ์ฃผ์ฐจ, ํŽธ์˜์‹œ์„ค ๋“ฑ ์‹ค์šฉ์  ์ •๋ณด
904
+ - ๋ฐฉ๋ฌธ ์‹œ ์œ ์šฉํ•œ ๊ฟ€ํŒ๊ณผ ์ฃผ์˜์‚ฌํ•ญ
905
+ - (์œ„ ํ•ญ๋ชฉ๋“ค์€ ์˜ˆ์‹œ์ผ ๋ฟ, ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ์ž์œ ๋กญ๊ฒŒ ๊ฒฐ์ •)
906
+ 3. ๊ฒฐ๋ก (1๊ฐœ) - ์ „์ฒด ๊ฒฝํ—˜์„ ์š”์•ฝํ•˜๊ณ  ๋ฐฉ๋ฌธ ๊ฐ€์น˜๋ฅผ ๊ฐ•์กฐํ•˜๋Š” ์ œ๋ชฉ
907
+
908
+ [ํ•ต์‹ฌ ์ง€์นจ]
909
+ 1. ์™„์ „ํžˆ ํ•œ๊ตญ์–ด๋กœ๋งŒ ์ž‘์„ฑํ•  ๊ฒƒ
910
+ 2. ์†Œ์ œ๋ชฉ์€ ์ตœ๋Œ€ 30์ž ์ด๋‚ด๋กœ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑ
911
+ 3. ๋…์ž์˜ ํ˜ธ๊ธฐ์‹ฌ๊ณผ ๋ฐฉ๋ฌธ ์š•๊ตฌ๋ฅผ ์ž๊ทนํ•˜๋Š” ํ‘œํ˜„ ์‚ฌ์šฉ (์˜ˆ: "๋†“์น˜๋ฉด ํ›„ํšŒํ• ", "์ˆจ๊ฒจ์ง„ ์ฆ๊ธธ๊ฑฐ๋ฆฌ", "ํ˜„์ง€์ธ๋„ ์ถ”์ฒœํ•˜๋Š”")
912
+ 4. ๋ช…์†Œ/์ถ•์ œ์˜ ๊ฐ€์žฅ ๋…ํŠนํ•˜๊ณ  ๋งค๋ ฅ์ ์ธ ํŠน์ง•์ด ์†Œ์ œ๋ชฉ์— ๋ฐ˜์˜๋˜๋„๋ก ๊ตฌ์„ฑ
913
+ 5. ํ‚ค์›Œ๋“œ๋Š” ์†Œ์ œ๋ชฉ ๊ฒฐ์ •์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Œ (๋ณธ๋ฌธ ์ž‘์„ฑ ์‹œ ์ฐธ๊ณ ์‚ฌํ•ญ์œผ๋กœ๋งŒ ํ™œ์šฉ)
914
+ 6. ์ „์ฒด ์•„์›ƒ๋ผ์ธ์€ ๋„์ž…๋ถ€(1) + ๋ณธ๋ก (์ตœ๋Œ€ 5๊ฐœ) + ๊ฒฐ๋ก (1)์œผ๋กœ ๊ตฌ์„ฑ
915
+
916
+ [์ถœ๋ ฅ ํ˜•์‹]
917
+ 1. ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ๊ฐ€์žฅ ํ•ต์‹ฌ์ ์ธ ๋ช…์†Œ/์ถ•์ œ ํŠน์ง•๊ณผ ์ •๋ณด๋ฅผ ํŒŒ์•…ํ•˜์—ฌ ์ž์œ ๋กญ๊ฒŒ ์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ
918
+ 2. ํ•˜์ง€๋งŒ ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋ฅผ ์œ ์ง€ํ•  ๊ฒƒ:(๊ฐ ํ•ญ๋ชฉ๋‹น 1๋ฒˆ ์—”ํ„ฐ๋ฅผ ์ ์šฉํ•˜์—ฌ ๋นˆ์นธ์ด ๋‚˜์˜ค์ง€ ์•Š๋„๋กํ•˜๋ผ.)
919
+ 3. ๋„์ž…๋ถ€: 1๊ฐœ (๋ช…์†Œ/์ถ•์ œ์˜ ๋งค๋ ฅ์„ ๋‹ด์€ ํฅ๋ฏธ๋กœ์šด ์ œ๋ชฉ)
920
+ 4. ๋ณธ๋ก : 4-5๊ฐœ (๋ช…์†Œ/์ถ•์ œ์˜ ํ•ต์‹ฌ ํŠน์ง•๊ณผ ์‹ค์šฉ ์ •๋ณด๋ฅผ ๋ฐ˜์˜ํ•œ ์ œ๋ชฉ)
921
+ 5. ๊ฒฐ๋ก : 1๊ฐœ (์ „์ฒด ๊ฒฝํ—˜ ์š”์•ฝ ๋ฐ ๋ฐฉ๋ฌธ ๊ฐ€์น˜ ๊ฐ•์กฐ ์ œ๋ชฉ)
922
+ 6. ์†Œ์ œ๋ชฉ์€ ํ•ด๋‹น ๋ช…์†Œ/์ถ•์ œ์˜ ์‹ค์ œ ํŠน์ง•๊ณผ ๋ฐฉ๋ฌธ ์ •๋ณด์— ๋งž๊ฒŒ ์ž์œ ๋กญ๊ฒŒ ๊ตฌ์„ฑ
923
+ 7. ํ‚ค์›Œ๋“œ์— ๋งž์ถ”์ง€ ๋ง๊ณ , ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ๋ฐœ๊ฒฌํ•œ ํ•ต์‹ฌ ๊ฐ€์น˜์™€ ์ •๋ณด ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ
924
+ 8. ์˜ˆ์‹œ ํ˜•์‹ (์ฐธ๊ณ ์šฉ์ผ ๋ฟ, ๋‚ด์šฉ์€ ์ฐธ๊ณ  ์ž๋ฃŒ์— ๋”ฐ๋ผ ์™„์ „ํžˆ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Œ):
925
+ - ๋„์ž…๋ถ€: [๋ช…์†Œ/์ถ•์ œ์˜ ๋งค๋ ฅ ์†Œ๊ฐœ ์ œ๋ชฉ]
926
+ - ๋ณธ๋ก 1: [ํ•ต์‹ฌ ํŠน์ง•/์—ญ์‚ฌ์  ์˜๋ฏธ ๊ด€๋ จ ์ œ๋ชฉ]
927
+ - ๋ณธ๋ก 2: [์ฃผ์š” ๋ณผ๊ฑฐ๋ฆฌ/์ฆ๊ธธ๊ฑฐ๋ฆฌ ๊ด€๋ จ ์ œ๋ชฉ]
928
+ - ๋ณธ๋ก 3: [์ตœ์ ์˜ ๋ฐฉ๋ฌธ ์‹œ๊ธฐ/์‹œ๊ฐ„ ๊ด€๋ จ ์ œ๋ชฉ]
929
+ - ๋ณธ๋ก 4: [๊ตํ†ต/ํŽธ์˜์‹œ์„ค ์ •๋ณด ๊ด€๋ จ ์ œ๋ชฉ]
930
+ - ๋ณธ๋ก 5: [๋ฐฉ๋ฌธ ๊ฟ€ํŒ/์ฃผ์˜์‚ฌํ•ญ ๊ด€๋ จ ์ œ๋ชฉ] (ํ•„์š”์‹œ)
931
+ - ๊ฒฐ๋ก : [๊ฒฝํ—˜ ์š”์•ฝ ๋ฐ ๋ฐฉ๋ฌธ ๊ฐ€์น˜ ๊ฐ•์กฐ ์ œ๋ชฉ]
932
  """,
933
  "์—ฌํ–‰ ์ฝ”์Šค": """
934
  [์—ฌํ–‰ ์ฝ”์Šค ์†Œ์ฃผ์ œ(Outline) ์ƒ์„ฑ ๊ทœ์น™]
935
+ [์‹œ์Šคํ…œ ์—ญํ• ]
936
+ ๋‹น์‹ ์€ ์ˆ˜๋…„๊ฐ„์˜ ๊ฒฝํ—˜์„ ๊ฐ€์ง„ ์ „๋ฌธ ์—ฌํ–‰ ์ฝ”์Šค ๊ธฐํš์ž์ž…๋‹ˆ๋‹ค. ํšจ์œจ์ ์ด๊ณ  ๋งค๋ ฅ์ ์ธ ์—ฌํ–‰ ์ฝ”์Šค ์„ค๊ณ„์™€ ์‹ค์šฉ์ ์ธ
937
+ ์—ฌํ–‰ ํŒ์œผ๋กœ ๋งŽ์€ ๋…์ž๋“ค์˜ ์‹ ๋ขฐ๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
938
+
939
+ [๋ถ„์„ ๋‹จ๊ณ„]
940
+ 1. ์ฐธ๊ณ  ์ž๋ฃŒ 3๊ฐœ๋ฅผ ์ฒ ์ €ํžˆ ๋ถ„์„ํ•˜์—ฌ ํ•ด๋‹น ์ง€์—ญ์˜ ํ•ต์‹ฌ ๋ช…์†Œ์™€ ์—ฌํ–‰ ์ •๋ณด ํŒŒ์•…
941
+ 2. ์—ฌํ–‰ ์ง€์—ญ์˜ ์œ ํ˜•๊ณผ ํŠน์„ฑ ์‹๋ณ„ (๋„์‹œ ์—ฌํ–‰, ์ž์—ฐ ์—ฌํ–‰, ๋ฌธํ™” ํƒ๋ฐฉ, ๋ง›์ง‘ ํˆฌ์–ด ๋“ฑ)
942
+ 3. ํฌ์ŠคํŒ…์˜ ํ•ต์‹ฌ์ด ๋  5๊ฐ€์ง€ ์ฃผ์š” ์š”์†Œ ํŒŒ์•… (์—ฌํ–‰ ๊ธฐ๊ฐ„, ์ฃผ์š” ๋ช…์†Œ, ์ด๋™ ๋ฐฉ๋ฒ•, ์ˆ™๋ฐ• ์˜ต์…˜, ์˜ˆ์‚ฐ ๋“ฑ)
943
+
944
+ [์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ ์›์น™]
945
+ 1. ๋„์ž…๋ถ€(1๊ฐœ) - ํ•ด๋‹น ์ง€์—ญ์˜ ๋งค๋ ฅ๊ณผ ์ฝ”์Šค์˜ ํŠน์ง•์„ ์ง‘์•ฝํ•œ ํฅ๋ฏธ๋กœ์šด ์ œ๋ชฉ์œผ๋กœ ์‹œ์ž‘
946
+ 2. ๋ณธ๋ก (4-5๊ฐœ) - ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ์„ค๊ณ„ํ•œ ์—ฌํ–‰ ์ฝ”์Šค์˜ ์ฃผ์š” ์ผ์ •๊ณผ ์ •๋ณด๋ฅผ ๋‹ด์€ ์†Œ์ œ๋ชฉ
947
+ 3. ์ฝ”์Šค ๊ฐœ์š”์™€ ์—ฌํ–‰ ๊ธฐ๊ฐ„๋ณ„ ์ถ”์ฒœ ์ผ์ •
948
+ 4. ์ผ์ฐจ๋ณ„ ๋˜๋Š” ํ…Œ๋งˆ๋ณ„ ์„ธ๋ถ€ ์ฝ”์Šค ๊ตฌ์„ฑ
949
+ 5. ํšจ์œจ์ ์ธ ์ด๋™ ๋ฐฉ๋ฒ•๊ณผ ๊ตํ†ต ์ •๋ณด
950
+ 6. ์ˆ™์†Œ ๋ฐ ์‹๋‹น ์ถ”์ฒœ๊ณผ ์˜ˆ์•ฝ ํŒ
951
+ 7. ์—ฌํ–‰ ์˜ˆ์‚ฐ๊ณผ ๋น„์šฉ ์ ˆ์•ฝ ๋ฐฉ๋ฒ•
952
+ 8. (์œ„ ํ•ญ๋ชฉ๋“ค์€ ์˜ˆ์‹œ์ผ ๋ฟ, ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ์ž์œ ๋กญ๊ฒŒ ๊ฒฐ์ •)
953
+ 9. ๊ฒฐ๋ก (1๊ฐœ) - ์ „์ฒด ์ฝ”์Šค์˜ ํŠน์ง•์„ ์š”์•ฝํ•˜๊ณ  ์—ฌํ–‰ ๊ณ„ํš ์ˆ˜๋ฆฝ์— ๋„์›€์„ ์ฃผ๋Š” ์ œ๋ชฉ
954
+
955
+ [ํ•ต์‹ฌ ์ง€์นจ]
956
+ 1. ์™„์ „ํžˆ ํ•œ๊ตญ์–ด๋กœ๋งŒ ์ž‘์„ฑํ•  ๊ฒƒ
957
+ 2. ์†Œ์ œ๋ชฉ์€ ์ตœ๋Œ€ 30์ž ์ด๋‚ด๋กœ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑ
958
+ 3. ๋…์ž์˜ ์—ฌํ–‰ ๊ณ„ํš ์ˆ˜๋ฆฝ์„ ๋•๋Š” ์‹ค์šฉ์ ์ธ ํ‘œํ˜„ ์‚ฌ์šฉ (์˜ˆ: "์™„๋ฒฝํ•œ 3๋ฐ• 4์ผ ์ฝ”์Šค", "ํšจ์œจ์ ์ธ ๋™์„  ์„ค๊ณ„", "ํ˜„์ง€์ธ์ด ์•Œ๋ ค์ฃผ๋Š” ๊ฟ€์ฝ”์Šค")
959
+ 4. ์ฝ”์Šค์˜ ํšจ์œจ์„ฑ๊ณผ ๋งค๋ ฅ์ ์ธ ํŠน์ง•์ด ์†Œ์ œ๋ชฉ์— ๋ฐ˜์˜๋˜๋„๋ก ๊ตฌ์„ฑ
960
+ 5. ํ‚ค์›Œ๋“œ๋Š” ์†Œ์ œ๋ชฉ ๊ฒฐ์ •์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Œ (๋ณธ๋ฌธ ์ž‘์„ฑ ์‹œ ์ฐธ๊ณ ์‚ฌํ•ญ์œผ๋กœ๋งŒ ํ™œ์šฉ)
961
+ 6. ์ „์ฒด ์•„์›ƒ๋ผ์ธ์€ ๋„์ž…๋ถ€(1) + ๋ณธ๋ก (์ตœ๋Œ€ 5๊ฐœ) + ๊ฒฐ๋ก (1)์œผ๋กœ ๊ตฌ์„ฑ
962
+
963
+ [์ถœ๋ ฅ ํ˜•์‹]
964
+ 1. ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ๊ฐ€์žฅ ํšจ์œจ์ ์ด๊ณ  ๋งค๋ ฅ์ ์ธ ์—ฌํ–‰ ์ฝ”์Šค๋ฅผ ์„ค๊ณ„ํ•˜์—ฌ ์ž์œ ๋กญ๊ฒŒ ์•„์›ƒ๋ผ์ธ ๊ตฌ์„ฑ
965
+ 2. ํ•˜์ง€๋งŒ ๋ฐ˜๋“œ์‹œ ๋‹ค์Œ ๊ตฌ์กฐ๋ฅผ ์œ ์ง€ํ•  ๊ฒƒ:(๊ฐ ํ•ญ๋ชฉ๋‹น 1๋ฒˆ ์—”ํ„ฐ๋ฅผ ์ ์šฉํ•˜์—ฌ ๋นˆ์นธ์ด ๋‚˜์˜ค์ง€ ์•Š๋„๋กํ•˜๋ผ.)
966
+ 3. ๋„์ž…๋ถ€: 1๊ฐœ (์ง€์—ญ ๋งค๋ ฅ๊ณผ ์ฝ”์Šค ํŠน์ง•์„ ๋‹ด์€ ํฅ๋ฏธ๋กœ์šด ์ œ๋ชฉ)
967
+ 4. ๋ณธ๋ก : 4-5๊ฐœ (ํšจ์œจ์ ์ธ ์—ฌํ–‰ ๋™์„ ๊ณผ ์‹ค์šฉ ์ •๋ณด๋ฅผ ๋ฐ˜์˜ํ•œ ์ œ๋ชฉ)
968
+ 5. ๊ฒฐ๋ก : 1๊ฐœ (์ „์ฒด ์ฝ”์Šค ์š”์•ฝ ๋ฐ ๊ณ„ํš ์ˆ˜๋ฆฝ ๋„์›€ ์ œ๋ชฉ)
969
+ 6. ์†Œ์ œ๋ชฉ์€ ํ•ด๋‹น ์ง€์—ญ์˜ ์‹ค์ œ ํŠน์ง•๊ณผ ์ฝ”์Šค ์ •๋ณด์— ๋งž๊ฒŒ ์ž์œ ๋กญ๊ฒŒ ๊ตฌ์„ฑ
970
+ 7. ํ‚ค์›Œ๋“œ์— ๋งž์ถ”์ง€ ๋ง๊ณ , ์ฐธ๊ณ  ์ž๋ฃŒ ๋ถ„์„์„ ํ†ตํ•ด ๋ฐœ๊ฒฌํ•œ ํ•ต์‹ฌ ์ฝ”์Šค์™€ ์ •๋ณด ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ
971
+ 8. ์˜ˆ์‹œ ํ˜•์‹ (์ฐธ๊ณ ์šฉ์ผ ๋ฟ, ๋‚ด์šฉ์€ ์ฐธ๊ณ  ์ž๋ฃŒ์— ๋”ฐ๋ผ ์™„์ „ํžˆ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Œ):
972
+ - ๋„์ž…๋ถ€: [์ง€์—ญ ๋งค๋ ฅ๊ณผ ์ฝ”์Šค ํŠน์ง• ์†Œ๊ฐœ ์ œ๋ชฉ]
973
+ - ๋ณธ๋ก 1: [์—ฌํ–‰ ๊ธฐ๊ฐ„๋ณ„ ์ถ”์ฒœ ์ผ์ • ๊ด€๋ จ ์ œ๋ชฉ]
974
+ - ๋ณธ๋ก 2: [์ผ์ฐจ๋ณ„/ํ…Œ๋งˆ๋ณ„ ์„ธ๋ถ€ ์ฝ”์Šค ๊ด€๋ จ ์ œ๋ชฉ]
975
+ - ๋ณธ๋ก 3: [๊ตํ†ต/์ด๋™ ๋ฐฉ๋ฒ• ๊ด€๋ จ ์ œ๋ชฉ]
976
+ - ๋ณธ๋ก 4: [์ˆ™์†Œ/์‹๋‹น ์ถ”์ฒœ ๊ด€๋ จ ์ œ๋ชฉ]
977
+ - ๋ณธ๋ก 5: [์˜ˆ์‚ฐ/๋น„์šฉ ์ ˆ์•ฝ ํŒ ๊ด€๋ จ ์ œ๋ชฉ] (ํ•„์š”์‹œ)
978
+ - ๊ฒฐ๋ก : [์ฝ”์Šค ์š”์•ฝ ๋ฐ ๊ณ„ํš ์ˆ˜๋ฆฝ ๋„์›€ ์ œ๋ชฉ]
979
  """
980
  }
981
  return prompts.get(category, prompts["์—ฌํ–‰ ๋‹จ์ผ"])
 
1008
  {references[1] if len(meaningful_refs) > 1 else ""}
1009
  {references[2] if len(meaningful_refs) > 2 else ""}
1010
  {category_prompt}
 
1011
  ์•„์›ƒ๋ผ์ธ ์ƒ์„ฑ ์‹œ ์ถ”๊ฐ€ ์ง€์นจ:
1012
  1. ์ฐธ๊ณ ๊ธ€์˜ ํ•ต์‹ฌ ์ฃผ์ œ์™€ ๊ฐ€์น˜ ์žˆ๋Š” ์ •๋ณด๋ฅผ ์ •ํ™•ํžˆ ํŒŒ์•…ํ•˜๋ผ.
1013
  2. ๊ฐ ์†Œ์ฃผ์ œ๋Š” 20์ž ์ด๋‚ด๋กœ ๋ช…ํ™•ํ•˜๊ณ  ๋งค๋ ฅ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋ผ.
1014
  3. ์ „์ฒด ์•„์›ƒ๋ผ์ธ์ด ๋…ผ๋ฆฌ์  ํ๋ฆ„๊ณผ ์ผ๊ด€์„ฑ์„ ๊ฐ€์ง€๋„๋ก ๊ตฌ์„ฑํ•˜๋ผ.
1015
  4. ๋…์ž์˜ ๊ด€์‹ฌ๊ณผ ํ˜ธ๊ธฐ์‹ฌ์„ ์œ ๋ฐœํ•˜๋Š” ์†Œ์ฃผ์ œ๋ฅผ ์„ค๊ณ„ํ•˜๋ผ.
1016
+ 5. ์†Œ์ฃผ์ œ๋งŒ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ถœ๋ ฅํ•˜๊ณ  ์„ค๋ช…์€ ํฌํ•จํ•˜์ง€ ๋ง๋ผ.
1017
+ 6. ๊ฐ ์†Œ์ฃผ์ œ๊ฐ€ ์•ฝ์†๋œ ์„น์…˜(๋„์ž…๋ถ€, ๋ณธ๋ก 1~5, ๊ฒฐ๋ก )์— ์ ํ•ฉํ•œ์ง€ ํ™•์ธํ•˜๋ผ.
1018
+ 7. ๋ฐฑํ‹ฑ(```)์ด๋‚˜ ์ฝ”๋“œ ๋ธ”๋ก ํ‘œ์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ง๋ผ.
1019
+ 8. ์ •ํ™•ํžˆ 7์ค„๋กœ ๊ตฌ์„ฑํ•˜์—ฌ '๋„์ž…๋ถ€', '๋ณธ๋ก 1~5', '๊ฒฐ๋ก '๋งŒ ์ถœ๋ ฅํ•˜๋ผ.
 
1020
  """
1021
 
1022
  # Gemini API ํ˜ธ์ถœ
 
1026
  outline_result = re.sub(r'^\s*[-*]\s+', '', outline_result, flags=re.MULTILINE)
1027
  outline_result = re.sub(r'^\s*\d+\.\s+', '', outline_result, flags=re.MULTILINE)
1028
 
1029
+ # ๋ฐฑํ‹ฑ ๋ฐ ์ฝ”๋“œ ๋ธ”๋ก ์ œ๊ฑฐ
1030
+ outline_result = re.sub(r'```[a-zA-Z]*\n?', '', outline_result)
1031
+ outline_result = re.sub(r'```', '', outline_result)
1032
+
1033
+ # ์ •ํ™•ํžˆ 7์ค„ ํ˜•์‹์œผ๋กœ ์ •๋ฆฌ
1034
+ lines = outline_result.strip().split('\n')
1035
+ clean_lines = []
1036
+
1037
+ for line in lines:
1038
+ line = line.strip()
1039
+ if line and (line.startswith('๋„์ž…๋ถ€:') or
1040
+ line.startswith('๋ณธ๋ก ') or
1041
+ line.startswith('๊ฒฐ๋ก :')):
1042
+ clean_lines.append(line)
1043
+
1044
+ # ์ •ํ™•ํžˆ 7์ค„์ด ๋‚˜์˜ค๋„๋ก ์กฐ์ •
1045
+ if len(clean_lines) > 7:
1046
+ clean_lines = clean_lines[:7]
1047
+ elif len(clean_lines) < 7:
1048
+ sections = ['๋„์ž…๋ถ€:', '๋ณธ๋ก 1:', '๋ณธ๋ก 2:', '๋ณธ๋ก 3:', '๋ณธ๋ก 4:', '๋ณธ๋ก 5:', '๊ฒฐ๋ก :']
1049
+ while len(clean_lines) < 7:
1050
+ missing_section = sections[len(clean_lines)]
1051
+ clean_lines.append(f"{missing_section} ์ถ”๊ฐ€ ๋‚ด์šฉ ํ•„์š”")
1052
+
1053
+ return '\n'.join(clean_lines)
1054
 
1055
  except Exception as e:
1056
  logging.error(f"์•„์›ƒ๋ผ์ธ ์ƒ์„ฑ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}")