Skip to content

hyunyoungDA/NVIDIA-final-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

68 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ™๏ธ ํ‚ค์˜ค์Šคํฌ ๋ณด์กฐ ์ฑ—๋ด‡, ์—˜๋”์ด์ฆˆ

NVIDIA-final-project Team 4


๐ŸŽฏ ์ฃผ์ œ

ํ‚ค์˜ค์Šคํฌ ๋ณด์กฐ ์ฑ—๋ด‡


๐ŸŽ‰ ์„œ๋น„์Šค ๋‚ด์šฉ

๊ณ ๋ น์ธต์„ ํฌํ•จํ•œ ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” ํ‚ค์˜ค์Šคํฌ ๋ณด์กฐ ์ฑ—๋ด‡ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!
์Œ์„ฑ ์•ˆ๋‚ด, ์Œ์„ฑ ๋ช…๋ น ๋ฐ ํŠน์ • ์‹๋‹จ ํ•„ํ„ฐ๋ง, ์ฃผ๋ฌธ ๋‚ด์šฉ ํ™•์ธ ๋“ฑ ์‹ค์งˆ์ ์ธ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์—ฌ ํ˜„์žฅ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ฃผ๋ฌธ ์˜ค๋ฅ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ  ์‚ฌ์šฉ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค!


๐Ÿ—“๏ธ ํ”„๋กœ์ ํŠธ ์ˆ˜ํ–‰ ๊ธฐ๊ฐ„

2025.08.18 ~ 2025.08.27


๐Ÿ˜Ž ํŒ€์›์†Œ๊ฐœ

td
๊น€๊ทผํ˜ธ ๊น€๋™์€ ๊น€๋‘ํ˜„ ๊น€๋ฏผ์ง€ ์˜คํ˜„์˜ ์ „์ง€์„ฑ
๊น€๊ทผํ˜ธ ๊น€๋™์€ ๊น€๋‘ํ˜„๊น€๋ฏผ์ง€ ์˜คํ˜„์˜ ์ „์ง€์„ฑ
์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ผ์ • ๊ด€๋ฆฌ, ํŒ€ ์กฐ์œจ
์ผ๋ฐ˜ ๋ชจ๋“œ Streamlit
AI ์ฑ—๋ด‡(TTS, STT, ChatGPT API ํ™œ์šฉ, ๋Œ€ํ™” ๋กœ์ง ์„ค๊ณ„)
์–ด๋ฅด์‹  ๋ชจ๋“œ Streamlit
์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ผ์ • ๊ด€๋ฆฌ, ํŒ€ ์กฐ์œจ
๋ฐœํ‘œ
Streamlit ์—ฐ๊ณ„
๋น„์ „ Streamlit
Streamlit ์—ฐ๊ณ„
Face++ ์•ˆ๋ฉด ์ธ์‹ ๋ฐ API ์—ฐ๋™
AI ์ฑ—๋ด‡(TTS, STT, ChatGPT API ํ™œ์šฉ, ๋Œ€ํ™” ๋กœ์ง ์„ค๊ณ„)
Face++ ์•ˆ๋ฉด ์ธ์‹ ๋ฐ API ์—ฐ๋™
LLM
AI ์ฑ—๋ด‡(TTS, STT, ChatGPT API ํ™œ์šฉ, ๋Œ€ํ™” ๋กœ์ง ์„ค๊ณ„)

๐Ÿ“š Tech Stack ๐Ÿ“š

FrontEnd :

BackEnd :

API :

๊ธฐํƒ€ :

๐Ÿ“š ๐Ÿ›  Tools ๐Ÿ›  ๐Ÿ“š




๐Ÿšง์ œ๋ชฉ(๋งํฌ)๋ฅผ ํด๋ฆญํ•˜์‹œ๋ฉด ํ”„๋กœ์ ํŠธ์˜ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” Wiki๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค!!

๊ฐœ๋ฐœ ๋ชฉํ‘œ ๋ฐ ๋‚ด์šฉ ๊ณ ๋ น์ธต์„ ํฌํ•จํ•œ ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต์„ ๋Œ€์ƒ์œผ๋กœ ํ‚ค์˜ค์Šคํฌ ์Œ์„ฑ ๋ณด์กฐ ์ฑ—๋ด‡ ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ, ๋ณต์žกํ•œ ์ฒญ์•ฝ ์ œ๋„์˜ ์ ‘๊ทผ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ณ  ํšจ์œจ์ ์ธ ์ฒญ์•ฝ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ง€์›ํ•˜๊ณ ์žํ•œ๋‹ค.
์ปดํ“จํ„ฐ ๋น„์ „ ๊ธฐ์ˆ ๋กœ ์‚ฌ์šฉ์ž์˜ ์—ฐ๋ น๋Œ€๋ฅผ ์ถ”์ •ํ•˜๊ณ , ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ ‘๊ทผ์„ฑ ํ–ฅ์ƒ ๊ธฐ๋Šฅ์„ ๋จผ์ € ์ œ์•ˆํ•˜๋Š” ์„ ์ œ์  ์ง€์› ๋ฐฉ์‹์„ ๋„์ž…ํ•˜์—ฌ ์ฐจ๋ณ„์ ์„ ๋‘์—ˆ์Šต๋‹ˆ๋‹ค.
์ฃผ์š” ํƒ€๊ฒŸ์ธต
  • ๊ณ ๋ น์ธต(65์„ธ ์ด์ƒ) ๋ฐ ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต
  • ์žฅ์• ์ธ ๋ฐ ์‹ ์ฒด์  ์ œ์•ฝ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž
  • ํŒจ์ŠคํŠธํ‘ธ๋“œ์ ยท์นดํŽ˜ ๋“ฑ ํ‚ค์˜ค์Šคํฌ ํ™œ์šฉ ์—…์žฅ & ๊ด€๋ฆฌ์ž
ํ•ต์‹ฌ ๊ธฐ๋Šฅ
  • ์›น์บ ์„ ํ†ตํ•œ ์ปดํ“จํ„ฐ ๋น„์ „์œผ๋กœ ์‚ฌ์šฉ์ž์˜ ์—ฐ๋ น๋Œ€ ์ถ”์ •
  • 65์„ธ ์ด์ƒ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ '์–ด๋ฅด์‹  ๋งž์ถค ๋ชจ๋“œ' ์ž๋™ ์ „ํ™˜
  • ์Œ์„ฑ ์•ˆ๋‚ด(TTS), ์ง๊ด€์  ์Œ์„ฑ ๋ช…๋ น(STT) ์ œ๊ณต
  • ์Œ์„ฑ ๊ธฐ๋ฐ˜ ์ฃผ๋ฌธ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ
  • ๋ฉ”๋‰ด ๊ฒ€์ƒ‰, ํ•„ํ„ฐ๋ง, ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๋‹ด๊ธฐ, ๊ฒฐ์ œ๊นŒ์ง€ ์Œ์„ฑ๋งŒ์œผ๋กœ ์ง„ํ–‰
  • ์•Œ๋ ˆ๋ฅด๊ธฐยท๋น„๊ฑด ํ•„ํ„ฐ๋ง, ์˜์–‘ ์ •๋ณด ํ™•์ธ ๊ธฐ๋Šฅ ์ œ๊ณต
  • ์ž์—ฐ์–ด ๋Œ€ํ™” ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ๋ฐ ์ฃผ๋ฌธ ํ™•์ธ ์ง€์›
  • ๋™์ผํ•œ menu.json ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์œผ๋กœ ํ™•์žฅ์„ฑ ํ™•๋ณด
