Skip to content

Latest commit

ย 

History

History
87 lines (67 loc) ยท 2.9 KB

File metadata and controls

87 lines (67 loc) ยท 2.9 KB

๐Ÿš— OkaGaka (์˜ค์นด๊ฐ€์นด) - ๊ฐ€์กฑ ๊ฐ„ ์ฐจ๋Ÿ‰ ๊ณต์œ  AI ํ”Œ๋žซํผ

AI ๊ธฐ๋ฐ˜ ๊ฐ€์กฑ ๊ตฌ์„ฑ์› ์Šค์ผ€์ค„๋ง ๋ฐ ์‹ค์‹œ๊ฐ„ ์นดํ’€ ๋งค์นญ ์„œ๋น„์Šค

OkaGaka๋Š” ๊ฐ€์กฑ ๊ตฌ์„ฑ์›๋“ค์˜ ์ด๋™ ์ˆ˜์š”๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ตœ์ ์˜ ์นดํ’€ ๊ฒฝ๋กœ๋ฅผ ์ œ์•ˆํ•˜๊ณ , ์‹ค์‹œ๊ฐ„ ์ฐจ๋Ÿ‰ ์œ„์น˜๋ฅผ ๊ณต์œ ํ•˜์—ฌ ๊ฐ€์กฑ ๊ฐ„์˜ ์•ˆ์ „ํ•˜๊ณ  ํšจ์œจ์ ์ธ ์ด๋™์„ ๋•๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

๐ŸŒŸ Key Features

  • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๊ฐ€์กฑ ๊ทธ๋ฃน ๊ด€๋ฆฌ: ๊ฐ€์กฑ ๊ตฌ์„ฑ์›์„ ๊ทธ๋ฃน์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿค– AI ์ด๋™ ๋น„์„œ: OpenAI(GPT-4o)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ฐ€์กฑ์˜ ์Šค์ผ€์ค„๊ณผ ์ƒํ™ฉ์— ๋งž๋Š” ์ด๋™ ์˜์‚ฌ๊ฒฐ์ •์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ“ ์‹ค์‹œ๊ฐ„ ์œ„์น˜ ์ถ”์ : WebSocket(STOMP)์„ ์ด์šฉํ•˜์—ฌ ์ด๋™ ์ค‘์ธ ์ฐจ๋Ÿ‰์˜ ์‹ค์‹œ๊ฐ„ ์œ„์น˜๋ฅผ ์ง€๋„์ƒ์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿš• ์Šค๋งˆํŠธ ์นดํ’€ ๋งค์นญ: Tmap API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ฒฝ์œ ์ง€๋ฅผ ํฌํ•จํ•œ ์ตœ์ ์˜ ์ด๋™ ์‹œ๊ฐ„๊ณผ ๊ฒฝ๋กœ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์นดํ’€์„ ๋งค์นญํ•ฉ๋‹ˆ๋‹ค.
  • ๐ŸŽ™๏ธ ์Œ์„ฑ ์ธ์‹(STT): Google Cloud Speech-to-Text๋ฅผ ํ†ตํ•ด ์Œ์„ฑ ๋ช…๋ น์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๐ŸŒค๏ธ ๋‚ ์”จ ์ •๋ณด ์—ฐ๋™: ์ด๋™ ๊ฒฝ๋กœ ๋ฐ ๋ชฉ์ ์ง€์˜ ์‹ค์‹œ๊ฐ„ ๊ธฐ์ƒ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ› ๏ธ Tech Stack

Backend

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

Infrastructure

  • Cloud: AWS EC2, S3, RDS
  • CI/CD: AWS CodeDeploy, GitHub Actions

External APIs

  • Map/Mobility: Tmap API (Geocoding, Route Optimization, Transit)
  • AI/ML: OpenAI API (GPT-4o), Google Cloud STT, Custom Embedding API
  • Weather: OpenWeatherMap API

๐Ÿ›๏ธ System Architecture

Architecture

๐Ÿš€ Getting Started

Prerequisites

  • Java 17+
  • PostgreSQL
  • Redis

Environment Variables (.env)

ํ”„๋กœ์ ํŠธ ์‹คํ–‰์„ ์œ„ํ•ด ๋‹ค์Œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

# 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

Installation & Run

# 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