Tinkerbell Glitter
[250331] ์ตœ์ข… ํŒ€ํ”Œ 9์กฐ - <Lazy-Traveler>
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/๋ณธ์บ ๊ณผ์ œ ๐Ÿ“
๋ง๋„ ๋งŽ๊ณ  ํƒˆ๋„ ๋งŽ์•˜๋˜ ์ตœ์ข…ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค~!๋‹ค๋“ค ์ด๋ฒˆ ์ƒ์— ํ˜‘์—…์€ ์ฒ˜์Œ์ด์—ˆ๋˜์ง€๋ผ ๋งŽ์ด ์„œํˆด์—ˆ๋˜ ๊ฒƒ ๊ฐ™์•„์„œ ์•„์‰ฝ์Šต๋‹ˆ๋‹ค.๊ทธ๋ž˜๋„ ๋‹ค๋“ค ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ  ๋ง‰ํŒ ์ŠคํผํŠธ ๋‹ฌ๋ ค์ค€ ๊ฒƒ ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค~ ์ง„์งœ์ง„์งœ ์ œ๋Œ€๋กœ ๋๋งˆ์น  ์ˆ˜ ์žˆ์„๊นŒ ๊ฑฑ์ • ๋งŽ์ด ํ–ˆ๋Š”๋ฐ์ƒ๊ฐ๋ณด๋‹ค ๋” ์ข‹์€ ๊ฒฐ๊ณผ๋ฌผ ๋‚˜์˜จ ๊ฒƒ ๊ฐ™์•„์„œ ๋‹คํ–‰์ด์—์š”.์—ฌ๊ธฐ์„œ ๋‚˜์ค‘์— ์ถ”๊ฐ€๋กœ ๋””๋ฒจ๋กญ์ด ๋” ๋  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋นŒ์–ด๋ด…๋‹ˆ๋‹ค. ์›์œ ์„  ํŠœํ„ฐ๋‹˜, ์–‘๋ด‰ํ˜„ ํŠœํ„ฐ๋‹˜ ๋‘๋ถ„๊ป˜ ๋„ˆ๋ฌด ๊ฐ์‚ฌ๋“œ๋ฆฌ๊ณ ,,ํŠนํžˆ ์›์œ ์„  ํŠœํ„ฐ๋‹˜ ๋„ˆ๋ฌด๋„ˆ๋ฌด ๊ฐ์‚ฌํ–ˆ์Šต๋‹ˆ๋‹คใ… ใ… ํŠœํ„ฐ๋‹˜ ์—†์—ˆ์œผ๋ฉด ์ ˆ๋Œ€ ์™„์„ฑํ•˜์ง€ ๋ชปํ–ˆ์„ ๊ฒƒ ๊ฐ™์€... ๋ฐœํ‘œ ๋•Œ ๋„ˆ๋ฌด๋„ˆ๋ฌด ๊ธด์žฅํ–ˆ์–ด์„œ ๋ฐœํ‘œ ๋๋‚˜์ž๋งˆ์ž ๊ด‘๊ด‘ ์šธ์—ˆ๋Š”๋ฐ์•”ํŠผ,, ๊ฐ์ •์ด ๋ณต์žกํ–ˆ์Œใ…Ž์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋กœ ์ธํ•ด์„œ ๋งŽ์ด ๋ถ€์กฑํ•œ๊ฑธ ๋А๊ผˆ๊ณ ,์—ด์‹ฌํžˆ ํ•ด์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค~ํ”„๋กœ์ ํŠธ ํ•˜๊ธฐ ์ „๋ณด๋‹ค ๋ถ€๋”” ์ธ๊ฐ„์ ์œผ๋กœ๋‚˜ ๊ธฐ์ˆ ์ ์œผ๋กœ๋‚˜ ์„ฑ์žฅํ–ˆ๊ธฐ๋ฅผ...
[250317] ๋ฏธ๋“ค์›จ์–ด(Middleware)๋ž€?
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
๋ฏธ๋“ค์›จ์–ด(Middleware)๋ž€?1. ๋ฏธ๋“ค์›จ์–ด ์ •์˜์žฅ๊ณ ์—์„œ ๋ฏธ๋“ค์›จ์–ด(Middleware)๋Š” ์š”์ฒญ(Request)๊ณผ ์‘๋‹ต(Response) ์‚ฌ์ด์—์„œ ์ฒ˜๋ฆฌ๋˜๋Š” ์ผ์ข…์˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜์š”์ฒญ ์ฒ˜๋ฆฌ ๊ณผ์ •์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.2. ๋ฏธ๋“ค์›จ์–ด์˜ ์—ญํ• ๋ฏธ๋“ค์›จ์–ด๋Š” ์š”์ฒญ์ด ๋ทฐ(View)์— ๋„๋‹ฌํ•˜๊ธฐ ์ „์— ๋˜๋Š” ๋ทฐ์˜ ์‘๋‹ต์ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌ๋˜๊ธฐ ์ „์— ํŠน์ • ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.์ด๋ฅผ ํ†ตํ•ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๊ณตํ†ต์ ์ธ ๊ธฐ๋Šฅ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.3. ๋ฏธ๋“ค์›จ์–ด์˜ ์ฃผ์š” ์šฉ๋„:์š”์ฒญ/์‘๋‹ต ์ˆ˜์ •:๋ฏธ๋“ค์›จ์–ด๋Š” ์š”์ฒญ์„ ๊ฐ€๋กœ์ฑ„์„œ ์š”์ฒญ ๊ฐ์ฒด(request)๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๋กœ๊ทธ๋ฅผ ๋‚จ๊ธฐ๊ณ , ์‘๋‹ต์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ธ์ฆ(Authentication):์‚ฌ์šฉ์ž ์ธ์ฆ์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ์š”์ฒญ์ด ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์™”๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต..
[250306] update()์™€ save()์˜ ์ฐจ์ด
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
Django ORM์—์„œ `update()`์™€ `save()`์˜ ์ฐจ์ดDjango ORM์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์ €์žฅํ•˜๋Š” ๊ณผ์ •์—์„œ `update()`์™€ `save()`๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.ํ•˜์ง€๋งŒ ์ด ๋‘˜์˜ ๋™์ž‘ ๋ฐฉ์‹์€ ๋‹ค๋ฅด๋ฉฐ, ๋ฐ์ดํ„ฐ๊ฐ€ DB์— ๋ฐ˜์˜๋˜๋Š” ๋ฐฉ์‹์—์„œ๋„ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.1. `update()`: QuerySet์„ ํ†ตํ•œ ๋Œ€๋Ÿ‰ ์—…๋ฐ์ดํŠธโœ… ํŠน์ง•`update()`๋Š” QuerySet์„ ์ง์ ‘ ์กฐ์ž‘ํ•˜์—ฌ DB์— ๋ฐ˜์˜ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.๋‹จ์ผ ๊ฐ์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ํ•œ ๋ฒˆ์— ์—…๋ฐ์ดํŠธํ•  ์ˆ˜๋„ ์žˆ๋‹ค.Django ๋ชจ๋ธ์˜ `save()` ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์ง€ ์•Š์Œ → ์ฆ‰, `pre_save` ๋ฐ `post_save` ๊ฐ™์€ ์‹ ํ˜ธ(signals)๋„ ํŠธ๋ฆฌ๊ฑฐ๋˜์ง€ ์•Š๋Š”๋‹ค.โœ… ์‚ฌ์šฉ ์˜ˆ์‹œfrom myapp.models import User# ..
[250305] Soft Delete๋ž€?
Back End ๐Ÿ“ฒ/Django โ›“๏ธ
Soft Delete๋ž€? ๐Ÿ”™1. Soft Delete ์ •์˜Soft Delete(์†Œํ”„ํŠธ ๋”œ๋ฆฌํŠธ)๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์ œ๋กœ ์‚ญ์ œํ•˜๋Š” ๋Œ€์‹ , ํŠน์ • ์ปฌ๋Ÿผ(์˜ˆ: `deleted_at` ๋˜๋Š”`is_deleted`)์„ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ๋…ผ๋ฆฌ์ ์œผ๋กœ ์‚ญ์ œ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.๐Ÿ” Hard Delete vs. Soft Delete๊ตฌ๋ถ„Hard DeleteSoft Delete๋ฐ์ดํ„ฐ ์‚ญ์ œ ์—ฌ๋ถ€์‹ค์ œ ์‚ญ์ œDB์— ๋‚จ์•„์žˆ์Œ๋ณต๊ตฌ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ถˆ๊ฐ€๋Šฅ๊ฐ€๋Šฅ์„ฑ๋Šฅ ์˜ํ–ฅ๋น ๋ฆ„์ผ๋ถ€ ์„ฑ๋Šฅ ๋ถ€๋‹ด๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์˜์กด์„ฑ ๋ฐ์ดํ„ฐ ์‚ญ์ œ ํ•„์š”์œ ์ง€ ๊ฐ€๋Šฅ์‚ฌ์šฉ ์‚ฌ๋ก€๋ณด์•ˆ์ด ์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ๊ธฐ๋ก ๋ณด์กด์ด ์ค‘์š”ํ•œ ๊ฒฝ์šฐ2. Soft Delete ๊ตฌํ˜„ ๋ฐฉ์‹1๏ธโƒฃ `is_deleted` ํ”Œ๋ž˜๊ทธ ํ™œ์šฉ์‚ญ์ œ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” Boolean ์ปฌ๋Ÿผ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹.ALTER TABLE users ADD ..
[250226] ๋ฏธ๋‹ˆ ํŒ€ํ”Œ 10์กฐ ๊ณผ์ œ - ์งœ์š”์งœ์š” ์—ฌํ–‰ ํ”Œ๋ž˜๋„ˆ
[SPARTA] AI 9 (24.11 ~ 25.03) ๐Ÿƒ๐Ÿป‍โ™€๏ธ/๋ณธ์บ ๊ณผ์ œ ๐Ÿ“
์ฝ”๋“œ์— ์šฐ์—ฌ๊ณก์ ˆ์ด ๋งŽ์•˜๋˜ใ… ใ…  ํŠœํ„ฐ๋‹˜์˜ ์ด๋„์‹ฌ์ด ์—†์—ˆ๋‹ค๋ฉด ์™„์„ฑ๋˜์ง€ ์•Š์•˜์„~์šฐ๋ฆฌ 10์กฐ์˜ ์—ฌํ–‰ํ”Œ๋ž˜๋„ˆ ๊ณผ์ œ ใ… ใ… ํ•จ๊ป˜ํ•œ 10์กฐ ํŒ€์›๋“ค ๊ณ ์ƒ ๋งŽ์•˜์Œ๋‹ค~ ์ด ์ž๋ฆฌ๋ฅผ ๋นŒ์–ด์„œ ์œ ์„ ํŠœํ„ฐ๋‹˜๊ป˜ ๊ฐ์‚ฌ์ธ์‚ฌ๋ฅผ,,, (feat. ๊ฒฝํŠœ)๋”๋ณด๊ธฐhttps://teamsparta.notion.site/ZZA-ZZA-1852dc3ef51481a2902cee2aaf691b4c
[250226] ์ž„๋ฒ ๋”ฉ(Embedding)์ด๋ž€
AI ๐Ÿค–/DL ๐Ÿง 
์ž„๋ฒ ๋”ฉ(Embedding)์ด๋ž€?1. ์ž„๋ฒ ๋”ฉ(Embedding) ์ •์˜์ž„๋ฒ ๋”ฉ(Embedding)์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณ ์ •๋œ ํฌ๊ธฐ์˜ ๋ฒกํ„ฐ ๊ณต๊ฐ„(Vector Space) ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.ํŠนํžˆ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ(NLP) ๋ฐ ์ถ”์ฒœ ์‹œ์Šคํ…œ, ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ๋“ฑ์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋œ๋‹ค. ์ฃผ๋กœ ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ ์ €์ฐจ์› ์—ฐ์† ๊ณต๊ฐ„์œผ๋กœ ๋งคํ•‘ํ•˜๋Š” ๊ณผ์ •์„ ์˜๋ฏธํ•œ๋‹ค.๐Ÿ”น ํ•ต์‹ฌ ๊ฐœ๋…๊ณ ์ฐจ์› → ์ €์ฐจ์› ๋ณ€ํ™˜: ๋‹จ์–ด, ๋ฌธ์žฅ, ์ด๋ฏธ์ง€ ๋“ฑ์„ ์ˆ˜์น˜ ๋ฒกํ„ฐ(embedding vector) ๋กœ ๋ณ€ํ™˜์œ ์‚ฌ์„ฑ ๋ณด์กด: ์˜๋ฏธ์ ์œผ๋กœ ๋น„์Šทํ•œ ๋ฐ์ดํ„ฐ๋Š” ๋ฒกํ„ฐ ๊ณต๊ฐ„์—์„œ๋„ ๊ฐ€๊น๊ฒŒ ์œ„์น˜ํ•™์Šต ๊ธฐ๋ฐ˜ ๋ณ€ํ™˜: ๋‹จ์ˆœ ๋งคํ•‘์ด ์•„๋‹ˆ๋ผ ํ•™์Šต์„ ํ†ตํ•ด ์˜๋ฏธ ์žˆ๋Š” ๋ณ€ํ™˜์„ ์ˆ˜ํ–‰2. ์ž„๋ฒ ๋”ฉ์˜ ํ™œ์šฉ ์‚ฌ๋ก€1) ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ(NLP)ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒกํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.๋Œ€ํ‘œ์ ์ธ ๋ฐฉ..