๋ณด์กฐ ๊ธฐ๋Šฅ - ๋‹ต๋ณ€ ๋“ฃ๊ธฐ(TTS) ๋ฒ„ํŠผ : ๋ชจ๋“  ํ…์ŠคํŠธ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ด
- ๋ฉ”๋‰ด ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ : ์•Œ๋ ˆ๋ฅด๊ธฐ, ์ฑ„์‹, ์ €์—ผ ๋“ฑ ๊ฐœ์ธ ๋งž์ถคํ˜• ํ•„ํ„ฐ ์ œ๊ณต
- ์ฃผ๋ฌธ ๋‚ด์—ญ ํ™•์ธ ๊ธฐ๋Šฅ : ์Œ์„ฑ ๋˜๋Š” ์‹œ๊ฐ์ ์œผ๋กœ ์ฃผ๋ฌธ ๋‚ด์—ญ ๊ฒ€์ฆ
- menu.json ๊ธฐ๋ฐ˜ ํ™•์žฅ์„ฑ : ๋ฐ์ดํ„ฐ ๊ต์ฒด๋งŒ์œผ๋กœ ํ”„๋žœ์ฐจ์ด์ฆˆ๋ณ„ ์†์‰ฌ์šด ์ ์šฉ
- ๋‹ค๊ตญ์–ด ์ง€์›(ํ™•์žฅ ์˜ˆ์ •) : ์™ธ๊ตญ์ธ ๊ณ ๊ฐ์„ ์œ„ํ•œ ๋‹ค๊ตญ์–ด STT/TTS ์ง€์› ๊ฐ€๋Šฅ์„ฑ
- ์›น ๊ธฐ๋ฐ˜ MVP : ํƒœ๋ธ”๋ฆฟ(iPad ๋“ฑ)์—์„œ ๋ฐ”๋กœ ์‹œ์—ฐ ๊ฐ€๋Šฅ

๋ฌธ์ œ ์ธ์‹ ๋ฐ ์›์ธ
  1. 55์„ธ ์ด์ƒ ๊ณผ๋ฐ˜์ˆ˜ โ€œํ‚ค์˜ค์Šคํฌ ์ด์šฉ ๋ถˆํŽธโ€โ€ฆ โ€œ๊ธ€์”จ ์ž‘๊ณ  ์กฐ์ž‘ ์–ด๋ ค์›Œโ€ ์ถœ์ฒ˜ : ๋ฒ•์กฐ์‹ ๋ฌธ(https://news.koreanbar.or.kr)
    image

  2. ์†Œ๋น„์ž 46.6% ํ‚ค์˜ค์Šคํฌ ์ด์šฉ ์ค‘ ๋ถˆํŽธยทํ”ผํ•ด ๊ฒฝํ—˜์žˆ์–ด์š”
    image

  3. ๋ณด๊ธฐ๋งŒ ํ•ด๋„ ์–ด๋ ค์šด ํ‚ค์˜ค์Šคํฌ...
    image

ํ•ด๊ฒฐ๋ฐฉ์•ˆ 1. ์„ ์ œ์  ๋งž์ถคํ˜• ์ ‘๊ทผ์„ฑ ์ œ๊ณต
2. ์—ฐ๋ น๋Œ€ ์ถ”์ • ๊ธฐ๋ฐ˜์œผ๋กœ '์–ด๋ฅด์‹  ๋ชจ๋“œ'๋ฅผ ๋จผ์ € ์ œ์•ˆํ•˜์—ฌ ์‚ฌ์šฉ ์žฅ๋ฒฝ ์ตœ์†Œํ™”
4. ๋ฉ”๋‰ด ๊ฒ€์ƒ‰๋ถ€ํ„ฐ ๊ฒฐ์ œ๊นŒ์ง€ ์ž์—ฐ์–ด ์Œ์„ฑ ๋ช…๋ น์œผ๋กœ ์ฒ˜๋ฆฌ
5. ํ™•์žฅ์„ฑ๊ณผ ๋น„์šฉ ํšจ์œจ์„ฑ ํ™•๋ณด
6. ์›น ๊ธฐ๋ฐ˜ Streamlit ๊ตฌํ˜„์œผ๋กœ ํ•˜๋“œ์›จ์–ด ์ข…์†์„ฑ ์ œ๊ฑฐ
7. JSON ๊ต์ฒด๋งŒ์œผ๋กœ ๋‹ค์–‘ํ•œ ๋งค์žฅ์— ํ™•์žฅ ์ ์šฉ ๊ฐ€๋Šฅ
8. ์‚ฌ์šฉ์ž ์˜ค๋ฅ˜ ๋ฐ ์šด์˜ ๋ถ€๋‹ด ์ตœ์†Œํ™”
9. ์ฃผ๋ฌธ ์‹ค์ˆ˜ยท๋Œ€๊ธฐ์—ด ์ง€์—ฐ ํ•ด์†Œ
10. ๋งค์žฅ ์šด์˜ ํšจ์œจ ๋ฐ ๊ณ ๊ฐ ๋งŒ์กฑ๋„ ๋™์‹œ ํ–ฅ์ƒ
๊ธฐ๋Œ€ํšจ๊ณผ 1. ์‚ฌ์šฉ์ž ์ธก๋ฉด: ๋””์ง€ํ„ธ ์ ‘๊ทผ์„ฑ ํ–ฅ์ƒ
๊ณ ๋ น์ธต๊ณผ ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต์˜ ์‹ฌ๋ฆฌ์  ์žฅ๋ฒฝ ํ•ด์†Œ
์Œ์„ฑ ๊ธฐ๋ฐ˜ ๊ฒฝํ—˜์„ ํ†ตํ•œ ๋””์ง€ํ„ธ ์ž์‹ ๊ฐ ์ฆ๋Œ€
2. ๋น„์ฆˆ๋‹ˆ์Šค ์ธก๋ฉด: ์šด์˜ ํšจ์œจ ๋ฐ ๊ณ ๊ฐ ๋งŒ์กฑ๋„ ์ œ๊ณ 
์ฃผ๋ฌธ ์˜ค๋ฅ˜ยท๋Œ€๊ธฐ ์‹œ๊ฐ„ ๋‹จ์ถ•
์ง์›์˜ ์‘๋Œ€ ๋ถ€๋‹ด ๊ฐ์†Œ
์ „ ๊ณ ๊ฐ ๋งŒ์กฑ๋„ ํ–ฅ์ƒ
3. ๊ธฐ์ˆ  ์ธก๋ฉด: ๋†’์€ ํ™•์žฅ์„ฑ๊ณผ ์ ์šฉ์„ฑ
์›น ๊ธฐ๋ฐ˜ ๊ตฌํ˜„์œผ๋กœ ์ „์šฉ ์žฅ๋น„ ๋ถˆํ•„์š”
๋‹ค์–‘ํ•œ ๋งค์žฅ์— ์ €๋น„์šฉยท์‹ ์† ํ™•์žฅ ๊ฐ€๋Šฅ
4. ์‚ฌํšŒ์  ์ธก๋ฉด: ๋””์ง€ํ„ธ ํฌ์šฉ ์‚ฌํšŒ ๊ธฐ์—ฌ
์ทจ์•ฝ๊ณ„์ธต์˜ ์ •๋ณด ๊ฒฉ์ฐจ ํ•ด์†Œ
AI๊ฐ€ ๋ฐฐ์ œ๊ฐ€ ์•„๋‹Œ ํฌ์šฉ์„ ์œ„ํ•œ ๊ธฐ์ˆ ์ด๋ผ๋Š” ์‚ฌํšŒ์  ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ

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

integrated_kiosk_project/
โ”œโ”€โ”€ 01_face_recognition_app.py    # ์–ผ๊ตด ์ธ์‹ ์•ฑ (ํฌํŠธ 8501)
โ”œโ”€โ”€ 02_normal_kiosk_app.py        # ์ผ๋ฐ˜ ํ‚ค์˜ค์Šคํฌ ์•ฑ (ํฌํŠธ 8502)
โ”œโ”€โ”€ 03_voice_kiosk_app.py         # ์Œ์„ฑ ์ฃผ๋ฌธ ํ‚ค์˜ค์Šคํฌ ์•ฑ (ํฌํŠธ 8503)
โ”œโ”€โ”€ menu_data.py                  # ๋ฉ”๋‰ด ๋ฐ์ดํ„ฐ
โ”œโ”€โ”€ requirements.txt              # ํ•„์š”ํ•œ ํŒจํ‚ค์ง€ ๋ชฉ๋ก
โ”œโ”€โ”€ public/                       # ๋ฉ”๋‰ด ์ด๋ฏธ์ง€ ํŒŒ์ผ๋“ค
โ””โ”€โ”€ README.md                     # ์ด ํŒŒ์ผ

๐Ÿš€ ์‹คํ–‰ ๋ฐฉ๋ฒ•

1. ํ™˜๊ฒฝ ์„ค์ •

๋จผ์ € ํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋“ค์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค:

pip install -r requirements.txt

2. ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •

.env ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ๋‹ค์Œ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค:

# Face++ API (์–ผ๊ตด ์ธ์‹์šฉ)
FACE_API_KEY=your_face_api_key_here
FACE_API_SECRET=your_face_api_secret_here

# OpenAI API (์Œ์„ฑ ์ฃผ๋ฌธ์šฉ)
OPENAI_API_KEY=your_openai_api_key_here

3. ์•ฑ ์‹คํ–‰ (๊ถŒ์žฅ ๋ฐฉ๋ฒ•)

Windows์—์„œ ํ•œ ๋ฒˆ์— ๋ชจ๋“  ์•ฑ ์‹คํ–‰:

run_all.bat

macOS/Linux์—์„œ ํ•œ ๋ฒˆ์— ๋ชจ๋“  ์•ฑ ์‹คํ–‰:

chmod +x run_all.sh
source venv/bin/activate && ./run_all.sh

์ด ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด:

  • ์–ผ๊ตด ์ธ์‹ ์•ฑ (ํฌํŠธ 8501): ํฌ์–ด๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰๋˜๋ฉฐ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž๋™์œผ๋กœ ์—ด๋ฆผ
  • ์ผ๋ฐ˜ ํ‚ค์˜ค์Šคํฌ (ํฌํŠธ 8502): ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰ (๋ธŒ๋ผ์šฐ์ € ์ž๋™ ์—ด๋ฆผ ์—†์Œ)
  • ์Œ์„ฑ ์ฃผ๋ฌธ ํ‚ค์˜ค์Šคํฌ (ํฌํŠธ 8503): ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰ (๋ธŒ๋ผ์šฐ์ € ์ž๋™ ์—ด๋ฆผ ์—†์Œ)

4. ์ˆ˜๋™ ์‹คํ–‰ (๊ฐœ๋ณ„ ์•ฑ ํ…Œ์ŠคํŠธ์šฉ)

๊ฐœ๋ณ„ ์•ฑ์„ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๊ฐ๊ฐ ํ„ฐ๋ฏธ๋„์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

์–ผ๊ตด ์ธ์‹ ์•ฑ:

streamlit run 01_face_recognition_app.py --server.port 8501

์ผ๋ฐ˜ ํ‚ค์˜ค์Šคํฌ:

streamlit run 02_normal_kiosk_app.py --server.port 8502

์Œ์„ฑ ์ฃผ๋ฌธ ํ‚ค์˜ค์Šคํฌ:

streamlit run 03_voice_kiosk_app.py --server.port 8503

๐Ÿ”„ ์›Œํฌํ”Œ๋กœ์šฐ

  1. ์‹œ์ž‘: run_all.bat ์‹คํ–‰์œผ๋กœ ๋ชจ๋“  ์•ฑ์ด ์ž๋™์œผ๋กœ ์‹œ์ž‘๋จ
  2. ์–ผ๊ตด ์ธ์‹ (ํฌํŠธ 8501): ์‚ฌ์šฉ์ž์˜ ์–ผ๊ตด์„ ์ธ์‹ํ•˜์—ฌ ๋‚˜์ด๋ฅผ ์ถ”์ •
  3. ์ž๋™ ๋ผ์šฐํŒ…:
    • 65์„ธ ๋ฏธ๋งŒ โ†’ ์ผ๋ฐ˜ ํ‚ค์˜ค์Šคํฌ (ํฌํŠธ 8502)๋กœ ์ž๋™ ์ด๋™
    • 65์„ธ ์ด์ƒ โ†’ ์Œ์„ฑ ์ฃผ๋ฌธ ํ‚ค์˜ค์Šคํฌ (ํฌํŠธ 8503)๋กœ ์ž๋™ ์ด๋™
  4. ์ฃผ๋ฌธ ๋ฐ ๊ฒฐ์ œ: ๊ฐ ํ‚ค์˜ค์Šคํฌ์—์„œ ๋ฉ”๋‰ด ์„ ํƒ ๋ฐ ๊ฒฐ์ œ ์ง„ํ–‰
  5. ์ž๋™ ๋ณต๊ท€: ๊ฒฐ์ œ ์™„๋ฃŒ ํ›„ 5์ดˆ ๋’ค ์ž๋™์œผ๋กœ ์–ผ๊ตด ์ธ์‹ ํŽ˜์ด์ง€๋กœ ๋Œ์•„๊ฐ

๐Ÿ› ๏ธ ์ฃผ์š” ๊ธฐ๋Šฅ

์–ผ๊ตด ์ธ์‹ ์•ฑ (01_face_recognition_app.py)

  • ์‹ค์‹œ๊ฐ„ ์นด๋ฉ”๋ผ๋ฅผ ํ†ตํ•œ ์–ผ๊ตด ์ธ์‹
  • Face++ API๋ฅผ ์‚ฌ์šฉํ•œ ๋‚˜์ด ์ถ”์ •
  • ์ž๋™ ๋ผ์šฐํŒ… ๊ธฐ๋Šฅ

์ผ๋ฐ˜ ํ‚ค์˜ค์Šคํฌ (02_normal_kiosk_app.py)

  • ํ„ฐ์น˜ ๊ธฐ๋ฐ˜ ๋ฉ”๋‰ด ์„ ํƒ
  • ์•Œ๋ ˆ๋ฅด๊ธฐ ๋ฐ ์‹๋‹จ ํ•„ํ„ฐ๋ง
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ด€๋ฆฌ
  • ๊ฒฐ์ œ ์ฒ˜๋ฆฌ

์Œ์„ฑ ์ฃผ๋ฌธ ํ‚ค์˜ค์Šคํฌ (03_voice_kiosk_app.py)

  • ์Œ์„ฑ ์ธ์‹ (STT) ๋ฐ ์Œ์„ฑ ํ•ฉ์„ฑ (TTS)
  • AI ์ฑ—๋ด‡์„ ํ†ตํ•œ ์ž์—ฐ์–ด ์ฃผ๋ฌธ
  • LangChain ๊ธฐ๋ฐ˜ ๋Œ€ํ™” ์ฒ˜๋ฆฌ
  • ์‹œ๊ฐ์  ๋ฉ”๋‰ด์™€ ์Œ์„ฑ ์ฃผ๋ฌธ ๋ณ‘ํ–‰

๐Ÿ“‹ ๋ฉ”๋‰ด ์ •๋ณด

  • ๋ฉ”์ธ: ๋ฒ„๊ฑฐ, ๋žฉ, ๋ณด์šธ, ์ƒ๋Ÿฌ๋””
  • ์‚ฌ์ด๋“œ: ๊ฐ์žํŠ€๊น€, ์น˜์ฆˆ์Šคํ‹ฑ
  • ์Œ๋ฃŒ: ์ฝœ๋ผ, ์‚ฌ์ด๋‹ค
  • ๋””์ €ํŠธ: ์•„์ด์Šคํฌ๋ฆผ, ํŒฅ๋น™์ˆ˜

๊ฐ ๋ฉ”๋‰ด์—๋Š” ์•Œ๋ ˆ๋ฅด๊ธฐ ์ •๋ณด, ์‹๋‹จ ์ •๋ณด, ๊ฐ€๊ฒฉ, ์กฐ๋ฆฌ์‹œ๊ฐ„ ๋“ฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”ง ๋ฌธ์ œ ํ•ด๊ฒฐ

run_all.bat ์‹คํ–‰ ๋ฌธ์ œ

  • Windows ํ™˜๊ฒฝ์—์„œ๋งŒ ์‹คํ–‰ ๊ฐ€๋Šฅ
  • PowerShell์ด๋‚˜ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์—์„œ ์‹คํ–‰
  • ๊ถŒํ•œ ๋ฌธ์ œ ์‹œ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰

์Œ์„ฑ ์ธ์‹ ๋ฌธ์ œ

  • ๋งˆ์ดํฌ ๊ถŒํ•œ ํ™•์ธ
  • PyAudio ์„ค์น˜ ๋ฌธ์ œ ์‹œ: pip install pipwin ํ›„ pipwin install pyaudio

์–ผ๊ตด ์ธ์‹ ๋ฌธ์ œ

  • ์นด๋ฉ”๋ผ ๊ถŒํ•œ ํ™•์ธ
  • Face++ API ํ‚ค ์„ค์ • ํ™•์ธ

ํฌํŠธ ์ถฉ๋Œ

  • ๋‹ค๋ฅธ ํฌํŠธ ์‚ฌ์šฉ: --server.port 8504 ๋“ฑ์œผ๋กœ ๋ณ€๊ฒฝ
  • ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์•ฑ ์ ‘์†: ๋ธŒ๋ผ์šฐ์ €์—์„œ http://localhost:8502 ๋˜๋Š” http://localhost:8503 ์ง์ ‘ ์ ‘์†

ํ•„์ˆ˜ ๋ฌธ์„œ

ํ”„๋กœ์ ํŠธ ๊ธฐํš์„œ

ํ”„๋กœ์ ํŠธ ๊ธฐํš์„œ

๋‹ค์ด์–ด๊ทธ๋žจ

๋‹ค์ด์–ด๊ทธ๋žจ

์†Œ๊ฐ

๊น€๊ทผํ˜ธ

์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋Š” '๋””์ง€ํ„ธ ์†Œ์™ธ ๊ณ„์ธต์„ ๋•๋Š”๋‹ค'๋Š” ์˜๋ฏธ ์žˆ๋Š” ๋ชฉํ‘œ ๋•๋ถ„์— ๊ฐœ๋ฐœ ๊ณผ์ • ๋‚ด๋‚ด ๋ณด๋žŒ์„ ๋А๋‚„ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์ ์œผ๋กœ๋Š” GitHub๋ฅผ ์ด์šฉํ•œ ํ˜‘์—…, ํ„ฐ๋ฏธ๋„, API ํ‚ค ๊ด€๋ฆฌ, Streamlit์„ ํ™œ์šฉํ•˜์—ฌ ๋ฐฐ์› ๋˜ ๊ฐœ๋ฐœ ๊ธฐ์ˆ ๋“ค์„ ์ง์ ‘ ๊ฒฝํ—˜ํ•˜๋Š” ๊ฐ’์ง„ ์‹œ๊ฐ„์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์  ์„ฑ์žฅ, ๋‹ค์–‘ํ•œ ๊ฒฝํ—˜๊ณผ ๊ฐœ๋ฐœ์˜ ๋™๊ธฐ๋ฅผ ํ•จ๊ป˜ ์–ป์€ ์ข‹์€ ๊ฒฝํ—˜์ด์—ˆ์Šต๋‹ˆ๋‹ค.


๊น€๋™์€

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋ฅผ ์„ธ๋ถ€์ ์œผ๋กœ ์งœ์ง€ ๋ชปํ•ด ํšจ์œจ์ ์ธ ์—…๋ฌด ๋ถ„๋‹ด์„ ํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™์•„ ์•„์‰ฌ์› ๊ณ , ์„ธ๋ถ€์ ์ธ ๊ตฌ์กฐ๋ฅผ ์งœ๊ธฐ ์œ„ํ•ด์„  ํญ๋„“๊ณ  ๊นŠ์€ ์ง€์‹์ด ํ•„์š”ํ•œ ๊ฒƒ ๊ฐ™์•„ ๊ฐœ์ธ์ ์ธ ๋ถ€์กฑํ•จ์„ ๋งŽ์ด ๋А๋‚Œ.


๊น€๋‘ํ˜„

์ด๋ก ์œผ๋กœ ๋ฐฐ์šฐ๋˜ ๋‚ด์šฉ์„ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์‹œ๋„์— ์˜๋ฏธ๋ฅผ ๋‘ . ์ฒด๊ณ„์ ์ธ ์„ค๊ณ„ ํ•„์š”์„ฑ์„ ์ฒด๊ฐํ•จ.


๊น€๋ฏผ์ง€

์•„๋ฌด๋ฆฌ AI๊ฐ€ ์ฝ”๋“œ๋ฅผ ๋Œ€์‹  ์ž‘์„ฑํ•ด ์ค€๋‹ค ํ•ด๋„ ๊ฒฐ๊ตญ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ทธ ์ฝ”๋“œ์™€ ๊ตฌ์กฐ๋ฅผ ์ถฉ๋ถ„ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋ฉด ํ•œ ๋‹จ๊ณ„์”ฉ ๋‚˜์•„๊ฐˆ ๋•Œ๋งˆ๋‹ค ๋ฒฝ์— ๋ถ€๋”ชํžˆ๊ฒŒ ๋œ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜๋‹ค. ๋ง‰ํŒ์— ์‹œ๊ฐ„์ด ๋ถ€์กฑํ•ด ์ œ๋Œ€๋กœ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ ์•Œ๋ ˆ๋ฅด๊ธฐ ํ•„ํ„ฐ ๊ธฐ๋Šฅ๊ณผ ์™ธ๊ตญ์ธ ๋ฒ„์ „๊นŒ์ง€ ๊ตฌํ˜„ํ•œ๋‹ค๋ฉด ์™„์„ฑ๋„๋ฅผ ๋” ๋†’์ผ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.


์ „์ง€์„ฑ

ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ๊ธฐ์ดˆ ๊ฐœ๋…์„ ํŠผํŠผํžˆ ํ•ด์•ผ ์‘์šฉ์ด ์ˆ˜์›”ํ•˜๋‹ค๋Š” ๊ฑธ ๊นจ๋‹ฌ์•˜๊ณ , ์ด๋ฒˆ ๊ฒฝํ—˜์„ ํ†ตํ•ด ์†Œํ†ต์˜ ์ค‘์š”์„ฑ๋„ ์‹ค๊ฐํ–ˆ๋‹ค. ์•ž์œผ๋กœ๋Š” ๊ฒฐ๊ณผ์— ๊ธ‰๊ธ‰ํ•˜๊ธฐ๋ณด๋‹ค ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๋จผ์ € ๋‹ค์ง€๊ณ , ๋งค์ผ ํ•ต์‹ฌ ๊ฐœ๋…์„ ๋ณต์Šตํ•˜๋Š” ์Šต๊ด€์„ ์‹ค์ฒœํ•˜๊ฒ ๋‹ค. ๋”๋ถˆ์–ด ํ”„๋กœ์ ํŠธ์— ์ ๊ทน์ ์œผ๋กœ ์ฐธ์—ฌํ•˜๋ฉฐ ์†Œํ†ต์—๋„ ํž˜์จ์•ผ๊ฒ ๋‹ค.


์˜คํ˜„์˜

ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ LLM๊ณผ LangChain์„ ์ง์ ‘ ํ™œ์šฉํ•ด๋ณผ ์ˆ˜ ์žˆ์–ด ์˜๋ฏธ ์žˆ๋Š” ๊ฒฝํ—˜์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ์งง์€ ๊ธฐ๊ฐ„์œผ๋กœ ์ธํ•ด ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ๋ฅผ ์™„์ „ํžˆ ์—ฐ๋™ํ•˜์ง€ ๋ชปํ•œ ์ ์€ ์•„์‰ฌ์›€์œผ๋กœ ๋‚จ์Šต๋‹ˆ๋‹ค.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •