Skip to content

reinhardt0926/DisplayLearn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ“ DisplayLearn

OLED/Display ๊ธฐ์ˆ  ํ•™์Šต์„ ์œ„ํ•œ ์˜คํ”„๋ผ์ธ ํ•™์Šต ํ”Œ๋žซํผ

RAG ๊ธฐ๋ฐ˜ LLM ์•™์ƒ๋ธ”์„ ํ™œ์šฉํ•œ ์ „๋ฌธ ์šฉ์–ด ํ•™์Šต ์‹œ์Šคํ…œ์œผ๋กœ, 4์ง€์„ ๋‹คํ˜• ํ€ด์ฆˆ, ๋ฒˆ์—ญ ํ•™์Šต, ์˜ค๋‹ต ๊ด€๋ฆฌ, ํ†ต๊ณ„ ์ถ”์  ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“„ ๋ณด๊ณ ์„œ

App Process Process

ํ€ด์ฆˆ ํ”„๋กœ๊ทธ๋žจ APP Result of App

RAG ์กฐ๊ฑด๋ณ„ ํ€ด์ฆˆ(& ๋ฒˆ์—ญ) ์ƒ์„ฑ ์ˆ˜์ค€ ๋น„๊ต Ablation Study

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

๐Ÿ“ 4์ง€์„ ๋‹คํ˜• ํ€ด์ฆˆ

  • Easy/Medium/Hard ๋‚œ์ด๋„ ์„ ํƒ
  • ์‹ค์‹œ๊ฐ„ ์ •๋‹ต ํ™•์ธ ๋ฐ ํ”ผ๋“œ๋ฐฑ
  • 256๊ฐœ OLED ์ „๋ฌธ ์šฉ์–ด ๊ธฐ๋ฐ˜

๐ŸŒ ๋ฒˆ์—ญ ํ•™์Šต

  • ์˜์–ด โ†” ํ•œ๊ตญ์–ด ์–‘๋ฐฉํ–ฅ ๋ฒˆ์—ญ
  • ์ฃผ๊ด€์‹ ๋‹ต๋ณ€ ์ž…๋ ฅ
  • ํžŒํŠธ ์ œ๊ณต ๊ธฐ๋Šฅ

๐Ÿ“š ์˜ค๋‹ต๋…ธํŠธ

  • ํ‹€๋ฆฐ ๋ฌธ์ œ ์ž๋™ ์ €์žฅ
  • ํ•„ํ„ฐ๋ง (์œ ํ˜•, ๋‚œ์ด๋„)
  • ์ƒ์„ธ ๋ณด๊ธฐ ๋ฐ ๋ณต์Šต ๊ธฐ๋Šฅ
  • ์งˆ๋ฌธ-๋‹ต๋ณ€-์ •๋‹ต ๋น„๊ต

๐Ÿ“Š ์ ์ˆ˜ํŒ & ํ†ต๊ณ„

  • ์‹ค์‹œ๊ฐ„ ์ ์ˆ˜ ์ถ”์ 
  • ํ‰๊ท /์ตœ๊ณ  ์ ์ˆ˜ ํ‘œ์‹œ
  • ํ•™์Šต ํžˆ์Šคํ† ๋ฆฌ
  • ๋‚œ์ด๋„๋ณ„/์œ ํ˜•๋ณ„ ํ†ต๊ณ„

๐Ÿค– ML ํ•™์Šต (๋ฏธ์™„์„ฑ)

  • ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ ํ•™์Šต (ํ–ฅํ›„ ๊ตฌํ˜„ ์˜ˆ์ •)
  • ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐ ์‹œ๊ฐํ™”

๐Ÿš€ ์„ค์น˜

์š”๊ตฌ์‚ฌํ•ญ

  • Python 3.8 ์ด์ƒ
  • 5GB ์ด์ƒ์˜ ๋””์Šคํฌ ๊ณต๊ฐ„ (๋ชจ๋ธ ํฌํ•จ)

์„ค์น˜ ๋ฐฉ๋ฒ•

# ์ €์žฅ์†Œ ํด๋ก 
git clone https://github.com/yourusername/DisplayLearn.git
cd DisplayLearn

# ์˜์กด์„ฑ ์„ค์น˜
pip install -r requirements.txt

# (์„ ํƒ) PyQt6๊ฐ€ ์—†๋‹ค๋ฉด
pip install PyQt6>=6.6.0

์ดˆ๊ธฐ ์„ค์ •

1. ๋ฒˆ์—ญ ๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œ (์ž๋™)

LLM ๋ฒˆ์—ญ ๋ชจ๋ธ์€ ์ฒซ ์‹คํ–‰ ์‹œ ์ž๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋˜๊ฑฐ๋‚˜, ์ˆ˜๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

# ๋ฒˆ์—ญ ๋ชจ๋ธ ์ˆ˜๋™ ๋‹ค์šด๋กœ๋“œ
python tools/download_models.py

๋ชจ๋ธ์€ models/cache/ ํด๋”์— ์ €์žฅ๋˜๋ฉฐ, Git์—๋Š” ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

2. ๋ฐ์ดํ„ฐ ํŒŒ์ผ (Git์— ํฌํ•จ๋จ)

๋‹ค์Œ ๋ฐ์ดํ„ฐ ํŒŒ์ผ๋“ค์€ Git ์ €์žฅ์†Œ์— ํฌํ•จ๋˜์–ด ์žˆ์–ด ๋ณ„๋„ ๋‹ค์šด๋กœ๋“œ๊ฐ€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค:

  • data/excel/ - Excel ์šฉ์–ด ํŒŒ์ผ
  • data/json/ - JSON ์šฉ์–ด ํŒŒ์ผ
  • data/quiz/ - ์ƒ์„ฑ๋œ ํ€ด์ฆˆ ํŒŒ์ผ (์„ ํƒ์‚ฌํ•ญ)
  • data/translation/ - ์ƒ์„ฑ๋œ ๋ฒˆ์—ญ ๋ฌธ์ œ ํŒŒ์ผ (์„ ํƒ์‚ฌํ•ญ)

์ฐธ๊ณ : PDF ํŒŒ์ผ์€ ablation ์‹คํ—˜์—์„œ๋งŒ ์‚ฌ์šฉ๋˜๋ฉฐ, ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์—์„œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

3. RAG ๋ฒกํ„ฐ DB ๊ตฌ์ถ• (ํ•„์ˆ˜ - 1๋‹จ๊ณ„)

์ฒซ ์‹คํ–‰ ์ „์— RAG ๋ฒกํ„ฐ DB๋ฅผ ๊ตฌ์ถ•ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์€ Excel + JSON + ์›นํฌ๋กค๋Ÿฌ ์กฐํ•ฉ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:

# ๋ฐฉ๋ฒ• 1: ์ „์šฉ ์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ (๊ถŒ์žฅ)
python tools/rebuild_rag_db_excel_json_web.py

# ๋ฐฉ๋ฒ• 2: build_rag_db.py ์‚ฌ์šฉ
python tools/build_rag_db.py \
    --excel-file data/excel/display์šฉ์–ด.xlsx \
    --json-file data/json/display.json \
    --web-only --max-pages 5

๊ตฌ์ถ• ๊ณผ์ •:

  1. Excel ํŒŒ์ผ์—์„œ ์šฉ์–ด ์ถ”์ถœ (data/excel/display์šฉ์–ด.xlsx)
  2. JSON ํŒŒ์ผ์—์„œ ์šฉ์–ด ์ถ”์ถœ (data/json/display.json)
  3. ์›น ํฌ๋กค๋ง์œผ๋กœ ์ถ”๊ฐ€ ์šฉ์–ด ์ˆ˜์ง‘ (์‚ฌ์ดํŠธ๋‹น ์ตœ๋Œ€ 5ํŽ˜์ด์ง€)

์ƒ์„ฑ๋œ ๋ฒกํ„ฐ DB๋Š” data/vector_db/์— ์ €์žฅ๋˜๋ฉฐ, Git์—๋Š” ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด๋ฏธ ๊ตฌ์ถ•๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ:

# ๋ฒกํ„ฐ DB ์กด์žฌ ์—ฌ๋ถ€ ํ™•์ธ
ls -la data/vector_db/

