AutoML ํ…์ŠคํŠธ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ Gemini

์ด ํŽ˜์ด์ง€์—์„œ๋Š” AutoML ํ…์ŠคํŠธ ์‚ฌ์šฉ์ž๊ฐ€ Gemini ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋„๋ก AutoML ํ…์ŠคํŠธ์™€ Gemini๋ฅผ ๋น„๊ตํ•ด์„œ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์‚ฌ๋ก€์— ์ ์šฉ๋˜๋Š” ํ…Œ์ด๋ธ”์„ ํ™•์ธํ•˜๊ณ  ์›Œํฌํ”Œ๋กœ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๊ฒ€ํ† ํ•˜์„ธ์š”.

์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ

๋‹ค์Œ ์ฐจ์ด์ ์€ ๋ชจ๋“  Gemini ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ž‘์—… AutoML ํ…์ŠคํŠธ Gemini
ํ•™์Šต ๋ฐ์ดํ„ฐ ํ˜•์‹ ํ…์ŠคํŠธ ํ•ญ๋ชฉ ์ถ”์ถœ์„ ์ œ์™ธํ•œ CSV ๋˜๋Š” JSON Lines ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ธ๋ผ์ธ ํ…์ŠคํŠธ ์Šค๋‹ˆํŽซ์„ ํฌํ•จํ•˜๊ฑฐ๋‚˜ TXT ์œ ํ˜•์˜ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ญ๋ชฉ ์ถ”์ถœ์€ JSON Lines ํŒŒ์ผ๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. JSON Line ํŒŒ์ผ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ์˜ ๊ฐ ์ค„์€ ๋‹จ์ผ ํ•™์Šต ์ƒ˜ํ”Œ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. Gemini ๋ชจ๋ธ ๋ฏธ์„ธ ์กฐ์ •์„ ์œ„ํ•œ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ์€ Cloud Storage์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ ์„ธํŠธ ์ฃผ์„ ์ฃผ์„์€ AnnotationSet ๊ฐ์ฒด๋กœ ๊ทธ๋ฃนํ™”๋ฉ๋‹ˆ๋‹ค. ๊ฐ™์€ ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ๋‹ค๋ฅธ ์ฃผ์„ ์„ธํŠธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์„ธํŠธ ์ฃผ์„์€ Gemini์— ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ ์„ธํŠธ ๊ฐ€์ ธ์˜ค๊ธฐ CSV์˜ ์„ ํƒ์  ์—ด์—์„œ, ๋ฐ์ดํ„ฐ์™€ ๋™์ผํ•œ ํ–‰์—์„œ ๋˜๋Š” ๋ฐ์ดํ„ฐ์™€ ๋™์ผํ•œ JSON ๊ฐ์ฒด์˜ JSON Lines์—์„œ ํƒœ๊ทธ๋กœ ML ์‚ฌ์šฉ ๊ฐ’์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ML ์‚ฌ์šฉ ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ•™์Šต, ํ…Œ์ŠคํŠธ, ๊ฒ€์ฆ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ๋ถ„ํ• ๋ฉ๋‹ˆ๋‹ค.
๊ฐ์ • ๋ถ„์„์˜ ๊ฒฝ์šฐ CSV ํŒŒ์ผ์—์„œ ๊ฐ ํ–‰์˜ ๋งˆ์ง€๋ง‰ ์—ด์— ๊ฐ์ • ์ตœ๋Œ“๊ฐ’์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
ํ•™์Šต ๋ฐ ๊ฒ€์ฆ์„ ์œ„ํ•ด ํ•˜๋‚˜์”ฉ 2๊ฐœ์˜ ๊ฐœ๋ณ„ JSONL ํŒŒ์ผ์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์ฆ ํŒŒ์ผ์€ ์„ ํƒ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ๊ฒ€์ฆ ํŒŒ์ผ์—๋Š” 10-256๊ฐœ์˜ ์˜ˆ์‹œ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
์Šคํ† ๋ฆฌ์ง€ ๋น„์šฉ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ํ”„๋กœ์ ํŠธ์˜ Cloud Storage์— ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค. ์ด ์Šคํ† ๋ฆฌ์ง€์—๋Š” ์š”๊ธˆ์ด ๋ถ€๊ณผ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ํ”„๋กœ์ ํŠธ์˜ Cloud Storage์— ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค. ์ด ์Šคํ† ๋ฆฌ์ง€์—๋Š” ์š”๊ธˆ์ด ๋ถ€๊ณผ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ
๋ฐ์ดํ„ฐ ๋ผ๋ฒจ ์ง€์ • URL์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ผ๋ฒจ๋ง ์•ˆ๋‚ด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์„์€ Dataset ๊ฐ์ฒด์˜ ์ผ๋ถ€์ด๋ฉฐ API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์กฐ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. Gemini์—๋Š” ๋ฐ์ดํ„ฐ ๋ผ๋ฒจ๋ง์ด ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋ชจ๋ธ ๋ฐฐํฌ ์˜จ๋ผ์ธ ์˜ˆ์ธก์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ชจ๋ธ์„ ์—”๋“œํฌ์ธํŠธ์— ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์ธก์„ ์š”์ฒญํ•˜๋ ค๋ฉด predict() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. Gemini๋ฅผ ๋ฏธ์„ธ ์กฐ์ •ํ•œ ํ›„ ๋ชจ๋ธ์ด Vertex AI Model Registry์— ์ €์žฅ๋˜๊ณ  ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. Python SDK, REST API, ์ฝ˜์†”์„ ์‚ฌ์šฉํ•ด์„œ ์กฐ์ •๋œ ๋ชจ๋ธ์˜ ์˜จ๋ผ์ธ ์˜ˆ์ธก์„ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์กฐ์ •๋œ ์—”๋“œํฌ์ธํŠธ๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  generate_content() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์˜ˆ์ธก์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœ์ ํŠธ ๋ฒˆํ˜ธ ๋˜๋Š” ํ”„๋กœ์ ํŠธ ID ์‚ฌ์šฉ project-number์™€ project-id ๋ชจ๋‘ Vertex AI์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. Gemini๋Š” project-id๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
์‹ ๋ขฐ๋„ ์ ์ˆ˜ AutoML ํ…์ŠคํŠธ๋Š” ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. Gemini๋Š” ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

API ์‚ฌ์šฉ์ž

API์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Vertex AI ์ƒ์„ฑํ˜• AI ์กฐ์ • API ์ฐธ๊ณ  ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ž‘์—… ๋˜๋Š” ํ•ญ๋ชฉ AutoML ํ…์ŠคํŠธ Gemini
๋ชจ๋ธ ์ƒ์„ฑ ํ•™์Šต ์ž‘์—…์„ ๋ฐ˜ํ™˜ํ•˜๋Š” TrainingPipeline ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์กฐ์ • ์ž‘์—…์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ง€๋„ ๋ฏธ์„ธ ์กฐ์ • ์ž‘์—…์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ API ๋ฆฌ์†Œ์Šค๋งˆ๋‹ค ์„œ๋กœ ๋‹ค๋ฅธ API ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Python SDK, REST API, ์ฝ˜์†”์„ ์‚ฌ์šฉํ•ด์„œ Gemini์— ๋Œ€ํ•ด ์ง€๋„ ๋ฏธ์„ธ ์กฐ์ • ์ž‘์—…์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ์ธก ์š”์ฒญ ์—”๋“œํฌ์ธํŠธ ๋ฆฌ์†Œ์Šค์—์„œ predict() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์˜ˆ์ธก์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ์กฐ์ •๋œ ์—”๋“œํฌ์ธํŠธ๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  generate_content ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์˜ˆ์ธก์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
์˜จ๋ผ์ธ ์˜ˆ์ธก ์—”๋“œํฌ์ธํŠธ ๋‹ค์Œ์—์„œ REGION์„ ์˜ˆ์ธก ๋ชจ๋ธ์ด ์žˆ๋Š” ๋ฆฌ์ „์œผ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.
REGION-aiplatform.googleapis.com. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
us-central1-aiplatform.googleapis.com
๋‹ค์Œ ์œ„์น˜์—์„œ TUNING_JOB_REGION์„ ์กฐ์ • ์ž‘์—…์ด ์‹คํ–‰๋˜๋Š” ๋ฆฌ์ „์œผ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.
TUNING_JOB_REGION-aiplatform.googleapis.com. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
us-central1-aiplatform.googleapis.com
์Šคํ‚ค๋งˆ ๋ฐ ์ •์˜ ํŒŒ์ผ ์ผ๋ถ€ ์š”์ฒญ ๋ฐ ์‘๋‹ต ํ•„๋“œ๋Š” ์Šคํ‚ค๋งˆ ๋ฐ ์ •์˜ ํŒŒ์ผ์— ์ •์˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ํ˜•์‹์€ ์‚ฌ์ „ ์ •์˜๋œ ์Šคํ‚ค๋งˆ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •์˜๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ API์™€ ๋ฐ์ดํ„ฐ ํ˜•์‹์— ์œ ์—ฐ์„ฑ์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์š”์ฒญ ๋ณธ๋ฌธ, ๋ชจ๋ธ ๋งค๊ฐœ๋ณ€์ˆ˜, ์‘๋‹ต ๋ณธ๋ฌธ์€ ์กฐ์ •๋˜์ง€ ์•Š์€ Gemini ๋ชจ๋ธ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์ƒ˜ํ”Œ์„ ์ฐธ์กฐํ•˜์„ธ์š”.
ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ aiplatform.googleapis.com aiplatform.googleapis.com
๋ฆฌ์ „ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ ํ•„์ˆ˜. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
us-central1-aiplatform.googleapis.com
ํ•„์ˆ˜. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
us-central1-aiplatform.googleapis.com

๋‹ค์Œ ๋‹จ๊ณ„