Vertex AI๋ ์ ๋ฐ๋์ ์ฌํ์จ ์ธก์ ํญ๋ชฉ๊ณผ ๊ฐ์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ฒฐ์ ํ๋ ๋ฐ ๋์์ด ๋๋ ๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ์ ๊ณตํฉ๋๋ค. Vertex AI๋ ํ ์คํธ ์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๊ณ์ฐํฉ๋๋ค.
๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ ์ฌ์ฉ ๋ฐฉ๋ฒ
๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ํ ์คํธ ์ธํธ์์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ์ ๋์ ์ผ๋ก ์ธก์ ํฉ๋๋ค. ์ด๋ฌํ ์ธก์ ํญ๋ชฉ์ ํด์ํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋น์ฆ๋์ค ๋์ฆ์ ๋ชจ๋ธ์ด ํด๊ฒฐํ๋๋ก ํ์ตํ ๋ฌธ์ ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. ์๋ฅผ ๋ค์ด ๊ฑฐ์ง์์ฑ๋ณด๋ค ๊ฑฐ์ง์์ฑ์ ํจ๋ฌ๋ ์ด์ (toleration)์ด ๋ ๋ฎ์ ์๋ ์๊ณ ๊ทธ ๋ฐ๋์ผ ์๋ ์์ต๋๋ค. ์ด๋ฌํ ์ ํ์ ์ง๋ฌธ์ ์ง์คํด์ผ ํ ์ธก์ ํญ๋ชฉ์ ์ํฅ์ ์ค๋๋ค.
๋ชจ๋ธ์ ๋ฐ๋ณต์ ํตํด ์ฑ๋ฅ์ ๊ฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ชจ๋ธ์ ๋ฐ๋ณต์ ์ฐธ์กฐํ์ธ์.
Vertex AI์์ ๋ฐํํ๋ ํ๊ฐ ์ธก์ ํญ๋ชฉ
Vertex AI๋ ์ ๋ฐ๋, ์ฌํ์จ, ์ ๋ขฐ๋ ๊ธฐ์ค์ ๊ณผ ๊ฐ์ ์ฌ๋ฌ ๊ฐ์ง ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ฐํํฉ๋๋ค. Vertex AI๊ฐ ๋ฐํํ๋ ์ธก์ ํญ๋ชฉ์ ๋ชจ๋ธ์ ๋ชฉํ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์๋ฅผ ๋ค์ด Vertex AI๋ ์ด๋ฏธ์ง ๊ฐ์ฒด ๊ฐ์ง ๋ชจ๋ธ๊ณผ ๋น๊ตํด์ ์ด๋ฏธ์ง ๋ถ๋ฅ ๋ชจ๋ธ์ ๋ํ ๋ค์ํ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ์ ๊ณตํฉ๋๋ค.
Cloud Storage ์์น์์ ๋ค์ด๋ก๋ํ ์ ์๋ ์คํค๋ง ํ์ผ์ Vertex AI๊ฐ ๊ฐ ๋ชฉํ์ ์ ๊ณตํ๋ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๊ฒฐ์ ํฉ๋๋ค. ๋ค์ ์คํค๋ง ํ์ผ์ ๋์์ ๋ถ๋ฅ๋ฅผ ์ํ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ์ค๋ช ํฉ๋๋ค.
๋ค์ Cloud Storage ์์น์์ ์คํค๋ง ํ์ผ์ ๋ณด๊ณ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
gs://google-cloud-aiplatform/schema/modelevaluation/
- AuPRC: ํ๊ท ์ ๋ฐ๋๋ผ๊ณ ๋ ํ๋ ์ ๋ฐ๋-์ฌํ์จ(PR) ๊ณก์ ์๋์ ๋ฉด์ ์ ๋๋ค. ์ด ๊ฐ์ ๋ฒ์๋ 0๋ถํฐ 1๊น์ง์ด๋ฉฐ ๊ฐ์ด ํด์๋ก ๋ชจ๋ธ์ ํ์ง์ด ๋์ต๋๋ค.
- ์ ๋ขฐ๋ ๊ธฐ์ค์ : ๋ฐํํ ์์ธก์ ๊ฒฐ์ ํ๋ ์ ๋ขฐ๋ ์ ์์ ๋๋ค. ๋ชจ๋ธ์ด ์ด ๊ฐ ์ด์์ธ ์์ธก์ ๋ฐํํฉ๋๋ค. ์ ๋ขฐ๋ ๊ธฐ์ค์ ์ด ๋์์๋ก ์ ๋ฐ๋๋ ๋์์ง์ง๋ง ์ฌํ์จ์ด ๋ฎ์์ง๋๋ค. Vertex AI๋ ๋ค์ํ ๊ธฐ์ค์ ์ผ๋ก ์ ๋ขฐ๋ ์ธก์ ํญ๋ชฉ์ ๋ฐํํ์ฌ ๊ธฐ์ค์ ์ด ์ ๋ฐ๋์ ์ฌํ์จ์ ๋ฏธ์น๋ ์ํฅ์ ๋ณด์ฌ์ค๋๋ค.
- ์ฌํ์จ: ๋ชจ๋ธ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์์ธกํ ์ด ํด๋์ค์ ์์ธก ๋น์จ์ ๋๋ค. ์ฐธ์์ฑ๋ฅ ์ด๋ผ๊ณ ๋ ํฉ๋๋ค.
- Precision: ๋ชจ๋ธ์ด ์์ฑํ ์ฌ๋ฐ๋ฅธ ๋ถ๋ฅ ์์ธก์ ๋น์จ์ ๋๋ค.
- F1 ์ ์: ์ ๋ฐ๋์ ์ฌํ์จ์ ์กฐํ ํ๊ท ์ ๋๋ค. F1์ ์ ๋ฐ๋์ ์ฌํ์จ ์ฌ์ด์ ๊ท ํ์ ์ฐพ๊ณ ์๊ณ ํด๋์ค ๋ถํฌ๊ฐ ๊ท ๋ฑํ์ง ์์ ๋ ์ ์ฉํ ์ธก์ ํญ๋ชฉ์ ๋๋ค.
- ํผ๋ ํ๋ ฌ: ํผ๋ ํ๋ ฌ์ ๋ชจ๋ธ์ด ๊ฒฐ๊ณผ๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์์ธกํ ๋น๋๋ฅผ ๋ณด์ฌ์ค๋๋ค. ์๋ชป ์์ธก๋ ๊ฒฐ๊ณผ์ ๊ฒฝ์ฐ ํ๋ ฌ์๋ ๋ชจ๋ธ์ด ๋์ ์์ธกํ ํญ๋ชฉ์ด ํ์๋ฉ๋๋ค. ํผ๋ ํ๋ ฌ์ ํตํด ๋ชจ๋ธ์ ๋ ๊ฒฐ๊ณผ๊ฐ 'ํผ๋'๋๋ ์์น๋ฅผ ํ์ ํ ์ ์์ต๋๋ค.
ํ๊ฐ ์ธก์ ํญ๋ชฉ ๊ฐ์ ธ์ค๊ธฐ
๋ชจ๋ธ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ ์ง๊ณ ์งํฉ๊ณผ ์ผ๋ถ ๋ชฉํ์ ๊ฒฝ์ฐ ํน์ ํด๋์ค ๋๋ ๋ผ๋ฒจ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค. ํน์ ํด๋์ค ๋๋ ๋ผ๋ฒจ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ํ๊ฐ ์ฌ๋ผ์ด์ค๋ผ๊ณ ๋ ํฉ๋๋ค. ๋ค์ ์ฝํ ์ธ ๋ Google Cloud ์ฝ์ ๋๋ API๋ฅผ ์ฌ์ฉํ์ฌ ์ง๊ณ ํ๊ฐ ์ธก์ ํญ๋ชฉ๊ณผ ํ๊ฐ ์ฌ๋ผ์ด์ค๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
Google Cloud ์ฝ์
Google Cloud ์ฝ์์ Vertex AI ์น์ ์์ ๋ชจ๋ธ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
๋ฆฌ์ ๋๋กญ๋ค์ด์์ ๋ชจ๋ธ์ด ์๋ ๋ฆฌ์ ์ ์ ํํฉ๋๋ค.
๋ชจ๋ธ ๋ชฉ๋ก์์ ๋ชจ๋ธ์ ํด๋ฆญํ์ฌ ๋ชจ๋ธ์ ํ๊ฐ ํญ์ ์ฝ๋๋ค.
ํ๊ฐ ํญ์์ ํ๊ท ์ ๋ฐ๋ ๋ฐ ์ฌํ์จ๊ณผ ๊ฐ์ ๋ชจ๋ธ์ ์ง๊ณ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณผ ์ ์์ต๋๋ค.
๋ชจ๋ธ ๋ชฉํ์ ํ๊ฐ ์ฌ๋ผ์ด์ค๊ฐ ์์ผ๋ฉด ์ฝ์์ ๋ผ๋ฒจ ๋ชฉ๋ก์ด ํ์๋ฉ๋๋ค. ๋ค์ ์์์ ๊ฐ์ด ๋ผ๋ฒจ์ ํด๋ฆญํ์ฌ ํด๋น ๋ผ๋ฒจ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณผ ์ ์์ต๋๋ค.
API
ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๊ฐ์ ธ์ค๊ธฐ ์ํ API ์์ฒญ์ ๊ฐ ๋ฐ์ดํฐ ์ ํ ๋ฐ ๋ชฉํ๋ง๋ค ๋์ผํ์ง๋ง ์ถ๋ ฅ์ ์๋ก ๋ค๋ฆ ๋๋ค. ๋ค์ ์ํ์ ๋์ผํ ์์ฒญ์ ํ์ํ์ง๋ง ์๋ต์ ๋ค๋ฆ ๋๋ค.
์ง๊ณ ๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ ๊ฐ์ ธ์ค๊ธฐ
์ง๊ณ ๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ชจ๋ธ ์ ์ฒด์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค. ํน์ ์ฌ๋ผ์ด์ค์ ๋ํ ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ๋ชจ๋ธ ํ๊ฐ ์ฌ๋ผ์ด์ค๋ฅผ ๋์ดํฉ๋๋ค.
์ง๊ณ ๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณด๋ ค๋ฉด projects.locations.models.evaluations.get
๋ฉ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค.
Vertex AI๋ ์ ๋ขฐ๋ ์ธก์ ํญ๋ชฉ์ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค. ๊ฐ ์์๋ ๋ค๋ฅธ confidenceThreshold
๊ฐ(0๋ถํฐ ์์ํ์ฌ 1๊น์ง)์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณด์ฌ์ค๋๋ค. ์ด๋ ๊ฒ ๋ค๋ฅธ ๊ธฐ์ค์ ์ ๋ณด๋ฉด ํด๋น ๊ธฐ์ค์ ์ด ์ ๋ฐ๋์ ์ฌํ์จ๊ณผ ๊ฐ์ ๋ค๋ฅธ ์ธก์ ํญ๋ชฉ์ ๋ฏธ์น๋ ์ํฅ์ ํ์ธํ ์ ์์ต๋๋ค.
์ธ์ด ๋๋ ํ๊ฒฝ์ ๋ํ ํญ์ ์ ํํฉ๋๋ค.
REST
์์ฒญ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- LOCATION: ๋ชจ๋ธ์ด ์ ์ฅ๋ ๋ฆฌ์
- PROJECT: ํ๋ก์ ํธ ID
- MODEL_ID: ๋ชจ๋ธ ๋ฆฌ์์ค์ ID
- PROJECT_NUMBER: ํ๋ก์ ํธ์ ์๋์ผ๋ก ์์ฑ๋ ํ๋ก์ ํธ ๋ฒํธ
- EVALUATION_ID: ๋ชจ๋ธ ํ๊ฐ์ ID(์๋ต์ ํ์๋จ)
HTTP ๋ฉ์๋ ๋ฐ URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
์์ฒญ์ ๋ณด๋ด๋ ค๋ฉด ๋ค์ ์ต์ ์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
curl
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
๋ค์๊ณผ ๋น์ทํ JSON ์๋ต์ด ํ์๋ฉ๋๋ค.
Java
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Java ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Java API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Node.js
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Node.js ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Node.js API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Python์ฉ Vertex AI SDK
Python์ฉ Vertex AI SDK๋ฅผ ์ค์นํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ๋ ๋ฐฉ๋ฒ์ Python์ฉ Vertex AI SDK ์ค์น๋ฅผ ์ฐธ์กฐํ์ธ์. ์์ธํ ๋ด์ฉ์ Python์ฉ Vertex AI SDK API ์ฐธ์กฐ ๋ฌธ์๋ฅผ ํ์ธํ์ธ์.
๋ชจ๋ ํ๊ฐ ์ฌ๋ผ์ด์ค ๋์ด
projects.locations.models.evaluations.slices.list
๋ฉ์๋๋ ๋ชจ๋ธ์ ๋ชจ๋ ํ๊ฐ ์ฌ๋ผ์ด์ค๋ฅผ ๋์ดํฉ๋๋ค. ์ง๊ณ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ํ์ธํ ๋ ๊ฐ์ ธ์ฌ ์ ์๋ ๋ชจ๋ธ์ ํ๊ฐ ID๊ฐ ์์ด์ผ ํฉ๋๋ค.
๋ชจ๋ธ ํ๊ฐ ์ฌ๋ผ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ๋ผ๋ฒจ์์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํ์ธํ ์ ์์ต๋๋ค. value
ํ๋๋ ์ธก์ ํญ๋ชฉ์ ๋ผ๋ฒจ์ ๋ํ๋
๋๋ค.
Vertex AI๋ ์ ๋ขฐ๋ ์ธก์ ํญ๋ชฉ์ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค. ๊ฐ ์์๋ ๋ค๋ฅธ confidenceThreshold
๊ฐ(0๋ถํฐ ์์ํ์ฌ 1๊น์ง)์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณด์ฌ์ค๋๋ค. ์ด๋ ๊ฒ ๋ค๋ฅธ ๊ธฐ์ค์ ์ ๋ณด๋ฉด ํด๋น ๊ธฐ์ค์ ์ด ์ ๋ฐ๋์ ์ฌํ์จ๊ณผ ๊ฐ์ ๋ค๋ฅธ ์ธก์ ํญ๋ชฉ์ ๋ฏธ์น๋ ์ํฅ์ ํ์ธํ ์ ์์ต๋๋ค.
REST
์์ฒญ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- LOCATION: ๋ชจ๋ธ์ด ์๋ ๋ฆฌ์ . ์๋ฅผ ๋ค๋ฉด
us-central1
์ ๋๋ค. - PROJECT: ํ๋ก์ ํธ ID
- MODEL_ID: ๋ชจ๋ธ์ ID
- EVALUATION_ID: ๋์ดํ ํ๊ฐ ์ฌ๋ผ์ด์ค๊ฐ ํฌํจ๋ ๋ชจ๋ธ ํ๊ฐ์ ID
HTTP ๋ฉ์๋ ๋ฐ URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices
์์ฒญ์ ๋ณด๋ด๋ ค๋ฉด ๋ค์ ์ต์ ์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
curl
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices"
PowerShell
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices" | Select-Object -Expand Content
๋ค์๊ณผ ๋น์ทํ JSON ์๋ต์ด ํ์๋ฉ๋๋ค.
Java
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Java ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Java API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Node.js
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Node.js ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Node.js API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Python์ฉ Vertex AI SDK
Python์ฉ Vertex AI SDK๋ฅผ ์ค์นํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ๋ ๋ฐฉ๋ฒ์ Python์ฉ Vertex AI SDK ์ค์น๋ฅผ ์ฐธ์กฐํ์ธ์. ์์ธํ ๋ด์ฉ์ Python์ฉ Vertex AI SDK API ์ฐธ์กฐ ๋ฌธ์๋ฅผ ํ์ธํ์ธ์.
๋จ์ผ ์ฌ๋ผ์ด์ค์ ์ธก์ ํญ๋ชฉ ๊ฐ์ ธ์ค๊ธฐ
๋จ์ผ ์ฌ๋ผ์ด์ค์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ณด๋ ค๋ฉด projects.locations.models.evaluations.slices.get
๋ฉ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ชจ๋ ์ฌ๋ผ์ด์ค๋ฅผ ๋์ดํ ๋ ์ ๊ณต๋๋ ์ฌ๋ผ์ด์ค ID๊ฐ ์์ด์ผ ํฉ๋๋ค. ๋ค์ ์ํ์ ๋ชจ๋ ๋ฐ์ดํฐ ์ ํ ๋ฐ ๋ชฉํ์ ์ ์ฉ๋ฉ๋๋ค.
REST
์์ฒญ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- LOCATION: ๋ชจ๋ธ์ด ์๋ ๋ฆฌ์ . ์๋ฅผ ๋ค๋ฉด us-central1์ ๋๋ค.
- PROJECT: ํ๋ก์ ํธ ID
- MODEL_ID: ๋ชจ๋ธ์ ID
- EVALUATION_ID: ๊ฒ์ํ ํ๊ฐ ์ฌ๋ผ์ด์ค๊ฐ ํฌํจ๋ ๋ชจ๋ธ ํ๊ฐ์ ID
- SLICE_ID: ๊ฐ์ ธ์ฌ ํ๊ฐ ์ฌ๋ผ์ด์ค์ ID
- PROJECT_NUMBER: ํ๋ก์ ํธ์ ์๋์ผ๋ก ์์ฑ๋ ํ๋ก์ ํธ ๋ฒํธ
- EVALUATION_METRIC_SCHEMA_FILE_NAME:
classification_metrics_1.0.0
๊ณผ ๊ฐ์ด ๋ฐํํ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ์ ์ํ๋ ์คํค๋ง ํ์ผ์ ์ด๋ฆ
HTTP ๋ฉ์๋ ๋ฐ URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID
์์ฒญ์ ๋ณด๋ด๋ ค๋ฉด ๋ค์ ์ต์ ์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
curl
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID"
PowerShell
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID" | Select-Object -Expand Content
๋ค์๊ณผ ๋น์ทํ JSON ์๋ต์ด ํ์๋ฉ๋๋ค.
Java
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Java ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Java API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Node.js
์ด ์ํ์ ์ฌ์ฉํด ๋ณด๊ธฐ ์ ์ Vertex AI ๋น ๋ฅธ ์์: ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ์ Node.js ์ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์. ์์ธํ ๋ด์ฉ์ Vertex AI Node.js API ์ฐธ๊ณ ๋ฌธ์๋ฅผ ์ฐธ์กฐํ์ธ์.
Vertex AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
Python์ฉ Vertex AI SDK
Python์ฉ Vertex AI SDK๋ฅผ ์ค์นํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ๋ ๋ฐฉ๋ฒ์ Python์ฉ Vertex AI SDK ์ค์น๋ฅผ ์ฐธ์กฐํ์ธ์. ์์ธํ ๋ด์ฉ์ Python์ฉ Vertex AI SDK API ์ฐธ์กฐ ๋ฌธ์๋ฅผ ํ์ธํ์ธ์.
๋ชจ๋ธ ๋ฐ๋ณต ํ์ต
๋ชจ๋ธ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋ชจ๋ธ์ด ๊ธฐ๋์ ๋ฏธ์น์ง ๋ชปํ๋ ๊ฒฝ์ฐ ๋ชจ๋ธ์ ๋๋ฒ๊น ํ๊ธฐ ์ํ ์์์ ์ ์ ๊ณตํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ ๋ฐ๋/์ฌํ์จ ์ ์๊ฐ ๋ฎ๋ค๋ฉด ๋ชจ๋ธ์ ํ์ต ๋ฐ์ดํฐ๊ฐ ๋ ๋ง์ด ํ์ํ๊ฑฐ๋ ๋ผ๋ฒจ์ด ์ผ๊ด๋์ง ์์ ๊ฒฝ์ฐ์ผ ์ ์์ต๋๋ค. ์ ๋ฐ๋์ ์ฌํ์จ์ด ์๋ฒฝํ๋ค๋ฉด ํ ์คํธ ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ์ฌ์์ ์์ธกํ ์ ์๊ณ ์ผ๋ฐํ๊ฐ ์ ๋์ง ์๋ ๊ฒฝ์ฐ์ผ ์ ์์ต๋๋ค.
ํ์ต ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ณตํ๊ณ ์ ๋ชจ๋ธ์ ๋ง๋ค ์ ์์ต๋๋ค. ์ ๋ชจ๋ธ์ ๋ง๋ ํ์๋ ๊ธฐ์กด ๋ชจ๋ธ๊ณผ ์ ๋ชจ๋ธ ๊ฐ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ๋น๊ตํ ์ ์์ต๋๋ค.
๋ค์ ๊ถ์ฅ์ฌํญ์ ๋ถ๋ฅ ๋๋ ๊ฐ์ง ๋ชจ๋ธ๊ณผ ๊ฐ์ ํญ๋ชฉ์ ๋ผ๋ฒจ์ ์ง์ ํ๋ ๋ชจ๋ธ์ ๊ฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
- ํ์ต ๋ฐ์ดํฐ์ ์์๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ๋์ฑ ๊ด๋ฒ์ํ ์์๋ฅผ ์ถ๊ฐํด ๋ณด์ธ์. ์์ธํ ์๋ด๋ ๋ฐ์ดํฐ ์ค๋น๋ฅผ ์ฐธ์กฐํ์ธ์.
- ์์๊ฐ ๋ง์ง ์์ ํด๋์ค๋ ๋ผ๋ฒจ์ ์ญ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์์๊ฐ ์ถฉ๋ถํ์ง ์์ผ๋ฉด ๋ชจ๋ธ์ด ์ด๋ฌํ ํด๋์ค ๋๋ ๋ผ๋ฒจ์ ๋ํด ์ผ๊ด๋๊ณ ํ์คํ๊ฒ ์์ธกํ ์ ์์ต๋๋ค.
- ๋จธ์ ์ ํด๋์ค ๋๋ ๋ผ๋ฒจ์ ์ด๋ฆ์ ํด์ํ ์ ์์ผ๋ฉฐ ์๋ฅผ ๋ค์ด 'door' ๋ฐ 'door_with_knob' ์ฌ์ด์ ๋ฏธ๋ฌํ ์ฐจ์ด๋ฅผ ์ดํดํ์ง ๋ชปํฉ๋๋ค. ๋จธ์ ์ด ์ด๋ฌํ ๋ฏธ๋ฌํ ์ฐจ์ด๋ฅผ ์ธ์ํ ์ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
- ์ฐธ์์ฑ, ์ฐธ์์ฑ์ ์์๋ฅผ ๋ ๋ง์ด ์ถ๊ฐํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ฐํฉ๋๋ค. ํนํ ๋ชจ๋ธ ํผ๋ ์ํ๋ฅผ ์ํด ๊ฒฐ์ ๊ฒฝ๊ณ์ ๊ฐ๊น์ด ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- ์์ฒด ๋ฐ์ดํฐ ๋ถํ (ํ์ต, ๊ฒ์ฆ, ํ ์คํธ)์ ์ง์ ํ์ธ์. Vertex AI๋ ํญ๋ชฉ์ ๊ฐ ์ธํธ์ ๋ฌด์์๋ก ํ ๋นํฉ๋๋ค. ๋ฐ๋ผ์ ํ์ต ๋ฐ ๊ฒ์ฆ ์ธํธ์ ๊ฑฐ์ ๋น์ทํ ํญ๋ชฉ์ ํ ๋นํ๊ฒ ๋๋ฉด ๊ณผ์ ํฉ์ด ๋ฐ์ํ์ฌ ํ ์คํธ ์ธํธ์ ์ฑ๋ฅ์ด ์ ํ๋ ์ ์์ต๋๋ค. ์์ฒด ๋ฐ์ดํฐ ๋ถํ ์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ AutoML ๋ชจ๋ธ์ ๋ฐ์ดํฐ ๋ถํ ์ ๋ณด๋ฅผ ์ฐธ์กฐํ์ธ์.
- ๋ชจ๋ธ์ ํ๊ฐ ์ธก์ ํญ๋ชฉ์ ํผ๋ ํ๋ ฌ์ด ํฌํจ๋ ๊ฒฝ์ฐ ๋ชจ๋ธ์ด ๋ ๋ผ๋ฒจ์ ํผ๋ํ๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ ๋ชจ๋ธ์ด ์ค์ ๋ผ๋ฒจ๋ณด๋ค ํน์ ๋ผ๋ฒจ์ ํจ์ฌ ๋ ๋ง์ด ์์ธกํฉ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๊ฒํ ํ๊ณ ์์์์ ๋ผ๋ฒจ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ง์ ๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
- ํ์ต ์๊ฐ์ด ์งง์๋ค๋ฉด(๋ฎ์ ์ต๋ ๋ ธ๋ ์๊ฐ ์) ๋ ๊ธด ์๊ฐ(๋์ ์ต๋ ๋ ธ๋ ์๊ฐ ์) ๋์ ํ์ตํ๋๋ก ํ์ฉํ์ฌ ๊ณ ํ์ง ๋ชจ๋ธ์ ์ป์ ์ ์์ต๋๋ค.