๋ฒกํ„ฐ DB๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๋ฉด ์žฌ๊ตฌ์ถ• ์—†์ด ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ป ์‹คํ–‰

Streamlit ๋ฒ„์ „ (๊ถŒ์žฅ)

streamlit run app_streamlit.py

PyQt6 ๋ฒ„์ „

python app/main.py

์ฒซ ์‹คํ–‰ ์‹œ:

  1. ์‚ฌ์šฉ์ž ๋“ฑ๋ก/๋กœ๊ทธ์ธ
  2. ๋ชจ๋ธ ์ž๋™ ๋‹ค์šด๋กœ๋“œ (์ฒซ ์‹คํ–‰ ์‹œ์—๋งŒ)
  3. ๋ฉ”์ธ ํ™”๋ฉด ํ‘œ์‹œ

๐ŸŽฎ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

๋‹จ์ถ•ํ‚ค

ํƒญ ์ „ํ™˜

  • Ctrl+1: ํ€ด์ฆˆ ํƒญ
  • Ctrl+2: ๋ฒˆ์—ญ ํƒญ
  • Ctrl+3: ์˜ค๋‹ต๋…ธํŠธ ํƒญ
  • Ctrl+4: ์ ์ˆ˜ํŒ ํƒญ
  • Ctrl+5: ML ํ•™์Šต ํƒญ

์ผ๋ฐ˜

  • Ctrl+L: ์‚ฌ์šฉ์ž ๋ณ€๊ฒฝ
  • Ctrl+Q: ์ข…๋ฃŒ
  • F1: ๋„์›€๋ง

ํ€ด์ฆˆ

  • 1-4 ๋˜๋Š” A-D: ๋‹ต ์„ ํƒ
  • Enter: ์ œ์ถœ

๋ฒˆ์—ญ

  • Ctrl+Enter: ์ œ์ถœ

ํ€ด์ฆˆ ์‹œ์ž‘

  1. ํ€ด์ฆˆ ํƒญ ์„ ํƒ
  2. ๋‚œ์ด๋„ ๋ฐ ๋ฌธ์ œ ์ˆ˜ ์„ ํƒ
  3. ์‹œ์ž‘ ๋ฒ„ํŠผ ํด๋ฆญ
  4. ๋ฌธ์ œ ํ’€๊ธฐ
  5. ๊ฒฐ๊ณผ ํ™•์ธ ๋ฐ ์˜ค๋‹ต๋…ธํŠธ ์ž๋™ ์ €์žฅ

์˜ค๋‹ต ๋ณต์Šต

  1. ์˜ค๋‹ต๋…ธํŠธ ํƒญ ์„ ํƒ
  2. ํ•„ํ„ฐ ์ ์šฉ (์„ ํƒ)
  3. ๋ฌธ์ œ ๋”๋ธ”ํด๋ฆญํ•˜์—ฌ ์ƒ์„ธ ๋ณด๊ธฐ
  4. ์งˆ๋ฌธ-๋‹ต๋ณ€-์ •๋‹ต ๋น„๊ต

๐Ÿ“ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

DisplayLearn/
โ”œโ”€โ”€ app/                    # ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
โ”‚   โ”œโ”€โ”€ main.py            # PyQt6 ๋ฉ”์ธ ์‹คํ–‰ ํŒŒ์ผ
โ”‚   โ”œโ”€โ”€ ui/                # UI ์œ„์ ฏ
โ”‚   โ””โ”€โ”€ utils/             # ์œ ํ‹ธ๋ฆฌํ‹ฐ (์‚ฌ์šฉ์ž/์ ์ˆ˜/์˜ค๋‹ต ๊ด€๋ฆฌ)
โ”œโ”€โ”€ app_streamlit.py       # Streamlit ๋ฉ”์ธ ์•ฑ
โ”œโ”€โ”€ core/                  # ํ•ต์‹ฌ ๋กœ์ง
โ”‚   โ”œโ”€โ”€ quiz_engine.py    # ํ€ด์ฆˆ ์—”์ง„
โ”‚   โ”œโ”€โ”€ quiz_generator.py # ํ€ด์ฆˆ ์ƒ์„ฑ
โ”‚   โ”œโ”€โ”€ translation_generator.py # ๋ฒˆ์—ญ ๋ฌธ์ œ ์ƒ์„ฑ
โ”‚   โ””โ”€โ”€ rag/              # RAG ์‹œ์Šคํ…œ
โ”œโ”€โ”€ tools/                  # ๋„๊ตฌ ์Šคํฌ๋ฆฝํŠธ
โ”‚   โ”œโ”€โ”€ build_rag_db.py   # RAG DB ๊ตฌ์ถ•
โ”‚   โ”œโ”€โ”€ generate_all_quizzes.py # ํ€ด์ฆˆ ์ผ๊ด„ ์ƒ์„ฑ
โ”‚   โ””โ”€โ”€ download_models.py # ๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œ
โ”œโ”€โ”€ ml/                    # ML ๊ธฐ๋Šฅ (๋ฏธ์™„์„ฑ)
โ”œโ”€โ”€ models/                # ๋ฒˆ์—ญ ๋ชจ๋ธ
โ”œโ”€โ”€ data/                  # ๋ฐ์ดํ„ฐ
โ”‚   โ”œโ”€โ”€ excel/            # Excel ์šฉ์–ด ํŒŒ์ผ
โ”‚   โ”œโ”€โ”€ json/             # JSON ์šฉ์–ด ํŒŒ์ผ
โ”‚   โ”œโ”€โ”€ quiz/             # ํ€ด์ฆˆ ๋ฐ์ดํ„ฐ
โ”‚   โ”œโ”€โ”€ translation/      # ๋ฒˆ์—ญ ๋ฐ์ดํ„ฐ
โ”‚   โ”œโ”€โ”€ vector_db/        # RAG ๋ฒกํ„ฐ DB (์ƒ์„ฑ๋จ)
โ”‚   โ”œโ”€โ”€ users.json        # ์‚ฌ์šฉ์ž ์ •๋ณด
โ”‚   โ”œโ”€โ”€ scores.json       # ์ ์ˆ˜ ๊ธฐ๋ก
โ”‚   โ””โ”€โ”€ wrong_answers.json # ์˜ค๋‹ต ๊ธฐ๋ก
โ”œโ”€โ”€ ablation/              # RAG ablation ์‹คํ—˜
โ”‚   โ”œโ”€โ”€ RAG_COMPARISON_GUIDE.md
โ”‚   โ”œโ”€โ”€ compare_rag_scenarios.py
โ”‚   โ””โ”€โ”€ results/          # ์‹คํ—˜ ๊ฒฐ๊ณผ
โ”œโ”€โ”€ resources/            # ๋ฆฌ์†Œ์Šค (์•„์ด์ฝ˜ ๋“ฑ)
โ”œโ”€โ”€ requirements.txt      # ์˜์กด์„ฑ
โ”œโ”€โ”€ setup.py             # ์„ค์น˜ ์Šคํฌ๋ฆฝํŠธ
โ””โ”€โ”€ README.md            # ์ด ํŒŒ์ผ

๐Ÿ”ง ๊ฐœ๋ฐœ

์˜์กด์„ฑ

์ฃผ์š” ํŒจํ‚ค์ง€:

  • streamlit (์›น ์•ฑ)
  • PyQt6 6.6.0+ (๋ฐ์Šคํฌํ†ฑ ์•ฑ)
  • transformers 4.35.0+
  • torch 2.0.0+
  • chromadb 0.4.0+
  • sentence-transformers 2.2.0+

์ „์ฒด ๋ชฉ๋ก์€ requirements.txt ์ฐธ์กฐ.

๋ฐฐํฌ

์ˆ˜๋™ ๋นŒ๋“œ

# PyInstaller ์‚ฌ์šฉ (PyQt6 ๋ฒ„์ „)
pip install pyinstaller
pyinstaller --onefile --windowed app/main.py

๐Ÿ”ฌ RAG Ablation ์‹คํ—˜

๋‹ค์–‘ํ•œ RAG ๋ฐ์ดํ„ฐ ์†Œ์Šค ์กฐํ•ฉ์— ๋Œ€ํ•œ ์‹คํ—˜ ๊ฒฐ๊ณผ๋Š” ablation/ ํด๋”์— ์žˆ์Šต๋‹ˆ๋‹ค.

์‹คํ—˜ ์‹œ๋‚˜๋ฆฌ์˜ค:

  • Excel๋งŒ, JSON๋งŒ, ์›นํฌ๋กค๋Ÿฌ๋งŒ
  • Excel + JSON, PDF + ์›นํฌ๋กค๋Ÿฌ
  • Excel + JSON + ์›นํฌ๋กค๋Ÿฌ (๊ธฐ๋ณธ ์‹œ์Šคํ…œ)
  • PDF ํฌํ•จ ์กฐํ•ฉ (ablation ์‹คํ—˜ ์ „์šฉ)

PDF ์‚ฌ์šฉ: PDF ํŒŒ์ผ์€ ablation ์‹คํ—˜์—์„œ๋งŒ ์‚ฌ์šฉ๋˜๋ฉฐ, ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์—์„œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. PDF๋ฅผ ํฌํ•จํ•œ ์‹คํ—˜์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด:

# PDF ํฌํ•จ RAG DB ๊ตฌ์ถ• (ablation ์‹คํ—˜์šฉ)
python tools/build_rag_db.py --pdf-only

# ๋˜๋Š” ablation ์‹คํ—˜ ์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ
python ablation/compare_rag_scenarios.py --scenario pdf_only

์ฐธ๊ณ  ์ž๋ฃŒ:

  • ๊ฐ€์ด๋“œ: ablation/RAG_COMPARISON_GUIDE.md
  • ์‹คํ—˜ ์Šคํฌ๋ฆฝํŠธ: ablation/compare_rag_scenarios.py
  • ๊ฒฐ๊ณผ: ablation/results/

์ž์„ธํ•œ ๋‚ด์šฉ์€ ablation/README.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๐Ÿ—๏ธ ์‹œ์Šคํ…œ ๊ตฌ์ถ• ํ”„๋กœ์„ธ์Šค (7๋‹จ๊ณ„)

DisplayLearn์€ ๋‹ค์Œ 7๋‹จ๊ณ„๋ฅผ ๊ฑฐ์ณ ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค:

1๋‹จ๊ณ„: ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • Excel ํŒŒ์„œ ๊ฐœ๋ฐœ (Display ์ „๋ฌธ ์šฉ์–ด ํŒŒ์ผ)
  • JSON ํŒŒ์„œ ๊ฐœ๋ฐœ (์šฉ์–ด ๋ฐ์ดํ„ฐ ํŒŒ์ผ)
  • ์›น ํฌ๋กค๋Ÿฌ ๊ฐœ๋ฐœ (์ „๋ฌธ ์‚ฌ์ดํŠธ ํฌ๋กค๋ง)
  • ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋ฐ ์ •๊ทœํ™”

์‹คํ–‰ ๋ฐฉ๋ฒ•:

# Excel + JSON + ์›นํฌ๋กค๋Ÿฌ๋กœ RAG DB ๊ตฌ์ถ•
python tools/rebuild_rag_db_excel_json_web.py

2๋‹จ๊ณ„: RAG ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • ChromaDB ๊ธฐ๋ฐ˜ ๋ฒกํ„ฐ ์ €์žฅ์†Œ ๊ตฌ์ถ•
  • ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ ์ดˆ๊ธฐํ™” (sentence-transformers)
  • ์šฉ์–ด ๊ฒ€์ƒ‰ ๋ฐ ์ปจํ…์ŠคํŠธ ์ถ”์ถœ

3๋‹จ๊ณ„: LLM ์•™์ƒ๋ธ” ๋ฒˆ์—ญ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • ๋‹ค์ค‘ ๋ฒˆ์—ญ ๋ชจ๋ธ ํ†ตํ•ฉ (NLLB, M2M-100, mBART)
  • ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ตฌํ˜„
  • GPU/CPU ์ž๋™ ์ „ํ™˜

4๋‹จ๊ณ„: ํ€ด์ฆˆ ์ƒ์„ฑ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • 4์ง€์„ ๋‹คํ˜• ํ€ด์ฆˆ ์ƒ์„ฑ๊ธฐ
  • ๋ฒˆ์—ญ ๋ฌธ์ œ ์ƒ์„ฑ๊ธฐ
  • ๋‚œ์ด๋„ ์ž๋™ ๋ถ„๋ฅ˜

5๋‹จ๊ณ„: ์ •๋‹ต ์ฒดํฌ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • ํ€ด์ฆˆ ์—”์ง„ ๊ตฌํ˜„
  • ์•™์ƒ๋ธ” ๋ฒˆ์—ญ ๊ธฐ๋ฐ˜ ๋‹ต์•ˆ ํ‰๊ฐ€
  • ์œ ์‚ฌ๋„ ๊ธฐ๋ฐ˜ ์ฑ„์ 

6๋‹จ๊ณ„: ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ํ†ตํ•ฉ

  • Streamlit ์›น ์ธํ„ฐํŽ˜์ด์Šค
  • PyQt6 ๋ฐ์Šคํฌํ†ฑ ์ธํ„ฐํŽ˜์ด์Šค
  • ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ๋ฐ ํ†ต๊ณ„ ์ถ”์ 

7๋‹จ๊ณ„: ์‹œ์Šคํ…œ ์ตœ์ ํ™” ๋ฐ ํ…Œ์ŠคํŠธ

  • ๋ฉ”๋ชจ๋ฆฌ ์ตœ์ ํ™”
  • ์„ฑ๋Šฅ ํŠœ๋‹
  • ๋ฐฐํฌ ์ค€๋น„

๐Ÿ“Š ๋ฐ์ดํ„ฐ ๋ฐ ํ€ด์ฆˆ ์ƒ์„ฑ

RAG DB ๊ตฌ์ถ•

๊ธฐ๋ณธ ์‹œ์Šคํ…œ์€ Excel + JSON + ์›นํฌ๋กค๋Ÿฌ ์กฐํ•ฉ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:

# Excel + JSON + ์›นํฌ๋กค๋Ÿฌ๋กœ RAG DB ๊ตฌ์ถ• (๊ถŒ์žฅ)
python tools/rebuild_rag_db_excel_json_web.py

# ๋˜๋Š” ๊ฐœ๋ณ„ ์˜ต์…˜์œผ๋กœ ๊ตฌ์ถ•
python tools/build_rag_db.py \
    --excel-file data/excel/display์šฉ์–ด.xlsx \
    --json-file data/json/display.json \
    --web-only --max-pages 5

์ฐธ๊ณ : PDF๋Š” ablation ์‹คํ—˜์—์„œ๋งŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์‹œ์Šคํ…œ์—์„œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ€ด์ฆˆ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ

# ๋ชจ๋“  ํ€ด์ฆˆ ์ž๋™ ์ƒ์„ฑ (4์ง€์„ ๋‹คํ˜• + ๋ฒˆ์—ญ, ๊ฐ ๋‚œ์ด๋„๋ณ„ 50๊ฐœ)
python tools/generate_all_quizzes.py

# ๊ฐœ๋ณ„ ์ƒ์„ฑ
python tools/generate_multiple_choice_quiz.py -n 50 -l ko --difficulty easy
python tools/generate_translation_quiz.py -n 50 --difficulty easy

๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œ

# ๋ฒˆ์—ญ ๋ชจ๋ธ ์ˆ˜๋™ ๋‹ค์šด๋กœ๋“œ (์ฒซ ์‹คํ–‰ ์‹œ ์ž๋™ ๋‹ค์šด๋กœ๋“œ๋˜์ง€๋งŒ, ์ˆ˜๋™์œผ๋กœ๋„ ๊ฐ€๋Šฅ)
python tools/download_models.py

์ฐธ๊ณ : ๋ชจ๋ธ ํŒŒ์ผ์€ models/cache/์— ์ €์žฅ๋˜๋ฉฐ Git์—๋Š” ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ฒ˜์Œ ์‹คํ–‰ ์‹œ ์ž๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ“ ๋ผ์ด์„ ์Šค

MIT License

๐Ÿ“ง ๋ฌธ์˜

ํ”„๋กœ์ ํŠธ ๋งํฌ: DisplayLearn ์ด๋ฉ”์ผ: ์ด๋ฉ”์ผ


About

Quiz & Translation for Display coworker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages