Gemini API를 사용하려면 API 키가 필요합니다. Google AI Studio에서 몇 번의 클릭만으로 무료로 키를 만들 수 있습니다.
API 키가 있으면 다음과 같은 옵션으로 Gemini API에 연결할 수 있습니다.
초기 테스트에서는 API 키를 하드 코딩할 수 있지만 이는 안전하지 않으므로 임시로만 사용해야 합니다. API 키를 하드 코딩하는 예는 API 키 명시적으로 제공 섹션에서 확인할 수 있습니다.
API 키를 환경 변수로 설정
환경 변수 GEMINI_API_KEY
또는 GOOGLE_API_KEY
를 설정하면 Gemini API 라이브러리 중 하나를 사용할 때 클라이언트에서 API 키를 자동으로 선택합니다. 이러한 변수 중 하나만 설정하는 것이 좋지만 두 변수가 모두 설정된 경우 GOOGLE_API_KEY
이 우선합니다.
REST API 또는 브라우저의 JavaScript를 사용하는 경우 API 키를 명시적으로 제공해야 합니다.
다음은 다양한 운영체제에서 API 키를 환경 변수 GEMINI_API_KEY
로 로컬에 설정하는 방법입니다.
Linux/macOS - Bash
Bash는 일반적인 Linux 및 macOS 터미널 구성입니다. 다음 명령어를 실행하여 구성 파일이 있는지 확인할 수 있습니다.
~/.bashrc
'No such file or directory'라는 응답이 표시되면 다음 명령어를 실행하여 이 파일을 만들고 열거나 zsh
를 사용해야 합니다.
touch ~/.bashrc
open ~/.bashrc
다음으로 내보내기 명령어를 추가하여 API 키를 설정해야 합니다.
export GEMINI_API_KEY=<YOUR_API_KEY_HERE>
파일을 저장한 후 다음을 실행하여 변경사항을 적용합니다.
source ~/.bashrc
macOS - Zsh
Zsh는 일반적인 Linux 및 macOS 터미널 구성입니다. 다음 명령어를 실행하여 구성 파일이 있는지 확인할 수 있습니다.
~/.zshrc
'No such file or directory'라는 응답이 표시되면 다음 명령어를 실행하여 이 파일을 만들고 열거나 bash
를 사용해야 합니다.
touch ~/.zshrc
open ~/.zshrc
다음으로 내보내기 명령어를 추가하여 API 키를 설정해야 합니다.
export GEMINI_API_KEY=<YOUR_API_KEY_HERE>
파일을 저장한 후 다음을 실행하여 변경사항을 적용합니다.
source ~/.zshrc
Windows
- 시스템 설정에서 '환경 변수'를 검색합니다.
- '사용자 변수' (현재 사용자용) 또는 '시스템 변수'(모든 사용자용 - 주의해서 사용)를 수정합니다.
- 변수를 만들고
export GEMINI_API_KEY=your_key_here
를 추가합니다. - 변경사항 적용
API 키 명시적으로 제공
경우에 따라 API 키를 명시적으로 제공할 수 있습니다. 예를 들면 다음과 같습니다.
- 간단한 API 호출을 수행하고 API 키를 하드 코딩하는 것을 선호합니다.
- Gemini API 라이브러리의 환경 변수 자동 검색에 의존하지 않고 명시적으로 제어하고 싶습니다.
- 환경 변수가 지원되지 않는 환경(예: 웹)을 사용하거나 REST 호출을 실행하고 있습니다.
다음은 API 키를 명시적으로 제공하는 방법의 예입니다.
Python
from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
response = client.models.generate_content(
model="gemini-2.5-flash", contents="Explain how AI works in a few words"
)
print(response.text)
자바스크립트
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });
async function main() {
const response = await ai.models.generateContent({
model: "gemini-2.5-flash",
contents: "Explain how AI works in a few words",
});
console.log(response.text);
}
main();
Go
package main
import (
"context"
"fmt"
"log"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
APIKey: "YOUR_API_KEY",
Backend: genai.BackendGeminiAPI,
})
if err != nil {
log.Fatal(err)
}
result, err := client.Models.GenerateContent(
ctx,
"gemini-2.5-flash",
genai.Text("Explain how AI works in a few words"),
nil,
)
if err != nil {
log.Fatal(err)
}
fmt.Println(result.Text())
}
자바
package com.example;
import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;
public class GenerateTextFromTextInput {
public static void main(String[] args) {
Client client = Client.builder().apiKey("YOUR_API_KEY").build();
GenerateContentResponse response =
client.models.generateContent(
"gemini-2.5-flash",
"Explain how AI works in a few words",
null);
System.out.println(response.text());
}
}
REST
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=$YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [
{
"parts": [
{
"text": "Explain how AI works in a few words"
}
]
}
]
}'
API 키를 안전하게 보호하기
Gemini API 키를 비밀번호처럼 취급하세요. 보안이 침해되면 다른 사용자가 프로젝트의 할당량을 사용하고, 청구가 사용 설정된 경우 요금이 발생하며, 파일과 같은 비공개 데이터에 액세스할 수 있습니다.
중요 보안 규칙
소스 제어에 API 키를 커밋하지 마세요. Git과 같은 버전 제어 시스템에 API 키를 체크인하지 마세요.
클라이언트 측에서 API 키를 노출하지 마세요. 프로덕션의 웹 또는 모바일 앱에서 API 키를 직접 사용하지 마세요. 클라이언트 측 코드(JavaScript/TypeScript 라이브러리 및 REST 호출 포함)의 키는 추출될 수 있습니다.
권장사항
API 키로 서버 측 호출 사용 API 키를 사용하는 가장 안전한 방법은 키를 기밀로 유지할 수 있는 서버 측 애플리케이션에서 Gemini API를 호출하는 것입니다.
클라이언트 측 액세스에 임시 토큰 사용 (Live API만 해당): Live API에 직접 클라이언트 측으로 액세스하려면 임시 토큰을 사용하면 됩니다. 보안 위험이 낮으며 프로덕션에 사용하기에 적합할 수 있습니다. 자세한 내용은 임시 토큰 가이드를 참고하세요.
키에 제한사항 추가 고려: API 키 제한사항을 추가하여 키의 권한을 제한할 수 있습니다. 이렇게 하면 키가 유출될 경우 발생할 수 있는 잠재적 피해를 최소화할 수 있습니다.
일반적인 권장사항은 이 지원 도움말을 참조하세요.