Skip to content

๐Ÿณ Promocean โ€“ ์ƒ์„ฑํ˜• AI ๊ธฐ๋ฐ˜์˜ ํ”„๋กฌํ”„ํŠธ ๊ณต์œ ยท๊ด€๋ฆฌ ํ”Œ๋žซํผ

Notifications You must be signed in to change notification settings

ssafy-last/promocean

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

252 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿณ Promocean โ€“ ์ƒ์„ฑํ˜• AI ๊ธฐ๋ฐ˜์˜ ํ”„๋กฌํ”„ํŠธ ๊ณต์œ ยท๊ด€๋ฆฌ ํ”Œ๋žซํผ

Promocean์€ ์ƒ์„ฑํ˜• AI ์‹œ๋Œ€์— ๋งž์ถ˜ ํ”„๋กฌํ”„ํŠธ ๊ณต์œ ยท๊ด€๋ฆฌยทํ˜‘์—… ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ํ”„๋กฌํ”„ํŠธ๋ฅผ ๊ณต์œ ํ•˜๊ณ , ๊ด€๋ฆฌํ•˜๊ณ , ํŒ€ ๋‹จ์œ„๋กœ ํ˜‘์—…ํ•˜๋ฉฐ, ํ”„๋กฌํ”„ํŠธ ๋Œ€ํšŒ๋ฅผ ํ†ตํ•ด ๋” ๋†’์€ ํ’ˆ์งˆ์˜ ์ฐฝ์ž‘๋ฌผ์„ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ KafkaยทRedisยทElasticSearch ๊ธฐ๋ฐ˜์˜ ์‹ค์‹œ๊ฐ„ ์ธ๊ธฐ๊ธ€, SSE ๊ธฐ๋ฐ˜์˜ ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ, LLM ๊ธฐ๋ฐ˜์˜ ํ…์ŠคํŠธ/์ด๋ฏธ์ง€ ์ƒ์„ฑ ๊ธฐ๋Šฅ๊นŒ์ง€ ์ œ๊ณตํ•˜๋Š” ํ’€์Šคํƒ ์ƒ์„ฑํ˜• AI ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ ๊ธฐํš ๋ฐฐ๊ฒฝ

์ƒ์„ฑํ˜• AI ์‹œ๋Œ€๊ฐ€ ์—ด๋ฆฌ๋ฉด์„œ, ํ”„๋กฌํ”„ํŠธ๋Š” ์ฐฝ์ž‘๋ฌผ์˜ ํ’ˆ์งˆ์„ ๊ฒฐ์ •ํ•˜๋Š” ํ•ต์‹ฌ ์ž์‚ฐ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋“ค์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค:

  • ๊ฐœ์ธ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๋ณด๊ด€ํ•˜๊ธฐ ์–ด๋ ต๊ณ 
  • ํŒ€์›๋“ค๊ณผ ๊ณต์œ ํ•ด๋„ ๊ธฐ๋ก์ด ๋ถ„์‚ฐ๋˜๋ฉฐ
  • ์ธํ„ฐ๋„ท ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ๊ณ ํ’ˆ์งˆ ํ”„๋กฌํ”„ํŠธ๋ฅผ ๊ตฌ์กฐ์ ์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์–ด๋ ต๊ณ 
  • ํ”„๋กœ์ ํŠธ ๋‹จ์œ„๋กœ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ํž˜๋“ค๋ฉฐ
  • ํ˜‘์—… ๊ฐ€๋Šฅํ•œ ํ”„๋กฌํ”„ํŠธ ํ”Œ๋žซํผ์€ ์กด์žฌํ•˜์ง€ ์•Š์Œ

์ด์— ๋”ฐ๋ผ Promocean์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค:

โœ… ํ”„๋กฌํ”„ํŠธ๋ฅผ OS์ฒ˜๋Ÿผ ์ €์žฅํ•˜๊ณ 

โœ… ํ•จ๊ป˜ ํ˜‘์—…ํ•˜๋ฉฐ

โœ… ๋” ๋งŽ์€ ์‚ฌ๋žŒ๊ณผ ๊ณต์œ ํ•˜๊ณ 

โœ… ๊ณ ํ’ˆ์งˆ ํ”„๋กฌํ”„ํŠธ ์ƒํƒœ๊ณ„๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š”

์ƒˆ๋กœ์šด ํ˜•ํƒœ์˜ ์ƒ์„ฑํ˜• AI ๊ธฐ๋ฐ˜ ํ”„๋กฌํ”„ํŠธ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๊ธฐ๋Šฅ

์ฃผ์š” ๊ธฐ๋Šฅ ์ƒ์„ธ ์„ค๋ช…
ํ”„๋กฌํ”„ํŠธ ๊ณต์œ  ์ปค๋ฎค๋‹ˆํ‹ฐ ํ…์ŠคํŠธยท์ด๋ฏธ์ง€ ์ƒ์„ฑ ํ”„๋กฌํ”„ํŠธ ๊ณต์œ , AI ๊ฒฐ๊ณผ๋ฌผ ์—…๋กœ๋“œ, ์ข‹์•„์š”ยท๋Œ“๊ธ€ยท์Šคํฌ๋žฉ ์ œ๊ณต
AI ์ƒ์„ฑ ๊ธฐ๋Šฅ (GPT-4.o / Imagen-3) ํ…์ŠคํŠธยท์ด๋ฏธ์ง€ ์ƒ์„ฑ, ์˜ˆ์‹œ ๋‹ต๋ณ€/์งˆ๋ฌธ ์ž๋™ ์ƒ์„ฑ
๊ฐœ์ธ ์ŠคํŽ˜์ด์Šค(My Space) ๋น„๊ณต๊ฐœ ํ”„๋กฌํ”„ํŠธ ์ €์žฅ, ๊ฐœ์ธ ์Šคํฌ๋žฉยท๊ฒ€์ƒ‰ยท์ •๋ ฌ ๊ธฐ๋Šฅ ์ œ๊ณต
ํŒ€ ์ŠคํŽ˜์ด์Šค ํŒ€ ๊ณต๊ฐ„ ์ƒ์„ฑยท์ดˆ๋Œ€ยท์—ญํ•  ๊ธฐ๋ฐ˜ ๊ถŒํ•œ ๊ด€๋ฆฌ, ๊ณต๋™ ์ž‘์„ฑยท์ˆ˜์ •
ํ”„๋กฌํ”„ํŠธ ๋Œ€ํšŒ ์‹œ์Šคํ…œ ์ฃผ์ œ๋ณ„ ๋Œ€ํšŒ ๊ฐœ์ตœ, ์ œ์ถœยทํˆฌํ‘œยท๋žญํ‚น ๊ธฐ๋Šฅ ์ œ๊ณต
๊ณ ๊ธ‰ ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ ์ œ๋ชฉยท๋ณธ๋ฌธยทํƒœ๊ทธยท์นดํ…Œ๊ณ ๋ฆฌ ๊ธฐ๋ฐ˜ ๊ฒ€์ƒ‰, ์˜คํƒ€ ํ—ˆ์šฉ(fuzzy) ๊ฒ€์ƒ‰
ํƒœ๊ทธ ์ž๋™์™„์„ฑ N-gram ๊ธฐ๋ฐ˜ ์‹ค์‹œ๊ฐ„ ์ž๋™์™„์„ฑ ๋ฐ ๊ด€๋ จ ํƒœ๊ทธ ์ถ”์ฒœ
์Šคํฌ๋žฉ ๊ด€๋ฆฌ ์Šคํฌ๋žฉํ•œ ์ฝ˜ํ…์ธ ๋ฅผ ๊ฐœ์ธ ์ŠคํŽ˜์ด์Šค์— ์ž๋™ ๋ถ„๋ฅ˜ยท์ €์žฅ
์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ (SSE) ๋Œ“๊ธ€ยท์ดˆ๋Œ€ยท๋Œ€ํšŒ ๊ณต์ง€์— ๋Œ€ํ•œ ์‹ค์‹œ๊ฐ„ ํ‘ธ์‹œ ์ œ๊ณต
์‹ค์‹œ๊ฐ„ ์ธ๊ธฐ๊ธ€ (KafkaยทRedis) ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์ ์ˆ˜ ๊ณ„์‚ฐ ๋ฐ Redis ZSet ๊ธฐ๋ฐ˜ ์ธ๊ธฐ๊ธ€ ์ œ๊ณต
๋ฐ˜์‘ํ˜• UI PCยท๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ ๋ชจ๋‘ ์ตœ์ ํ™”๋œ ํ™”๋ฉด ์ง€์›

โš™๏ธ ํ•ต์‹ฌ ๊ธฐ์ˆ  ๊ตฌ์กฐ

๐Ÿ›  ๊ธฐ์ˆ  ์š”์•ฝ

๊ธฐ์ˆ  ์˜์—ญ ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ 
Frontend Next.js(React), TypeScript, TailwindCSS, Storybook
Backend Java 17, Spring Boot 3.5.6, Spring Security, JWT, JPA, QueryDSL
Database / Storage PostgreSQL (AWS RDS), Redis(ElasticCache), AWS S3
Event/Queue Apache Kafka
Search Engine ElasticSearch + Nori ๋ถ„์„๊ธฐ + N-gram
Real-time SSE ๊ธฐ๋ฐ˜ ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ
Infra AWS EC2, Docker, Jenkins, Nginx, CloudWatch
External AI API GPT-4.o, Gemini Imagen-3.0

๐Ÿงฑ ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜

alt text

๐Ÿ—‚ ERD(Entity Relationship Diagram)

alt text

๐Ÿ‘ฅ ํŒ€ ๊ตฌ์„ฑ

๐Ÿ‘‘ ์ „๊ฐ€๋ฐฐ ์ด์ค€ํฌ ์ด๋™์œค
Backend Backend Backend
์‹ ์˜ˆ์ฐฌ ์ด์žฌํ™˜ ์ •ํƒœ์Šน
Backend Frontend Frontend

About

๐Ÿณ Promocean โ€“ ์ƒ์„ฑํ˜• AI ๊ธฐ๋ฐ˜์˜ ํ”„๋กฌํ”„ํŠธ ๊ณต์œ ยท๊ด€๋ฆฌ ํ”Œ๋žซํผ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages