AI ๊ธฐ๋ฐ ๊ฐ์กฑ ๊ตฌ์ฑ์ ์ค์ผ์ค๋ง ๋ฐ ์ค์๊ฐ ์นดํ ๋งค์นญ ์๋น์ค
OkaGaka๋ ๊ฐ์กฑ ๊ตฌ์ฑ์๋ค์ ์ด๋ ์์๋ฅผ ๋ถ์ํ์ฌ ์ต์ ์ ์นดํ ๊ฒฝ๋ก๋ฅผ ์ ์ํ๊ณ , ์ค์๊ฐ ์ฐจ๋ ์์น๋ฅผ ๊ณต์ ํ์ฌ ๊ฐ์กฑ ๊ฐ์ ์์ ํ๊ณ ํจ์จ์ ์ธ ์ด๋์ ๋๋ ํ๋ซํผ์ ๋๋ค.
- ๐จโ๐ฉโ๐งโ๐ฆ ๊ฐ์กฑ ๊ทธ๋ฃน ๊ด๋ฆฌ: ๊ฐ์กฑ ๊ตฌ์ฑ์์ ๊ทธ๋ฃน์ผ๋ก ๊ด๋ฆฌํ๊ณ ๊ถํ์ ๋ถ์ฌํฉ๋๋ค.
- ๐ค AI ์ด๋ ๋น์: OpenAI(GPT-4o)๋ฅผ ํ์ฉํ์ฌ ๊ฐ์กฑ์ ์ค์ผ์ค๊ณผ ์ํฉ์ ๋ง๋ ์ด๋ ์์ฌ๊ฒฐ์ ์ ์ง์ํฉ๋๋ค.
- ๐ ์ค์๊ฐ ์์น ์ถ์ : WebSocket(STOMP)์ ์ด์ฉํ์ฌ ์ด๋ ์ค์ธ ์ฐจ๋์ ์ค์๊ฐ ์์น๋ฅผ ์ง๋์์ ํ์ํฉ๋๋ค.
- ๐ ์ค๋งํธ ์นดํ ๋งค์นญ: Tmap API๋ฅผ ํ์ฉํ์ฌ ๊ฒฝ์ ์ง๋ฅผ ํฌํจํ ์ต์ ์ ์ด๋ ์๊ฐ๊ณผ ๊ฒฝ๋ก๋ฅผ ๊ณ์ฐํ๊ณ ์นดํ์ ๋งค์นญํฉ๋๋ค.
- ๐๏ธ ์์ฑ ์ธ์(STT): Google Cloud Speech-to-Text๋ฅผ ํตํด ์์ฑ ๋ช ๋ น์ผ๋ก ์๋น์ค๋ฅผ ์ ์ดํ ์ ์์ต๋๋ค.
- ๐ค๏ธ ๋ ์จ ์ ๋ณด ์ฐ๋: ์ด๋ ๊ฒฝ๋ก ๋ฐ ๋ชฉ์ ์ง์ ์ค์๊ฐ ๊ธฐ์ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค.
| Category | Technology |
|---|---|
| Language | Java 17 |
| Framework | Spring Boot 3.3.1 |
| Database | PostgreSQL, Redis (Caching/Session) |
| ORM | JPA (Hibernate) |
| Security | Spring Security, JWT |
| Build Tool | Gradle |
- Cloud: AWS EC2, S3, RDS
- CI/CD: AWS CodeDeploy, GitHub Actions
- Map/Mobility: Tmap API (Geocoding, Route Optimization, Transit)
- AI/ML: OpenAI API (GPT-4o), Google Cloud STT, Custom Embedding API
- Weather: OpenWeatherMap API
- Java 17+
- PostgreSQL
- Redis
ํ๋ก์ ํธ ์คํ์ ์ํด ๋ค์ ํ๊ฒฝ ๋ณ์ ์ค์ ์ด ํ์ํฉ๋๋ค.
# Database
RDS_HOST=localhost
RDS_PORT=5432
RDS_NAME=okagaka_db
RDS_USER=postgres
RDS_PASSWORD=your_password
# AWS
AWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key
S3_BUCKET=your_bucket_name
# External APIs
TMAP_KEY=your_tmap_api_key
OPENAI_API_KEY=your_openai_key
GOOGLE_APPLICATION_CREDENTIALS=path/to/google_credential.json
OPENWEATHERMAP_API_KEY=your_weather_key
# Security
JWT_SECRET=your_jwt_secret_key
JWT_EXPIRATION=3600000
# Client
FRONTEND_ORIGIN=http://localhost:3000# 1. Clone the repository
git clone [https://github.com/your-username/okagaka-backend.git](https://github.com/your-username/okagaka-backend.git)
# 2. Build the project
./gradlew clean build
# 3. Run the application
java -jar build/libs/okagaka-0.0.1-SNAPSHOT.jar