#1 ๊ฐ์
#1-1 ์ฃผ์
AI๋ก ์ด๋๊น์ง ๋ง๋ค ์ ์์๊น? Gemini, Vertex AI ๋ฑ Google์ ์ต์ AI ๊ธฐ์ ์ ์ง์ ํ์ฉํด๋ณด๋ฉฐ ์ค์ ๊ฒฝํ์ ์๋ 200๋ช ๊ท๋ชจ ํธ์ฆ์จ ์ด๋ฒคํธ
GDG(Google Developer Groups)์์ ์ฃผ์ตํ๋ ์ด๋ฒคํธ๋ค. ์ฃผ๋์ด ๊ฐ๋ฐ์๋ฅผ ์ํ AI ํ์ฉ๋ฒ์, ํ๋ก๊ทธ๋จ ๋ณ๋ก ์ฐ์ฌ(์๋์ด ๊ฐ๋ฐ์)์ ํจ๊ป ์ค์ตํ๋ค.
#1-2 ๋ ์ง ๋ฐ ์ฅ์
์ผ์: 2026-05-09 12:30 ~ 18:00
์ฅ์: ์๊ฐ๋ํ๊ต ์ ํ์๊ด J118ํธ
#1-3 ๋งํฌ ๋ชจ์
์ฝํผ๋ฐ์ค ์๊ฐ ํ์ด์ง - ๊ณต์ ์ฌ์ดํธ
์ฝํผ๋ฐ์ค ์๊ฐ ํ์ด์ง - ์ด๋ฒคํฐ์ค
#1-4 ํ๋ก๊ทธ๋จ
![]() |
![]() |
![]() |
![]() |
![]() |
์๊ฐ ๋ณ๋ก 3๊ฐ์ ์ธ์ ์ด ์๊ณ , ๊ณต๊ฐ ๋ณ๋ก 4๊ฐ์ ๋ฐฉ์ด ์๋ค. ๋ฐฉ๋ง๋ค ์ธ์ ํ๋์ ํ๋์ ํ๋ก๊ทธ๋จ์ด ์งํ๋๋ฏ๋ก, ์ด 12๊ฐ์ ํ๋ก๊ทธ๋จ์ด ์งํ๋ ๊ฒ์ด๋ค. ์ฐธ๊ฐ์๋ ์ธ์ ๋ง๋ค ์ด๋ค ๋ฐฉ์ ์ ์ฅํ ์ง ๊ฒฐ์ ํด์ผ ํ๋ค. ๋ด๊ฐ ์ ํํ ํ๋ก๊ทธ๋จ 3๊ฐ์ง๋ ์๋์ ๊ฐ๋ค.
- [์ธ์ 1] 5์๋ถํฐ ๊ณผ์ ๋ ์์ด์ ํธ์๊ฒ ๋งก๊ธฐ๊ณ ๋ํ์ํ ์ฆ๊ฒจ๋ณด๊ธฐ (feat.Kotlin) (#3-1)
- [์ธ์ 2] ๋จ๊ธฐ/์ฅ๊ธฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํด ๊น๋จน์ง ์๋ ๋๋ง์ AI ํ์ต ์ฑ๋ด ๋ง๋ค๊ธฐ (#3-2)
- [์ธ์ 3] ๋ด GitHub ํ๋ก์ ํธ ์ ์ฅ์๋ฅผ ๋ถ์ํ๊ณ ์ ๋ฆฌํ๋ AI ์์ด์ ํธ ๋ง๋ค๊ธฐ (#3-3)
#2 Gemini API Key ๋ฐ๊ธ & ๋ฑ๋ก
#2-1 ๋ฐ๊ธ
#3์ ์๋ ํ๋ก๊ทธ๋จ ์ ๋ถ์ Gemini๊ฐ ์ฌ์ฉ๋๋ค. ์ด๋ฅผ ์ํ API Key๋ฅผ ๋จผ์ ๋ฐ๊ธํด์ผ ํ๋ค.
- ์ฌ๊ธฐ์ ์ ์ํ์ฌ ๊ตฌ๊ธ ๋ก๊ทธ์ธ
- [API ํค ๋ง๋ค๊ธฐ] ํด๋ฆญ
- [๊ฐ์ ธ์จ ํ๋ก์ ํธ ์ ํ] - [ํ๋ก์ ํธ ๋ง๋ค๊ธฐ] - ์ํ๋ ์ด๋ฆ์ ์ ๋ ฅ ํ [ํ๋ก์ ํธ ๋ง๋ค๊ธฐ]
- [ํค ๋ง๋ค๊ธฐ] ํด๋ฆญ
- API ํค๋ฅผ ๋ณต์ฌํ์ฌ ๋ฉ๋ชจ์ฅ์ ๋ถ์ฌ๋ฃ์ด๋๊ธฐ
#2-2 ํ๊ฒฝ ๋ณ์ ๋ฑ๋ก
# ํต์งธ๋ก ๋ณต์ฌํ์ฌ, '๊ด๋ฆฌ์ ๊ถํ'์ผ๋ก ์คํํ PowerShell์ ์
๋ ฅ
# ↓ "API Key ์
๋ ฅ" ๋ถ๋ถ๋ ๊ฑด๋ค์ง ๋ง๊ณ ๊ทธ๋ฅ ํต์งธ๋ก ๋ณต์ฌํ ๊ฒ!
$apiKey = Read-Host "API Key ์
๋ ฅ"
[Environment]::SetEnvironmentVariable("GEMINI_API_KEY", $apiKey, "Machine")
[Environment]::SetEnvironmentVariable("GOOGLE_API_KEY", $apiKey, "Machine")
$env:GEMINI_API_KEY = $apiKey
$env:GOOGLE_API_KEY = $apiKey
Write-Host "GEMINI_API_KEY ๋ฑ๋ก ์ฌ๋ถ:" ([Environment]::GetEnvironmentVariable("GEMINI_API_KEY", "Machine") -ne $null)
Write-Host "GOOGLE_API_KEY ๋ฑ๋ก ์ฌ๋ถ:" ([Environment]::GetEnvironmentVariable("GOOGLE_API_KEY", "Machine") -ne $null)
์ด๊ฑธ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํํ PowerShell์์ ํต์งธ๋ก ๋ถ์ฌ๋ฃ๊ธฐ ํ ์ํฐ๋ฅผ ์น๋ฉด,
API Key ์ ๋ ฅ:
์ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ฐ ํ ๋ฐ, ๋ณธ์ธ์ API Key๋ฅผ ์ ๋ ฅ ํ ์ํฐ๋ฅผ ์ณ์ฃผ๋ฉด ๋ฑ๋ก์ด ์๋ฃ๋๋ค.
#2-3 Model ID
Gemini API๋ฅผ ํธ์ถํ ๋ Model ID๋ ์๊ตฌ๋ ํ ๋ฐ, ์๋์ ๊ฐ์ ๋ช ๋ น์ด๋ก ๋ณด์ ํ API KEY๋ก ๊ฐ์ฉํ ๋ชจ๋ธ์ ID๋ฅผ ๋ณผ ์ ์๋ค.
์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ
# ๋ณต์ฌํ์ฌ PowerShell์ ๋ถ์ฌ๋ฃ๊ธฐ ํ ์ํฐ 2๋ฒ
$response = curl.exe -s "https://generativelanguage.googleapis.com/v1beta/models?key=[์ฌ๊ธฐ(←๋๊ดํธ๊น์ง_'ํฌํจ'ํ_๋ฒ์)๋ฅผ_์ ๋ฏธ๋์ด_API_Key_๋ด์ฉ์ผ๋ก_๋ฐ๊ฟ์น๊ธฐ]" | ConvertFrom-Json
$response.models |
Where-Object { $_.supportedGenerationMethods -contains "generateContent" } |
ForEach-Object { $_.name -replace "^models/", "" }
๋ง์ฝ, API Key๋ฅผ GEMINI_API_KEY๋ผ๋ ์ด๋ฆ์ ํ๊ฒฝ ๋ณ์๋ก ๋ฑ๋กํด๋์๋ค๋ฉด
# ๋ณต์ฌํ์ฌ PowerShell์ ๋ถ์ฌ๋ฃ๊ธฐ ํ ์ํฐ 2๋ฒ
$response = curl.exe -s "https://generativelanguage.googleapis.com/v1beta/models?key=$env:GEMINI_API_KEY" | ConvertFrom-Json
$response.models |
Where-Object { $_.supportedGenerationMethods -contains "generateContent" } |
ForEach-Object { $_.name -replace "^models/", "" }
#3 ์ฐธ์ฌํ ํ๋ก๊ทธ๋จ
#3-1 5์๋ถํฐ ๊ณผ์ ๋ ์์ด์ ํธ์๊ฒ ๋งก๊ธฐ๊ณ ๋ํ์ํ ์ฆ๊ฒจ๋ณด๊ธฐ (feat.Kotlin)
์กฐ๋ง๊ฐ ์ถ๊ฐ ์์
#3-2 ๋จ๊ธฐ/์ฅ๊ธฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํด ๊น๋จน์ง ์๋ ๋๋ง์ AI ํ์ต ์ฑ๋ด ๋ง๋ค๊ธฐ
์กฐ๋ง๊ฐ ์ถ๊ฐ ์์
#3-3 ๋ด GitHub ํ๋ก์ ํธ ์ ์ฅ์๋ฅผ ๋ถ์ํ๊ณ ์ ๋ฆฌํ๋ AI ์์ด์ ํธ ๋ง๋ค๊ธฐ
2026 Build with AI: Hands-on Campus - ๋ด GitHub ํ๋ก์ ํธ ์ ์ฅ์๋ฅผ ๋ถ์ํ๊ณ ์ ๋ฆฌํ๋ AI ์์ด์ ํธ ๋ง๋ค๊ธฐ
#1 ์ด์ ๊ธ [์ฝํผ๋ฐ์ค] 2026 Build with AI: Hands-on Campus - ์ฐธ์ ํ๊ธฐ#1 ๊ฐ์#1-1 ์ฃผ์ AI๋ก ์ด๋๊น์ง ๋ง๋ค ์ ์์๊น? Gemini, Vertex AI ๋ฑ Google์ ์ต์ AI ๊ธฐ์ ์ ์ง์ ํ์ฉํด๋ณด๋ฉฐ ์ค์ ๊ฒฝํ์ ์๋ 200๋ช ๊ท๋ชจ
kenel.tistory.com
#4 ์์ฝ
์กฐ๋ง๊ฐ ์ถ๊ฐ ์์
#5 ์ก๋คํ ์ด์ผ๊ธฐ
![]() |
![]() |
์กฐ๋ง๊ฐ ์ถ๊ฐ ์์






