๐Ÿ’ป ๊ฐœ๋ฐœ ์ผ์ง€

`launch` : ์ž‘์—… ์‹คํ–‰ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š์Œ`async` : ์ฝ”๋ฃจํ‹ด์œผ๋กœ๋ถ€ํ„ฐ ๊ฒฐ๊ด๊ฐ’์„ ์ˆ˜์‹  → Deferred ๊ฐ์ฒด ๋ฐ˜ํ™˜ async ์‚ฌ์šฉํ•ด ๊ฒฐ๊ณผ๊ฐ’ ์ˆ˜์‹ ํ•˜๊ธฐasync ์‚ฌ์šฉํ•ด Deferred ๋งŒ๋“ค๊ธฐfun CoroutineScope.async( context: CoroutineContext = EmptyCoroutineContext, // CoroutineDispatcher ์„ค์ • ๊ฐ€๋Šฅ start: CoroutineStart = CoroutineStart.DEFAULT, // ์ง€์—ฐ์‹œ์ž‘ ์„ค์ • ๊ฐ€๋Šฅ block: suspend CoroutineScope.() -> T): DeferredDeferred์ฝ”๋ฃจํ‹ด์„ ์ถ”์ƒํ™”ํ•œ ๊ฐ์ฒด์ฝ”๋ฃจํ‹ด์œผ๋กœ๋ถ€ํ„ฐ ์ƒ์„ฑ๋œ ๊ฒฐ๊ณผ๊ฐ’์„ ๊ฐ์‹ธ๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ€์ง๊ฒฐ๊ณผ๊ฐ’์˜ ํƒ€์ž…์€ ์ œ๋„ค๋ฆญ ํƒ€์ž…  a..
๐Ÿ’ก OpenAI Embedding์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ณผ ๊ฐ€์žฅ ์œ ์‚ฌํ•œ ๋ฌธ์„œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•œ๋‹ค.โœ”๏ธ ์ด์ „ ๋ฒ„์ „: https://doteloper.tistory.com/114Flow ๊ฐœ๋ฐœํ™˜๊ฒฝ๋ชจ๋ธ: OpenAI Embedding - text-embedding-3-small๋ฒกํ„ฐ DB: elastic searchflask / python3์ฐธ๊ณ : openai cookbookEmbedding ์ƒ์„ฑopenai package๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Embedding ๊ฐ’ ์ƒ์„ฑ (document)client = OpenAI( api_key=os.getenv("OPENAI_API_KEY"))def get_embedding(text, model="text-embedding-3-small"): text = text.r..
๐Ÿ’ก SNS ๋กœ๊ทธ์ธ(์นด์นด์˜ค)์„ ์œ„ํ•œ Rest API ์ƒ์„ฑโžก๏ธ 1ํƒ„ ๋ฐ”๋กœ๊ฐ€๊ธฐ: ์„ค์ • ๋ฐ ํšŒ์›๊ฐ€์ž…โžก๏ธ 2ํƒ„ ๋ฐ”๋กœ๊ฐ€๊ธฐ: JWT ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์› ์ •๋ณด ์กฐํšŒโžก๏ธ 3ํƒ„ ๋ฐ”๋กœ๊ฐ€๊ธฐ: Refresh TokenSNS ๋กœ๊ทธ์ธ Flowํ•ด๋‹น ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๋ชจ๋ฐ”์ผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ Rest API๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค.Client SDK์—์„œ ์นด์นด์˜ค ๋กœ๊ทธ์ธ ์™„๋ฃŒ ํ›„ 3rd๋กœ๋ถ€ํ„ฐ ์ „ํ•ด๋ฐ›๋Š” accesToken์„ Server์— ์ „๋‹ฌํ•œ๋‹ค.ํ•ด๋‹น AccessToken์œผ๋กœ ๋‹ค์‹œํ•œ๋ฒˆ 3rd์— ์กฐํšŒํ•˜์—ฌ, ํšŒ์› ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.์กฐํšŒํ•œ ํšŒ์› ์ •๋ณด๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ, ๋ฐ”๋กœ ๋กœ๊ทธ์ธ ๋กœ์ง์„ ์‹คํ–‰ํ•˜์—ฌ ์„ฑ๊ณต ์‘๋‹ต์„ ๋ณด๋‚ธ๋‹ค.์กฐํšŒํ•œ ํšŒ์› ์ •๋ณด๊ฐ€ ์—†์„ ๊ฒฝ์šฐ, ํšŒ์› ์ •๋ณด๋ฅผ ์ƒˆ๋กœ ์ €์žฅ(ํšŒ์›๊ฐ€์ž…)ํ•˜๊ณ  ๋กœ๊ทธ์ธ๊นŒ์ง€ ์„ฑ๊ณต์‹œ์ผœ ์‘๋‹ต์„ ๋ณด๋‚ธ๋‹ค.๊ฐœ๋ฐœ ํ™˜๊ฒฝSpring Boot 3.x.x / Ko..
๐Ÿ’ก SpringMail์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์ผ ์ „์†ก ๊ตฌํ˜„ GitHub - jeongum/spring-mail Contribute to jeongum/spring-mail development by creating an account on GitHub. github.com ๊ฐœ๋ฐœํ™˜๊ฒฝ SpringBoot 3.1.4 kotlin / java 17 build.gradle.kts ์„ค์ • ์‚ฌ์šฉํ•  springframework mail ์„ค์ • ์ถ”๊ฐ€ implementation("org.springframework.boot:spring-boot-starter-mail") application.yml ์„ค์ • ๋ฉ”์ผ ์ „์†ก์— ํ•„์š”ํ•œ smtp ์„ค์ • spring: mail: host: smtp.gmail.com port: 587 username:..
์ ์ด
'๐Ÿ’ป ๊ฐœ๋ฐœ ์ผ์ง€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก