Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

133 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

โœˆ๏ธ All My Trips

๐ŸŒ AI-Powered Travel Guide & Planner

AI๊ฐ€ ์ถ”์ฒœํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์™„์„ฑํ•˜๋Š” ๋งž์ถคํ˜• ์—ฌํ–‰ ํ”Œ๋ž˜๋„ˆ





๐ŸŒ About All My Trips

All My Trips์€ ์‚ฌ์šฉ์ž์˜ ์—ฌํ–‰ ๊ธฐ๊ฐ„, ๋ชฉ์ ์ง€, ๋™ํ–‰์ž, ์—ฌํ–‰ ์Šคํƒ€์ผ, ์˜ˆ์‚ฐ์„ ๊ธฐ๋ฐ˜์œผ๋กœ AI๊ฐ€ ๋งž์ถคํ˜• ์—ฌํ–‰ ์ผ์ •์„ ์ถ”์ฒœํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์ˆ˜์ •ํ•˜์—ฌ ์ž์‹ ๋งŒ์˜ ์—ฌํ–‰ ๊ณ„ํš์„ ์™„์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌํ–‰ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

๋‹จ์ˆœํ•œ ์—ฌํ–‰์ง€ ์ถ”์ฒœ์„ ๋„˜์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ๋ฆ„์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ํ™•์žฅํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

AI ์—ฌํ–‰ ์ถ”์ฒœ
      โ†“
์‚ฌ์šฉ์ž ์ผ์ • ํŽธ์ง‘
      โ†“
์‹ค์‹œ๊ฐ„ ์—ฌํ–‰ ์ •๋ณด
      โ†“
์ˆ™๋ฐ• ยท ๊ตํ†ต ยท ํ‹ฐ์ผ“ ์˜ˆ์•ฝ
      โ†“
๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ์ฒ˜๋ฆฌ
      โ†“
RAG ๊ธฐ๋ฐ˜ ๊ฐœ์ธํ™” AI ์—ฌํ–‰ ๊ฐ€์ด๋“œ

โœˆ๏ธ How All My Trips Works

Step Journey
01 ๐Ÿ“ ์—ฌํ–‰ ์กฐ๊ฑด ์ž…๋ ฅ
02 ๐Ÿค– AI ๋งž์ถค ์—ฌํ–‰ ์ผ์ • ์ƒ์„ฑ
03 ๐Ÿ—“๏ธ ์‚ฌ์šฉ์ž ์ผ์ • ์ˆ˜์ • ๋ฐ ์ €์žฅ
04 ๐ŸŒค๏ธ ์‹ค์‹œ๊ฐ„ ์—ฌํ–‰ ์ •๋ณด ํ™•์ธ
05 ๐ŸŽซ ์ˆ™๋ฐ• ยท ๊ตํ†ต ยท ํ‹ฐ์ผ“ ์˜ˆ์•ฝ
06 ๐Ÿง  RAG ๊ธฐ๋ฐ˜ ๊ฐœ์ธํ™” ์—ฌํ–‰ ์ถ”์ฒœ

๐Ÿ“– 1. ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

๐Ÿ“ ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

์—ฌํ–‰์„ ์ค€๋น„ํ•  ๋•Œ ์‚ฌ์šฉ์ž๋Š” ๊ด€๊ด‘์ง€, ๋ง›์ง‘, ์ˆ™๋ฐ•, ๋‚ ์”จ, ๊ตํ†ต ๋“ฑ ์—ฌ๋Ÿฌ ์ •๋ณด๋ฅผ ๊ฐ๊ฐ ๋‹ค๋ฅธ ์„œ๋น„์Šค์—์„œ ์ฐพ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

All My Trips์€ ์ด๋Ÿฌํ•œ ์—ฌํ–‰ ์ค€๋น„ ๊ณผ์ •์„ ํ•˜๋‚˜์˜ ์„œ๋น„์Šค๋กœ ํ†ตํ•ฉํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ๋ช‡ ๊ฐ€์ง€ ์กฐ๊ฑด๋งŒ ์ž…๋ ฅํ•˜๋ฉด AI๊ฐ€ ๋งž์ถคํ˜• ์—ฌํ–‰ ๊ณ„ํš์„ ์ œ์•ˆํ•˜๋„๋ก ์„ค๊ณ„ํ•ฉ๋‹ˆ๋‹ค.

AI๊ฐ€ ๋งŒ๋“  ์ผ์ •์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ž์œ ๋กญ๊ฒŒ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ–ฅํ›„ ์‹ค์‹œ๊ฐ„ ์ •๋ณด์™€ ์˜ˆ์•ฝ ๊ธฐ๋Šฅ๊นŒ์ง€ ์—ฐ๋™ํ•˜์—ฌ ์‹ค์ œ ์—ฌํ–‰ ์ค€๋น„ ๊ณผ์ • ์ „์ฒด๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.


๐ŸŽฏ ํ”„๋กœ์ ํŠธ ํ•ต์‹ฌ ๋ชฉํ‘œ

  • AI ๊ธฐ๋ฐ˜ ๋งž์ถคํ˜• ์—ฌํ–‰ ์ผ์ • ์ƒ์„ฑ
  • ์‚ฌ์šฉ์ž ์ง์ ‘ ์—ฌํ–‰ ์ผ์ • ํŽธ์ง‘
  • ์—ฌํ–‰์ง€ ๋ฐ ๊ด€๊ด‘ ์ •๋ณด ํƒ์ƒ‰
  • ์‹ค์‹œ๊ฐ„ ๋‚ ์”จ์™€ ์ง€๋„ ์ •๋ณด ์ œ๊ณต
  • ์—ฌํ–‰ ์ผ์ • ์ €์žฅ ๋ฐ ๊ด€๋ฆฌ
  • ์˜ˆ์•ฝ ์‹œ์Šคํ…œ๊ณผ ๋Œ€๊ธฐ์—ด ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ๋ฐ ๋™์‹œ์„ฑ ๋ฌธ์ œ ํ•ด๊ฒฐ
  • RAG ๊ธฐ๋ฐ˜ ๊ฐœ์ธํ™” AI ์—ฌํ–‰ ๊ฐ€์ด๋“œ ๊ตฌํ˜„

๐Ÿ’ก Service Concept

"์–ด๋””๋กœ ๊ฐˆ๊นŒ?"
      โ†“
"๋ฌด์—‡์„ ํ• ๊นŒ?"
      โ†“
"์–ด๋–ค ์ผ์ •์œผ๋กœ ์›€์ง์ผ๊นŒ?"
      โ†“
"์–ด๋””์—์„œ ๋จธ๋ฌผ๊นŒ?"
      โ†“
"๋‚ด ์ทจํ–ฅ์— ๋งž๊ฒŒ ์ˆ˜์ •"
      โ†“
"๋‚˜๋งŒ์˜ ์—ฌํ–‰ ๊ณ„ํš ์™„์„ฑ"

All My Trips์€ ์—ฌํ–‰ ๊ณ„ํš์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ์‹ค์ œ ์—ฌํ–‰ ์ค€๋น„๊นŒ์ง€ ํ•˜๋‚˜์˜ ์„œ๋น„์Šค ์•ˆ์—์„œ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.


โœจ 2. ํ•ต์‹ฌ ๊ธฐ๋Šฅ

๐Ÿค– AI ์—ฌํ–‰ ์ผ์ • ์ถ”์ฒœ

์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์—ฌํ–‰ ์กฐ๊ฑด์„ ๊ธฐ๋ฐ˜์œผ๋กœ AI๊ฐ€ ๋งž์ถคํ˜• ์—ฌํ–‰ ์ผ์ •์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ ฅ ์กฐ๊ฑด

  • ๐Ÿ“ ์—ฌํ–‰ ์ง€์—ญ
  • ๐Ÿ“… ์—ฌํ–‰ ๊ธฐ๊ฐ„
  • ๐Ÿ‘ฅ ๋™ํ–‰์ž
  • ๐ŸŽฏ ์—ฌํ–‰ ๋ชฉ์ 
  • โค๏ธ ์—ฌํ–‰ ์Šคํƒ€์ผ
  • ๐Ÿ’ฐ ์˜ˆ์ƒ ์˜ˆ์‚ฐ

์˜ˆ์‹œ

์—ฌํ–‰ ์ง€์—ญ : ์ œ์ฃผ๋„
์—ฌํ–‰ ๊ธฐ๊ฐ„ : 3๋ฐ• 4์ผ
๋™ํ–‰์ž : ์นœ๊ตฌ
์—ฌํ–‰ ์Šคํƒ€์ผ : ๋ง›์ง‘ + ๊ด€๊ด‘
์˜ˆ์‚ฐ : 1์ธ 50๋งŒ์›

AI ์ถ”์ฒœ ๊ฒฐ๊ณผ

DAY 1
์ œ์ฃผ๊ณตํ•ญ
โ†’ ๋™๋ฌธ์‹œ์žฅ
โ†’ ์šฉ๋‘์•”
โ†’ ์ˆ™์†Œ ์ฒดํฌ์ธ

DAY 2
์„ฑ์‚ฐ์ผ์ถœ๋ด‰
โ†’ ์„ญ์ง€์ฝ”์ง€
โ†’ ์šฐ๋„

DAY 3
ํ˜‘์žฌํ•ด์ˆ˜์š•์žฅ
โ†’ ์˜ค์„ค๋ก
โ†’ ์• ์›” ์นดํŽ˜๊ฑฐ๋ฆฌ

DAY 4
๊ธฐ๋…ํ’ˆ ์‡ผํ•‘
โ†’ ์ œ์ฃผ๊ณตํ•ญ

๐Ÿ—“๏ธ ์—ฌํ–‰ ์ผ์ • ์ง์ ‘ ํŽธ์ง‘

AI๊ฐ€ ๋งŒ๋“  ์ผ์ •์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์—ฌํ–‰ ๊ณ„ํš์„ ์ˆ˜์ •ํ•˜๊ณ  ์™„์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ผ์ • ์ถ”๊ฐ€ / ์‚ญ์ œ
  • ์žฅ์†Œ ์ˆœ์„œ ๋ณ€๊ฒฝ
  • ๊ด€๊ด‘์ง€ ์ถ”๊ฐ€
  • ๋ง›์ง‘ ์ถ”๊ฐ€
  • ์ˆ™์†Œ ์ถ”๊ฐ€
  • ๋ฉ”๋ชจ ์ž‘์„ฑ
  • ์ผ์ • ์ €์žฅ

๐Ÿ“ ์—ฌํ–‰ ์žฅ์†Œ ํƒ์ƒ‰

๋‹ค์–‘ํ•œ ์—ฌํ–‰ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์ผ์ •์— ๋ฐ”๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ด€๊ด‘์ง€
  • ๋ง›์ง‘
  • ์นดํŽ˜
  • ์ˆ™๋ฐ•
  • ์ถ•์ œ
  • ์ฒดํ—˜ ํ™œ๋™

โญ ์ฆ๊ฒจ์ฐพ๊ธฐ

๊ด€์‹ฌ ์žˆ๋Š” ์žฅ์†Œ๋ฅผ ์ €์žฅํ•ด๋‘๊ณ  ์ถ”ํ›„ ์—ฌํ–‰ ์ผ์ •์— ๊ฐ„ํŽธํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐ŸŒค๏ธ ์‹ค์‹œ๊ฐ„ ์—ฌํ–‰ ์ •๋ณด

์™ธ๋ถ€ API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์—ฌํ–‰์— ํ•„์š”ํ•œ ์‹ค์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ํ˜„์žฌ ๋‚ ์”จ
  • ์—ฌํ–‰ ๊ธฐ๊ฐ„ ๋‚ ์”จ ์˜ˆ๋ณด
  • ๊ด€๊ด‘ ์ •๋ณด
  • ์ง€๋„ ๋ฐ ์œ„์น˜ ์ •๋ณด
  • ๊ตํ†ต ์ •๋ณด

๐Ÿ‘ค ํšŒ์› ๊ธฐ๋Šฅ

  • ํšŒ์›๊ฐ€์ž…
  • ๋กœ๊ทธ์ธ
  • ๋กœ๊ทธ์•„์›ƒ
  • ๋งˆ์ดํŽ˜์ด์ง€
  • ๋‚ด ์—ฌํ–‰ ์ผ์ • ์กฐํšŒ
  • ์ฆ๊ฒจ์ฐพ๊ธฐ ๊ด€๋ฆฌ

๐Ÿ—บ๏ธ 3. ์„œ๋น„์Šค ํ”Œ๋กœ์šฐ

User Flow

์‚ฌ์šฉ์ž ์ ‘์†
      โ†“
์—ฌํ–‰ ์กฐ๊ฑด ์ž…๋ ฅ
      โ†“
AI ์—ฌํ–‰ ์ผ์ • ์ƒ์„ฑ
      โ†“
์ผ์ • ์ˆ˜์ • ๋ฐ ์ €์žฅ
      โ†“
๋‚ ์”จ / ์ง€๋„ / ๊ด€๊ด‘ ์ •๋ณด ํ™•์ธ
      โ†“
์ˆ™๋ฐ• / ๊ตํ†ต / ํ‹ฐ์ผ“ ์กฐํšŒ
      โ†“
์—ฌํ–‰ ์ผ์ • ์ตœ์ข… ํ™•์ •

Main Page Concept

All My Trips์˜ ์ฒซ ํ™”๋ฉด์€ Google ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€์ฒ˜๋Ÿผ ๋ณต์žกํ•˜์ง€ ์•Š๊ณ  ์ง๊ด€์ ์ธ UI๋ฅผ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ดํŠธ์— ์ ‘์†ํ•œ ํ›„ ๋ณ„๋„์˜ ๋ณต์žกํ•œ ํƒ์ƒ‰ ์—†์ด ๋ฐ”๋กœ ์—ฌํ–‰ ์กฐ๊ฑด์„ ์ž…๋ ฅํ•˜๊ณ  AI ์—ฌํ–‰ ๊ณ„ํš์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

              โœˆ๏ธ All My Trips

       ์–ด๋””๋กœ ์—ฌํ–‰์„ ๋– ๋‚˜์‹œ๋‚˜์š”?

           [ ์—ฌํ–‰ ์ง€์—ญ ์ž…๋ ฅ ]

       ์–ผ๋งˆ ๋™์•ˆ ์—ฌํ–‰ํ•˜์‹œ๋‚˜์š”?

           [ ์—ฌํ–‰ ๊ธฐ๊ฐ„ ์„ ํƒ ]

       ๋ˆ„๊ตฌ์™€ ํ•จ๊ป˜ ๊ฐ€์‹œ๋‚˜์š”?

 [ ํ˜ผ์ž ] [ ์นœ๊ตฌ ] [ ์—ฐ์ธ ] [ ๊ฐ€์กฑ ]

       ์–ด๋–ค ์—ฌํ–‰์„ ์›ํ•˜์‹œ๋‚˜์š”?

 [ ๊ด€๊ด‘ ] [ ๋ง›์ง‘ ] [ ํž๋ง ] [ ์•กํ‹ฐ๋น„ํ‹ฐ ]

         [ โœจ AI ์—ฌํ–‰ ๊ณ„ํš ๋งŒ๋“ค๊ธฐ ]

์ถ”๊ฐ€ ์„ค์ •

๊ธฐ๋ณธ ํ™”๋ฉด์„ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค์ง€ ์•Š๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์‚ฌ์šฉ์ž๋งŒ ์ถ”๊ฐ€ ์˜ต์…˜์„ ํŽผ์ณ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

  • ์˜ˆ์ƒ ์˜ˆ์‚ฐ
  • ์ด๋™ ์ˆ˜๋‹จ
  • ์„ ํ˜ธ ์Œ์‹
  • ์—ฌํ–‰ ๊ฐ•๋„
  • ์ˆ™๋ฐ• ์Šคํƒ€์ผ
  • ๊ด€์‹ฌ ์—ฌํ–‰ ํ…Œ๋งˆ

๐Ÿš€ Development Roadmap

Phase ๋ชฉํ‘œ ํ•ต์‹ฌ ๊ธฐ๋Šฅ
1์ฐจ ๐Ÿค– AI ์—ฌํ–‰ ํ”Œ๋ž˜๋„ˆ MVP AI ์ผ์ • ์ƒ์„ฑ, ์ผ์ • ๊ด€๋ฆฌ, ์ฆ๊ฒจ์ฐพ๊ธฐ
2์ฐจ โšก ์‹ค์„œ๋น„์Šค ๊ธฐ๋Šฅ ํ™•์žฅ ์‹ค์‹œ๊ฐ„ API, ์˜ˆ์•ฝ, Redis, ๋Œ€๊ธฐ์—ด, ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ
3์ฐจ ๐Ÿง  AI ๊ฐœ์ธํ™” ๊ณ ๋„ํ™” RAG, Vector DB, ์ผ์ • ๋ถ„์„, ๋™์„  ์ตœ์ ํ™”

1๏ธโƒฃ 4-1. 1์ฐจ ๊ตฌํ˜„ - MVP

AI ์—ฌํ–‰ ๊ฐ€์ด๋“œ & ์—ฌํ–‰ ์ผ์ • ๊ด€๋ฆฌ

All My Trips์˜ ํ•ต์‹ฌ ์„œ๋น„์Šค๋ฅผ ๋จผ์ € ๊ตฌํ˜„ํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

์ฃผ์š” ๊ธฐ๋Šฅ

  • ๋ฉ”์ธ ํ™”๋ฉด
  • AI ์—ฌํ–‰ ์ผ์ • ์ƒ์„ฑ
  • ์ผ์ • ์ƒ์„ฑ / ์กฐํšŒ / ์ˆ˜์ • / ์‚ญ์ œ
  • ์‚ฌ์šฉ์ž ์ง์ ‘ ์ผ์ • ์ž‘์„ฑ
  • ์—ฌํ–‰์ง€ ํƒ์ƒ‰
  • ์ฆ๊ฒจ์ฐพ๊ธฐ
  • ํšŒ์› ๊ธฐ๋Šฅ
  • ๋งˆ์ดํŽ˜์ด์ง€

ํ•ต์‹ฌ ๋ชฉํ‘œ

AI๊ฐ€ ์ถ”์ฒœํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์™„์„ฑํ•˜๋Š” ์—ฌํ–‰ ํ”Œ๋ž˜๋„ˆ

1์ฐจ ๊ตฌํ˜„์—์„œ๋Š” All My Trips ์„œ๋น„์Šค์˜ ํ•ต์‹ฌ ๊ฐ€์น˜์ธ AI ์ถ”์ฒœ + ์‚ฌ์šฉ์ž ์ผ์ • ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ์™„์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.


2๏ธโƒฃ 4-2. 2์ฐจ ๊ตฌํ˜„ - ์„œ๋น„์Šค ํ™•์žฅ

์‹ค์‹œ๊ฐ„ ์—ฌํ–‰ ์ •๋ณด & ์˜ˆ์•ฝ ์‹œ์Šคํ…œ

1์ฐจ ๊ตฌํ˜„์—์„œ ๋งŒ๋“  ์—ฌํ–‰ ์ผ์ • ์„œ๋น„์Šค๋ฅผ ์‹ค์ œ ์—ฌํ–‰ ์„œ๋น„์Šค์— ๊ฐ€๊นŒ์šด ํ˜•ํƒœ๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.

๐ŸŒค๏ธ ์‹ค์‹œ๊ฐ„ API

  • ๋‚ ์”จ API
  • ์ง€๋„ API
  • ๊ด€๊ด‘ ์ •๋ณด API
  • ์œ„์น˜ ๊ธฐ๋ฐ˜ ๊ฒ€์ƒ‰
  • ๊ตํ†ต ์ •๋ณด API

๐Ÿจ ์ˆ™๋ฐ• ๋ฐ ๊ตํ†ต ์ •๋ณด

  • ์ง€์—ญ๋ณ„ ์ˆ™์†Œ ๊ฒ€์ƒ‰
  • ์ˆ™์†Œ ์ƒ์„ธ ์ •๋ณด
  • ์ˆ™์†Œ ์œ„์น˜ ํ™•์ธ
  • ํ•ญ๊ณตํŽธ ์ •๋ณด
  • ๊ธฐ์ฐจ / ๋ฒ„์Šค ์ •๋ณด
  • ์ด๋™ ๊ฒฝ๋กœ ํ™•์ธ

๐ŸŽซ ๊ด€๊ด‘์ง€ ํ‹ฐ์ผ“ ์˜ˆ์•ฝ

๊ด€๊ด‘์ง€, ์ถ•์ œ, ์ฒดํ—˜ ์ƒํ’ˆ ๋“ฑ์˜ ํ‹ฐ์ผ“์„ ์˜ˆ์•ฝํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

์ œ์ฃผ ์•„์ฟ ์•„ํ”Œ๋ผ๋„ท

์˜ˆ์•ฝ ๊ฐ€๋Šฅ ์ˆ˜๋Ÿ‰ : 100

[ ์˜ˆ์•ฝํ•˜๊ธฐ ]

โšก ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ํ…Œ์ŠคํŠธ

ํ•œ์ • ์ˆ˜๋Ÿ‰์˜ ํ‹ฐ์ผ“์— ๋งŽ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•˜๋Š” ์ƒํ™ฉ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

ํ•œ์ • ์ˆ˜๋Ÿ‰ ๊ด€๊ด‘ ํ‹ฐ์ผ“

ํ‹ฐ์ผ“ ์ˆ˜๋Ÿ‰ : 100๊ฐœ
๋™์‹œ ์š”์ฒญ ์‚ฌ์šฉ์ž : 10,000๋ช…

ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ œ

  • ๋™์‹œ ์˜ˆ์•ฝ ์š”์ฒญ
  • ์ค‘๋ณต ์˜ˆ์•ฝ
  • ์žฌ๊ณ  ์ดˆ๊ณผ ํŒ๋งค
  • DB Lock ๋ฌธ์ œ
  • ์„œ๋ฒ„ ๊ณผ๋ถ€ํ•˜

๐Ÿ”’ ๋™์‹œ์„ฑ ์ œ์–ด

๊ฒ€ํ†  ๊ธฐ์ˆ 

Redis
Distributed Lock
Optimistic Lock
Pessimistic Lock

๐Ÿšฆ ๋Œ€๊ธฐ์—ด ์‹œ์Šคํ…œ

๋Œ€๊ทœ๋ชจ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์˜ˆ์•ฝ ํŽ˜์ด์ง€์— ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ ์„œ๋ฒ„ ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋Œ€๊ธฐ์—ด ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ ‘์†์ž๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ๋Œ€๊ธฐ ์ˆœ๋ฒˆ
324๋ช…

์˜ˆ์ƒ ๋Œ€๊ธฐ ์‹œ๊ฐ„
์•ฝ 2๋ถ„

๊ฒ€ํ†  ๊ธฐ์ˆ 

Redis
Queue
Kafka
WebSocket
SSE

๐Ÿ“Š ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ

๊ฒ€ํ†  ๋„๊ตฌ

JMeter
k6
nGrinder

ํ•ต์‹ฌ ๋ชฉํ‘œ

์‹ค์ œ ์„œ๋น„์Šค ํ™˜๊ฒฝ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ํŠธ๋ž˜ํ”ฝ๊ณผ ๋™์‹œ์„ฑ ๋ฌธ์ œ๋ฅผ ์ง์ ‘ ์žฌํ˜„ํ•˜๊ณ  ํ•ด๊ฒฐ


3๏ธโƒฃ 4-3. 3์ฐจ ๊ตฌํ˜„ - AI ๊ณ ๋„ํ™”

RAG ๊ธฐ๋ฐ˜ AI ์—ฌํ–‰ ๊ฐ€์ด๋“œ

AI ๊ธฐ๋Šฅ์„ ๋‹จ์ˆœํ•œ LLM ์‘๋‹ต์—์„œ ์‹ค์ œ ์—ฌํ–‰ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ต๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ๋กœ ๋ฐœ์ „์‹œํ‚ต๋‹ˆ๋‹ค.


๐Ÿง  RAG ๊ธฐ๋ฐ˜ ์—ฌํ–‰ AI

์‚ฌ์šฉ์ž ์งˆ๋ฌธ๊ณผ ๊ด€๋ จ๋œ ์—ฌํ–‰ ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ๊ฒ€์ƒ‰ํ•œ ํ›„ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ LLM์ด ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ์งˆ๋ฌธ
      โ†“
Embedding
      โ†“
Vector Database ๊ฒ€์ƒ‰
      โ†“
๊ด€๋ จ ์—ฌํ–‰ ๋ฐ์ดํ„ฐ ์ถ”์ถœ
      โ†“
LLM
      โ†“
๋งž์ถคํ˜• ์—ฌํ–‰ ๋‹ต๋ณ€

๐Ÿ—„๏ธ Vector Database

ํ™œ์šฉ ๋ฐ์ดํ„ฐ

  • ๊ด€๊ด‘์ง€ ์ •๋ณด
  • ๋ง›์ง‘ ์ •๋ณด
  • ์—ฌํ–‰ ํ›„๊ธฐ
  • ์ง€์—ญ๋ณ„ ์—ฌํ–‰ ๊ฐ€์ด๋“œ
  • ์—ฌํ–‰ ์ผ์ • ๋ฐ์ดํ„ฐ

๊ฒ€ํ†  ๊ธฐ์ˆ 

FAISS
ChromaDB
Pinecone
Milvus

๐Ÿ’ฌ AI ์—ฌํ–‰ ์ฑ—๋ด‡

"์„œ์šธ์—์„œ ๋น„ ์˜ค๋Š” ๋‚  ๊ฐˆ๋งŒํ•œ ๊ณณ ์ถ”์ฒœํ•ด์ค˜"

"์ œ์ฃผ๋„ 3๋ฐ• 4์ผ ๊ฐ€์กฑ ์—ฌํ–‰ ์ผ์ • ๋งŒ๋“ค์–ด์ค˜"

"๋ถ€์‚ฐ์—์„œ ํšŒ ๋ง๊ณ  ๋จน์„ ๋งŒํ•œ ์Œ์‹ ์ถ”์ฒœํ•ด์ค˜"

"ํ˜„์žฌ ์—ฌํ–‰ ์ผ์ •์—์„œ ์ด๋™ ๋™์„ ์„ ์ค„์—ฌ์ค˜"

"์˜ค๋Š˜ ๋‚ ์”จ์— ๋งž๊ฒŒ ์ผ์ •์„ ๋ณ€๊ฒฝํ•ด์ค˜"

๐Ÿ”„ AI ์—ฌํ–‰ ์ผ์ • ์ตœ์ ํ™”

์‚ฌ์šฉ์ž๊ฐ€ ๋งŒ๋“  ์—ฌํ–‰ ์ผ์ •์˜ ์œ„์น˜์™€ ์ด๋™ ๊ฑฐ๋ฆฌ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๋” ํšจ์œจ์ ์ธ ์—ฌํ–‰ ๋™์„ ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด ์ผ์ •

09:00 ์„ฑ์‚ฐ์ผ์ถœ๋ด‰
11:00 ํ˜‘์žฌํ•ด์ˆ˜์š•์žฅ
13:00 ์šฐ๋„

AI ๋ถ„์„

ํ˜„์žฌ ์ผ์ •์€ ์žฅ์†Œ ๊ฐ„ ์ด๋™ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ธธ์–ด
ํšจ์œจ์ ์ด์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ฑ์‚ฐ์ผ์ถœ๋ด‰
โ†’ ์šฐ๋„
โ†’ ์„ญ์ง€์ฝ”์ง€

์ˆœ์„œ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ‘ค ์‚ฌ์šฉ์ž ๋งž์ถคํ˜• ์ถ”์ฒœ

์‚ฌ์šฉ์ž์˜ ๊ธฐ์กด ์—ฌํ–‰ ๊ธฐ๋ก๊ณผ ์„ ํ˜ธ๋„๋ฅผ ๋ถ„์„ํ•˜์—ฌ ํ–ฅํ›„ ์—ฌํ–‰ ์ผ์ • ์ƒ์„ฑ ์‹œ ๊ฐœ์ธํ™”๋œ ์ถ”์ฒœ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ์—ฌํ–‰ ์„ ํ˜ธ๋„

๋ง›์ง‘      40%
์นดํŽ˜      30%
๊ด€๊ด‘      20%
์•กํ‹ฐ๋น„ํ‹ฐ  10%

ํ•ต์‹ฌ ๋ชฉํ‘œ

์‚ฌ์šฉ์ž์˜ ์—ฌํ–‰ ๋ฐ์ดํ„ฐ๋ฅผ ์ดํ•ดํ•˜๊ณ  ๊ฐœ์ธํ™”๋œ ์ถ”์ฒœ์„ ์ œ๊ณตํ•˜๋Š” AI Travel Assistant ๊ตฌํ˜„


๐Ÿ› ๏ธ 5. ๊ธฐ์ˆ  ์Šคํƒ

Backend


Frontend


Database / Cache


AI


Infrastructure


Collaboration


โš™๏ธ 6. ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜
                 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                 โ”‚    Client    โ”‚
                 โ”‚  Web Browser โ”‚
                 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                        โ”‚
                        โ–ผ
                 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                 โ”‚    Nginx     โ”‚
                 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                        โ”‚
                        โ–ผ
               โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
               โ”‚  Spring Boot   โ”‚
               โ”‚  Application   โ”‚
               โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                       โ”‚
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
          โ”‚            โ”‚            โ”‚
          โ–ผ            โ–ผ            โ–ผ
    PostgreSQL       Redis       AI Service
                                      โ”‚
                           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                           โ”‚                     โ”‚
                           โ–ผ                     โ–ผ
                          LLM              Vector Database

๐Ÿ—„๏ธ 7. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„
๐Ÿ“Š 7-1. ํ…Œ์ด๋ธ” ์ƒ์„ฑ SQL (DDL)

๐Ÿ“„ All My Trips ํ†ตํ•ฉ DDL ๋ณด๊ธฐ

๐Ÿงฉ PostgreSQL V1~V7 ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ยท๋กœ์ปฌ seedยท๊ฒ€์ฆ ์‹คํ–‰ ์•ˆ๋‚ด


๐Ÿ“‹ 7-2. DB ํ…Œ์ด๋ธ” ๊ตฌ์กฐ ๋ฐ ์ปฌ๋Ÿผ ์„ค๋ช…

๐Ÿ“ ERD ์ดˆ์•ˆ ๋ฐ ํ…Œ์ด๋ธ”ยท์ปฌ๋Ÿผ ์„ค๊ณ„์„œ ๋ณด๊ธฐ

ํ˜„์žฌ ๋ฌธ์„œ๋Š” ์„œ๋น„์Šค ์„ค๊ณ„ ๊ณผ์ •์—์„œ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋Š” ์ดˆ์•ˆ์ด๋ฉฐ, ๋ณ€๊ฒฝ ์ด๋ ฅ์€ Git์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ“‚ 8. ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ
AllMyTrips/
โ”‚
โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ controller/
โ”‚   โ”œโ”€โ”€ service/
โ”‚   โ”œโ”€โ”€ repository/
โ”‚   โ”œโ”€โ”€ domain/
โ”‚   โ””โ”€โ”€ config/
โ”‚
โ”œโ”€โ”€ frontend/
โ”‚
โ”œโ”€โ”€ ai/
โ”‚   โ”œโ”€โ”€ llm/
โ”‚   โ”œโ”€โ”€ rag/
โ”‚   โ””โ”€โ”€ embedding/
โ”‚
โ”œโ”€โ”€ database/
โ”‚   โ”œโ”€โ”€ init/
โ”‚   โ”œโ”€โ”€ migration/
โ”‚   โ”œโ”€โ”€ seed/
โ”‚   โ”œโ”€โ”€ validation/
โ”‚   โ””โ”€โ”€ README.md
โ”‚
โ”œโ”€โ”€ docs/
โ”‚   โ”œโ”€โ”€ database/
โ”‚   โ”œโ”€โ”€ planning/
โ”‚   โ”œโ”€โ”€ screen-design/
โ”‚   โ”œโ”€โ”€ flowchart/
โ”‚   โ””โ”€โ”€ erd/
โ”‚
โ””โ”€โ”€ README.md

๐Ÿ‘ฅ 9. ํŒ€์› ๊ตฌ์„ฑ
์—ญํ•  ์ด๋ฆ„
๐Ÿ‘‘ ํŒ€์žฅ ํ—ˆ๋ฏผ์žฌ
๐Ÿ‘จโ€๐Ÿ’ป ํŒ€์› ์ •์ธ๊ธธ
๐Ÿ‘จโ€๐Ÿ’ป ํŒ€์› ํ™์œ ์›
๐Ÿ‘จโ€๐Ÿ’ป ํŒ€์› ๋‚จํ˜„ํ˜ธ
๐Ÿ‘จโ€๐Ÿ’ป ํŒ€์› ํ•œ์„ฑ์ฃผ

๐Ÿ“˜ ๋ฐฑ์—”๋“œ ๋„๋ฉ”์ธยทService ์—ญํ•  ๋ถ„๋‹ด ์ดˆ์•ˆ


๐Ÿ“ˆ 10. ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ์–ป๊ณ ์ž ํ•˜๋Š” ๊ฒฝํ—˜

๐ŸŒ Web Development

  • Spring Boot ๊ธฐ๋ฐ˜ ์›น ์„œ๋น„์Šค ์„ค๊ณ„
  • REST API ์„ค๊ณ„
  • ์‚ฌ์šฉ์ž ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๊ด€๋ฆฌ
  • DB ๋ชจ๋ธ๋ง
  • ์™ธ๋ถ€ API ์—ฐ๋™

๐Ÿค– AI

  • AI API ์—ฐ๋™
  • Local LLM ํ™œ์šฉ
  • RAG ๊ตฌ์กฐ ์„ค๊ณ„
  • Embedding ํ™œ์šฉ
  • Vector Database ํ™œ์šฉ

โšก Performance

  • Redis ํ™œ์šฉ
  • ์˜ˆ์•ฝ ๋™์‹œ์„ฑ ๋ฌธ์ œ ํ•ด๊ฒฐ
  • ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ
  • ๋Œ€๊ธฐ์—ด ์‹œ์Šคํ…œ ์„ค๊ณ„
  • ์„œ๋น„์Šค ์„ฑ๋Šฅ ๊ฐœ์„ 

โ˜๏ธ Infrastructure

  • AWS ์„œ๋ฒ„ ๋ฐฐํฌ
  • Nginx ๊ตฌ์„ฑ
  • Docker ํ™œ์šฉ
  • GitHub Actions ๊ธฐ๋ฐ˜ CI/CD

๐Ÿ”ฎ 11. ํ–ฅํ›„ ํ™•์žฅ ๊ธฐ๋Šฅ
  • ์‹ค์‹œ๊ฐ„ ๋‚ ์”จ ๊ธฐ๋ฐ˜ ์ผ์ • ๋ณ€๊ฒฝ
  • ์ง€๋„ ๊ธฐ๋ฐ˜ ์—ฌํ–‰ ๋™์„  ์ตœ์ ํ™”
  • ํ•ญ๊ณต ๋ฐ ์ˆ™๋ฐ• ์ •๋ณด ์—ฐ๋™
  • ๊ด€๊ด‘์ง€ ํ‹ฐ์ผ“ ์˜ˆ์•ฝ
  • Redis ๊ธฐ๋ฐ˜ ์˜ˆ์•ฝ ๋™์‹œ์„ฑ ์ œ์–ด
  • ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ๋Œ€๊ธฐ์—ด ์‹œ์Šคํ…œ
  • ์‚ฌ์šฉ์ž ์—ฌํ–‰ ํŒจํ„ด ๋ถ„์„
  • ๊ฐœ์ธ ๋งž์ถคํ˜• ์—ฌํ–‰ ์ถ”์ฒœ
  • RAG ๊ธฐ๋ฐ˜ ์—ฌํ–‰ ์ฑ—๋ด‡

๐Ÿ”— Project Links

๊ตฌ๋ถ„ ๋งํฌ
๐ŸŽจ Figma ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“– Notion ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŒ Demo ์ถ”ํ›„ ์ถ”๊ฐ€
๐ŸŽฌ Video ์ถ”ํ›„ ์ถ”๊ฐ€

โœˆ๏ธ All My Trips

Plan Smarter. Travel Better.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages