๋ฐ๋ฌ์ฅ์ ์ฌํ์ ์ํฉ ์๋ฎฌ๋ ์ด์ ์๋น์ค
scenario_preview3 scenario_preview3
๋ง์ฃผ๊ต์ค์ ๋ฐ๋ฌ์ฅ์ ๋ฅผ ๊ฐ์ง ํ์๋ค์ด ์ผ์์์ ์ผ์ด๋๋ ๋ค์ํ ์ํฉ์ ์์ ํ๊ฒ ์ฐ์ตํ ์ ์๋ ์๋ฎฌ๋ ์ด์ ๊ธฐ๋ฐ ๊ต์ก ํ๋ซํผ์ ๋๋ค.
ํ์๋ค์ ์ํ ๊ต๋ณด์ฌ ์ ์ ๊ฐํธํ๋ฅผ ํตํด ์ ์๋๋ค์ ๊ต๋ณด์ฌ ์ ์ ํผ๋ก๋๋ฅผ ๋ฎ์ถ๊ณ ,
ํ์๋ค์ด ์ฝ๊ณ ์ฌ๋ฐ๊ฒ ์ฌ๋ฌ ์ํฉ์ ํ์ตํ๊ฒ ํฉ๋๋ค.
- ๊ต์ก์๋ง๋ค ์๋๋ฆฌ์ค ์ ์์ ํฌ์ ํ๋ ์๊ฐ๊ณผ ์ญ๋์ด ์์ด
- ๊ฒฐ๊ณผ์ ์ผ๋ก ํ์ต์๊ฐ ๋ฐ๋ ๊ต์ก ํ์ง์ด ์ผ๊ด๋์ง ์์
- ์๋๋ฆฌ์ค ์ ์์ ๋ง์ ์๊ฐ์ด ์์๋์ด ๊ต์ฌ์ ํผ๋ก๋ ์ฆ๊ฐ
- ๋๋ฉด ํ๋ จ ์ค์ฌ์ผ๋ก, ํ์ต์๊ฐ ์ํ ๋ ๋ฐ๋ณต ์ฐ์ตํ๊ธฐ ์ด๋ ค์
- ๋์ผํ ์๋๋ฆฌ์ค๋ฅผ ๋ค์ํ ๋์ด๋๋ก ๊ฒฝํํ ๊ธฐํ ๋ถ์กฑ
- ํ์ต ์ง๋์ ์ฑ์ทจ๋๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ์ถ์ ํ๊ธฐ ์ด๋ ค์
- ๊ต์ก์๊ฐ AI์ ํ์ ํ์ฌ ์๋๋ฆฌ์ค๋ฅผ ์์ฑํ ์ ์๋ ์ผ๊ด๋ ํ ํ๋ฆฟ ์ ๊ณต
- RAG ๊ธฐ์ ๋ก ๋งฅ๋ฝ์ ๋ง๋ ์๋๋ฆฌ์ค ์๋ ์์ฑ
- ์ ์ ์๊ฐ ๋จ์ถ ๋ฐ ํ์ง ํ์คํ
- EASY(์ด๋ฏธ์ง ์ ํ) โ NORMAL(ํ ์คํธ ์ ํ) โ HARD(์์ฑ ๋ต๋ณ) ๋จ๊ณ๋ณ ํ์ต
- ํ์ต์๊ฐ ์ธ์ ๋ ์ง ๋ฐ๋ณต ํ์ต ๊ฐ๋ฅํ ํ๊ฒฝ ๊ตฌ์ถ
- ํ์ต์๊ฐ ์ธ์ ๋ ์ง ๋ฐ๋ณต ํ์ต ๊ฐ๋ฅํ ํ๊ฒฝ ๊ตฌ์ถ
- ์์ฑ ์ธ์(STT) ๋ฐ ์๋ฏธ ์ ์ฌ๋ ๋ถ์(STS)์ ํตํ ์ค์๊ฐ ํผ๋๋ฐฑ
- ํ์ ๊ด๋ฆฌ: CRUD, CSV ์ผ๊ด ๋ฑ๋ก
- ์๋๋ฆฌ์ค ์์ฑ:
- ์๋ ์์ฑ (์ง๋ฌธ/๋ต๋ณ/ํฝํ ๊ทธ๋จ)
- AI ์๋ ์์ฑ (RAG ๊ธฐ๋ฐ, ๋ฐฑ๊ทธ๋ผ์ด๋ ์ฒ๋ฆฌ)
- ํ์ต ๋ถ์: ํต๊ณ ๋์๋ณด๋, ์๋ณ ์บ๋ฆฐ๋
- ๋์ด๋๋ณ ์๋ฎฌ๋ ์ด์
:
- EASY: ์ด๋ฏธ์ง ์ ํ
- NORMAL: ํ ์คํธ ์ ํ
- HARD: ์์ฑ ๋ต๋ณ (STS ๋ถ์)
- ์ค์๊ฐ ํผ๋๋ฐฑ: ์ ๋ต/์ค๋ต ์ฆ์ ํ์ธ
- ์์ฑ ์ง์: TTS ์ง๋ฌธ ์ฝ๊ธฐ, STS ๋ต๋ณ ๋ถ์
- Language: TypeScript
- Framework: React, Vite
- UI/์คํ์ผ๋ง: TailwindCSS, React Icons, Lottie React React-chartjs-2
- ์ํ๊ด๋ฆฌ: Zustand, React Query(TanStack Query)
- ๋ผ์ฐํ : React Router Dom
- ๊ฐ๋ฐ ๋๊ตฌ: ESLint
- ์ ํธ๋ฆฌํฐ: Axios
- Language: Java 21
- Framework: Spring Boot 3.5.6
- Database: MySQL, Redis
- ORM: Spring Data JPA
- ์ธ์ฆ/๋ณด์: Spring Security, JWT
- ๊ฐ๋ฐ๋๊ตฌ: Lombok, SpringDoc OpenAPI, Logback, Gradle
- Language: Python 3.11
- Framework: FastAPI 0.115.5, Uvicorn 0.32.1
- Database: MySQL, ChromaDB
- ORM: SQLAlchemy
- ์ธ์ฆ/๋ณด์: python-jose
- AI ๋ผ์ด๋ธ๋ฌ๋ฆฌ: PyTorch, sentence-transformers, LangChain, OpenAI, NumPy
- ์ปจํ ์ด๋: Docker Compose
- Cloud: AWS S3, AWS ApiGatewway, AWS Lambda, AWS Athena
- CI/CD: GitLab runner