Gemini API의 미세 조정 지원은 입력/출력 예시의 데이터 세트가 적은 경우 출력을 선별하는 메커니즘을 제공합니다. 자세한 내용은 모델 조정 가이드 및 튜토리얼을 참고하세요.
메서드: tunedModels.create
조정된 모델을 만듭니다. google.longrunning.Operations
서비스를 통해 중간 조정 진행 상황 (있는 경우)을 확인합니다.
Operations 서비스를 통해 상태 및 결과에 액세스합니다. 예: GET /v1/tunedModels/az2mb0bpw6i/operations/000-111-222
엔드포인트
게시https://generativelanguage.googleapis.com/v1beta/tunedModels
쿼리 매개변수
tunedModelId
string
선택사항입니다. 조정된 모델의 고유 ID(지정된 경우)입니다. 이 값은 최대 40자(영문 기준)여야 하며 첫 번째 문자는 문자여야 하고 마지막 문자는 문자 또는 숫자일 수 있습니다. ID가 [a-z]([a-z0-9-]{0,38}[a-z0-9])?
정규 표현식과 일치해야 합니다.
요청 본문
요청 본문에 TunedModel
의 인스턴스가 포함됩니다.
displayName
string
선택사항입니다. 사용자 인터페이스에 이 모델을 표시할 이름입니다. 표시 이름은 공백을 포함하여 최대 40자(영문 기준)여야 합니다.
description
string
선택사항입니다. 이 모델에 대한 간단한 설명입니다.
tuningTask
object (TuningTask
)
필수 항목입니다. 조정된 모델을 만드는 조정 작업입니다.
readerProjectNumbers[]
string (int64 format)
선택사항입니다. 조정된 모델에 대한 읽기 액세스 권한이 있는 프로젝트 번호 목록입니다.
source_model
Union type
source_model
는 다음 중 하나여야 합니다.tunedModelSource
object (TunedModelSource
)
선택사항입니다. 새 모델 학습의 시작점으로 사용할 TunedModel입니다.
baseModel
string
변경할 수 없습니다. 조정할 Model
의 이름입니다. 예를 들면 models/gemini-1.5-flash-001
입니다.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다.
값 범위는 [0.0,1.0]
이상(양 끝값 포함)입니다. 1.0
에 가까운 값을 사용하면 더 다양한 응답이 생성되고, 0.0
에 가까운 값을 사용하면 일반적으로 모델의 예상치 못한 응답이 줄어듭니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topP
number
선택사항입니다. Nucleus 샘플링의 경우
핵 샘플링은 확률 합계가 topP
이상인 가장 작은 토큰 집합을 고려합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topK
integer
선택사항입니다. Top-K 샘플링의 경우
Top-k 샘플링은 가장 확률이 높은 topK
개의 토큰 집합을 고려합니다. 이 값은 모델을 호출하는 동안 백엔드에서 사용할 기본값을 지정합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
요청 예시
응답 본문
성공한 경우 응답 본문에 새로 생성된 Operation
의 인스턴스가 포함됩니다.
메서드: tunedModels.generateContent
입력 GenerateContentRequest
를 사용하여 모델 응답을 생성합니다. 자세한 사용 정보는 텍스트 생성 가이드를 참고하세요. 입력 기능은 조정된 모델을 포함하여 모델마다 다릅니다. 자세한 내용은 모델 가이드 및 조정 가이드를 참고하세요.
엔드포인트
게시https://generativelanguage.googleapis.com/v1beta/{model=tunedModels/*}:generateContent
경로 매개변수
model
string
필수 항목입니다. 완성 생성에 사용할 Model
의 이름입니다.
형식: models/{model}
tunedModels/{tunedmodel}
형식입니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
toolConfig
object (ToolConfig
)
선택사항입니다. 요청에 지정된 Tool
의 도구 구성입니다. 사용 예는 함수 호출 가이드를 참고하세요.
safetySettings[]
object (SafetySetting
)
선택사항입니다. 안전하지 않은 콘텐츠를 차단하기 위한 고유한 SafetySetting
인스턴스 목록입니다.
이는 GenerateContentRequest.contents
및 GenerateContentResponse.candidates
에 적용됩니다. 각 SafetyCategory
유형에 설정이 두 개 이상 있어서는 안 됩니다. API는 이러한 설정에 의해 설정된 기준을 충족하지 않는 모든 콘텐츠와 응답을 차단합니다. 이 목록은 safetySettings에 지정된 각 SafetyCategory
의 기본 설정을 재정의합니다. 목록에 지정된 SafetyCategory
에 대한 SafetySetting
가 없으면 API는 해당 카테고리의 기본 안전 설정을 사용합니다. 유해 카테고리 HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY가 지원됩니다. 사용 가능한 안전 설정에 관한 자세한 내용은 가이드를 참고하세요. 또한 안전 가이드에서 AI 애플리케이션에 안전 고려사항을 통합하는 방법을 알아보세요.
generationConfig
object (GenerationConfig
)
선택사항입니다. 모델 생성 및 출력의 구성 옵션입니다.
cachedContent
string
선택사항입니다. 예측을 제공하기 위한 컨텍스트로 사용할 캐시된 콘텐츠의 이름입니다. 형식: cachedContents/{cachedContent}
요청 예시
응답 본문
성공한 경우 응답 본문에 GenerateContentResponse
의 인스턴스가 포함됩니다.
메서드: tunedModels.streamGenerateContent
입력 GenerateContentRequest
이 주어지면 모델에서 스트리밍된 응답을 생성합니다.
엔드포인트
게시https://generativelanguage.googleapis.com/v1beta/{model=tunedModels/*}:streamGenerateContent
경로 매개변수
model
string
필수 항목입니다. 완성 생성에 사용할 Model
의 이름입니다.
형식: models/{model}
tunedModels/{tunedmodel}
형식입니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
toolConfig
object (ToolConfig
)
선택사항입니다. 요청에 지정된 Tool
의 도구 구성입니다. 사용 예는 함수 호출 가이드를 참고하세요.
safetySettings[]
object (SafetySetting
)
선택사항입니다. 안전하지 않은 콘텐츠를 차단하기 위한 고유한 SafetySetting
인스턴스 목록입니다.
이는 GenerateContentRequest.contents
및 GenerateContentResponse.candidates
에 적용됩니다. 각 SafetyCategory
유형에 설정이 두 개 이상 있어서는 안 됩니다. API는 이러한 설정에 의해 설정된 기준을 충족하지 않는 모든 콘텐츠와 응답을 차단합니다. 이 목록은 safetySettings에 지정된 각 SafetyCategory
의 기본 설정을 재정의합니다. 목록에 지정된 SafetyCategory
에 대한 SafetySetting
가 없으면 API는 해당 카테고리의 기본 안전 설정을 사용합니다. 유해 카테고리 HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY가 지원됩니다. 사용 가능한 안전 설정에 관한 자세한 내용은 가이드를 참고하세요. 또한 안전 가이드에서 AI 애플리케이션에 안전 고려사항을 통합하는 방법을 알아보세요.
generationConfig
object (GenerationConfig
)
선택사항입니다. 모델 생성 및 출력의 구성 옵션입니다.
cachedContent
string
선택사항입니다. 예측을 제공하기 위한 컨텍스트로 사용할 캐시된 콘텐츠의 이름입니다. 형식: cachedContents/{cachedContent}
응답 본문
성공하면 응답 본문에 GenerateContentResponse
인스턴스의 스트림이 포함됩니다.
메서드: tunedModels.get
특정 TunedModel에 대한 정보를 가져옵니다.
엔드포인트
gethttps://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*}
경로 매개변수
name
string
필수 항목입니다. 모델의 리소스 이름입니다.
형식: tunedModels/my-model-id
tunedModels/{tunedmodel}
형식입니다.
요청 본문
요청 본문은 비어 있어야 합니다.
요청 예시
응답 본문
성공한 경우 응답 본문에 TunedModel
의 인스턴스가 포함됩니다.
메서드: tunedModels.list
생성된 조정된 모델을 나열합니다.
엔드포인트
gethttps://generativelanguage.googleapis.com/v1beta/tunedModels
쿼리 매개변수
pageSize
integer
선택사항입니다. 반환할 최대 TunedModels
수 (페이지당)입니다. 서비스가 조정된 모델을 더 적게 반환할 수 있습니다.
지정하지 않으면 최대 10개의 조정된 모델이 반환됩니다. 이 메서드는 더 큰 pageSize를 전달하더라도 페이지당 최대 1, 000개의 모델을 반환합니다.
pageToken
string
선택사항입니다. 이전 tunedModels.list
호출에서 받은 페이지 토큰입니다.
한 요청에서 반환된 pageToken
를 다음 요청의 인수로 제공하여 다음 페이지를 가져옵니다.
페이지를 매길 때 tunedModels.list
에 제공된 다른 모든 매개변수는 페이지 토큰을 제공한 호출과 일치해야 합니다.
filter
string
선택사항입니다. 필터는 조정된 모델의 설명 및 표시 이름에 대한 전체 텍스트 검색입니다. 기본적으로 결과에는 모든 사용자와 공유된 조정된 모델이 포함되지 않습니다.
추가 연산자: - owner:me - writers:me - readers:me - readers:everyone
예: "owner:me"는 호출자가 소유자 역할이 있는 모든 조정된 모델을 반환합니다. "readers:me"는 호출자가 독자 역할이 있는 모든 조정된 모델을 반환합니다. "readers:everyone"는 모든 사용자와 공유되는 모든 조정된 모델을 반환합니다.
요청 본문
요청 본문은 비어 있어야 합니다.
요청 예시
응답 본문
모델의 페이징된 목록이 포함된 tunedModels.list
의 응답입니다.
성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.
tunedModels[]
object (TunedModel
)
반환된 모델입니다.
nextPageToken
string
다음 페이지를 검색하기 위해 pageToken
으로 전송할 수 있는 토큰입니다.
이 필드를 생략하면 더 이상 페이지가 없습니다.
JSON 표현 |
---|
{
"tunedModels": [
{
object ( |
메서드: tunedModels.patch
조정된 모델을 업데이트합니다.
엔드포인트
패치https://generativelanguage.googleapis.com/v1beta/{tunedModel.name=tunedModels/*}
PATCH https://generativelanguage.googleapis.com/v1beta/{tunedModel.name=tunedModels/*}
경로 매개변수
tunedModel.name
string
출력 전용입니다. 조정된 모델 이름입니다. 생성 시 고유한 이름이 생성됩니다. 예: tunedModels/az2mb0bpw6i
만들 때 displayName이 설정된 경우 이름의 ID 부분은 displayName의 단어를 하이픈으로 연결하고 고유성을 위해 임의의 부분을 추가하여 설정됩니다.
예:
- displayName =
Sentence Translator
- name =
tunedModels/sentence-translator-u3b7m
tunedModels/{tunedmodel}
형식입니다.
쿼리 매개변수
updateMask
string (FieldMask
format)
선택사항입니다. 업데이트할 필드 목록입니다.
정규화된 필드 이름의 쉼표로 구분된 목록입니다. 예: "user.displayName,photo"
요청 본문
요청 본문에 TunedModel
의 인스턴스가 포함됩니다.
displayName
string
선택사항입니다. 사용자 인터페이스에 이 모델을 표시할 이름입니다. 표시 이름은 공백을 포함하여 최대 40자(영문 기준)여야 합니다.
description
string
선택사항입니다. 이 모델에 대한 간단한 설명입니다.
tuningTask
object (TuningTask
)
필수 항목입니다. 조정된 모델을 만드는 조정 작업입니다.
readerProjectNumbers[]
string (int64 format)
선택사항입니다. 조정된 모델에 대한 읽기 액세스 권한이 있는 프로젝트 번호 목록입니다.
source_model
Union type
source_model
는 다음 중 하나여야 합니다.tunedModelSource
object (TunedModelSource
)
선택사항입니다. 새 모델 학습의 시작점으로 사용할 TunedModel입니다.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다.
값 범위는 [0.0,1.0]
이상(양 끝값 포함)입니다. 1.0
에 가까운 값을 사용하면 더 다양한 응답이 생성되고, 0.0
에 가까운 값을 사용하면 일반적으로 모델의 예상치 못한 응답이 줄어듭니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topP
number
선택사항입니다. Nucleus 샘플링의 경우
핵 샘플링은 확률 합계가 topP
이상인 가장 작은 토큰 집합을 고려합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topK
integer
선택사항입니다. Top-K 샘플링의 경우
Top-k 샘플링은 가장 확률이 높은 topK
개의 토큰 집합을 고려합니다. 이 값은 모델을 호출하는 동안 백엔드에서 사용할 기본값을 지정합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
응답 본문
성공한 경우 응답 본문에 TunedModel
의 인스턴스가 포함됩니다.
메서드: tunedModels.delete
조정된 모델을 삭제합니다.
엔드포인트
삭제https://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*}
경로 매개변수
name
string
필수 항목입니다. 모델의 리소스 이름입니다. 형식: tunedModels/my-model-id
tunedModels/{tunedmodel}
형식입니다.
요청 본문
요청 본문은 비어 있어야 합니다.
응답 본문
성공하면 응답 본문은 빈 JSON 객체입니다.
REST 리소스: tunedModels
- 리소스: TunedModel
- TunedModelSource
- 상태
- TuningTask
- TuningSnapshot
- 데이터 세트
- TuningExamples
- TuningExample
- 초매개변수
- 메서드
리소스: TunedModel
ModelService.CreateTunedModel을 사용하여 만든 미세 조정된 모델입니다.
name
string
출력 전용입니다. 조정된 모델 이름입니다. 생성 시 고유한 이름이 생성됩니다. 예: tunedModels/az2mb0bpw6i
만들 때 displayName이 설정된 경우 이름의 ID 부분은 displayName의 단어를 하이픈으로 연결하고 고유성을 위해 임의의 부분을 추가하여 설정됩니다.
예:
- displayName =
Sentence Translator
- name =
tunedModels/sentence-translator-u3b7m
displayName
string
선택사항입니다. 사용자 인터페이스에 이 모델을 표시할 이름입니다. 표시 이름은 공백을 포함하여 최대 40자(영문 기준)여야 합니다.
description
string
선택사항입니다. 이 모델에 대한 간단한 설명입니다.
state
enum (State
)
출력 전용입니다. 조정된 모델의 상태입니다.
createTime
string (Timestamp
format)
출력 전용입니다. 이 모델이 생성된 타임스탬프입니다.
생성된 출력은 항상 Z-정규화되고 소수점 자릿수가 0, 3, 6 또는 9인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
또는 "2014-10-02T15:01:23+05:30"
입니다.
updateTime
string (Timestamp
format)
출력 전용입니다. 이 모델이 업데이트된 타임스탬프입니다.
생성된 출력은 항상 Z-정규화되고 소수점 자릿수가 0, 3, 6 또는 9인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
또는 "2014-10-02T15:01:23+05:30"
입니다.
tuningTask
object (TuningTask
)
필수 항목입니다. 조정된 모델을 만드는 조정 작업입니다.
readerProjectNumbers[]
string (int64 format)
선택사항입니다. 조정된 모델에 대한 읽기 액세스 권한이 있는 프로젝트 번호 목록입니다.
source_model
Union type
source_model
는 다음 중 하나여야 합니다.tunedModelSource
object (TunedModelSource
)
선택사항입니다. 새 모델 학습의 시작점으로 사용할 TunedModel입니다.
baseModel
string
변경할 수 없습니다. 조정할 Model
의 이름입니다. 예를 들면 models/gemini-1.5-flash-001
입니다.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다.
값 범위는 [0.0,1.0]
이상(양 끝값 포함)입니다. 1.0
에 가까운 값을 사용하면 더 다양한 응답이 생성되고, 0.0
에 가까운 값을 사용하면 일반적으로 모델의 예상치 못한 응답이 줄어듭니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topP
number
선택사항입니다. Nucleus 샘플링의 경우
핵 샘플링은 확률 합계가 topP
이상인 가장 작은 토큰 집합을 고려합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
topK
integer
선택사항입니다. Top-K 샘플링의 경우
Top-k 샘플링은 가장 확률이 높은 topK
개의 토큰 집합을 고려합니다. 이 값은 모델을 호출하는 동안 백엔드에서 사용할 기본값을 지정합니다.
이 값은 모델을 만들 때 기본 모델에서 사용하는 값을 기본값으로 지정합니다.
JSON 표현 |
---|
{ "name": string, "displayName": string, "description": string, "state": enum ( |
TunedModelSource
새 모델을 학습하기 위한 소스로 조정된 모델
tunedModel
string
변경할 수 없습니다. 새 모델 학습의 시작점으로 사용할 TunedModel
의 이름입니다. 예를 들면 tunedModels/my-tuned-model
입니다.
baseModel
string
출력 전용입니다. 이 TunedModel
가 조정된 기본 Model
의 이름입니다. 예: models/gemini-1.5-flash-001
JSON 표현 |
---|
{ "tunedModel": string, "baseModel": string } |
주
조정된 모델의 상태입니다.
열거형 | |
---|---|
STATE_UNSPECIFIED |
기본값입니다. 이 값은 사용되지 않습니다. |
CREATING |
모델을 만드는 중입니다. |
ACTIVE |
이제 모델을 사용할 수 있습니다. |
FAILED |
모델을 만들 수 없습니다. |
TuningTask
조정된 모델을 만드는 조정 작업
startTime
string (Timestamp
format)
출력 전용입니다. 이 모델의 조정이 시작된 타임스탬프입니다.
생성된 출력은 항상 Z-정규화되고 소수점 자릿수가 0, 3, 6 또는 9인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
또는 "2014-10-02T15:01:23+05:30"
입니다.
completeTime
string (Timestamp
format)
출력 전용입니다. 이 모델의 조정이 완료된 타임스탬프입니다.
생성된 출력은 항상 Z-정규화되고 소수점 자릿수가 0, 3, 6 또는 9인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
또는 "2014-10-02T15:01:23+05:30"
입니다.
snapshots[]
object (TuningSnapshot
)
출력 전용입니다. 조정 중에 수집된 측정항목
trainingData
object (Dataset
)
필수 항목입니다. 입력 전용입니다. 변경할 수 없습니다. 모델 학습 데이터입니다.
hyperparameters
object (Hyperparameters
)
변경할 수 없습니다. 조정 프로세스를 제어하는 초매개변수입니다. 제공하지 않으면 기본값이 사용됩니다.
JSON 표현 |
---|
{ "startTime": string, "completeTime": string, "snapshots": [ { object ( |
TuningSnapshot
단일 조정 단계의 레코드입니다.
step
integer
출력 전용입니다. 조정 단계
epoch
integer
출력 전용입니다. 이 단계가 속한 연대입니다.
meanLoss
number
출력 전용입니다. 이 단계의 학습 예시의 평균 손실입니다.
computeTime
string (Timestamp
format)
출력 전용입니다. 이 측정항목이 계산된 타임스탬프입니다.
생성된 출력은 항상 Z-정규화되고 소수점 자릿수가 0, 3, 6 또는 9인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
또는 "2014-10-02T15:01:23+05:30"
입니다.
JSON 표현 |
---|
{ "step": integer, "epoch": integer, "meanLoss": number, "computeTime": string } |
데이터 세트
학습 또는 검증을 위한 데이터 세트입니다.
dataset
Union type
dataset
는 다음 중 하나여야 합니다.examples
object (TuningExamples
)
선택사항입니다. 간단한 입력/출력 텍스트가 포함된 인라인 예시
JSON 표현 |
---|
{
// dataset
"examples": {
object ( |
TuningExamples
조정 예시 모음 학습 데이터 또는 검증 데이터일 수 있습니다.
examples[]
object (TuningExample
)
예시 예시 입력은 텍스트 또는 토론용일 수 있지만 세트의 모든 예시는 동일한 유형이어야 합니다.
JSON 표현 |
---|
{
"examples": [
{
object ( |
TuningExample
조정을 위한 단일 예시
output
string
필수 항목입니다. 예상되는 모델 출력입니다.
model_input
Union type
model_input
는 다음 중 하나여야 합니다.textInput
string
선택사항입니다. 텍스트 모델 입력
JSON 표현 |
---|
{ "output": string, // model_input "textInput": string // Union type } |
초매개변수
조정 프로세스를 제어하는 초매개변수입니다. https://ai.google.dev/docs/model_tuning_guidance에서 자세히 알아보세요.
learning_rate_option
Union type
learning_rate_option
는 다음 중 하나여야 합니다.learningRate
number
선택사항입니다. 변경할 수 없습니다. 조정할 학습률 초매개변수입니다. 설정하지 않으면 학습 예시 수를 기반으로 기본값 0.001 또는 0.0002가 계산됩니다.
learningRateMultiplier
number
선택사항입니다. 변경할 수 없습니다. 학습률 배수는 기본 (권장) 값을 기반으로 최종 학습률을 계산하는 데 사용됩니다. 실제 학습률 := learningRateMultiplier * 기본 학습률 기본 학습률은 기본 모델 및 데이터 세트 크기에 따라 다릅니다. 설정하지 않으면 기본값 1.0이 사용됩니다.
epochCount
integer
변경할 수 없습니다. 학습 세대 수입니다. 에포크는 학습 데이터를 한 번 통과하는 것입니다. 설정하지 않으면 기본값 5가 사용됩니다.
batchSize
integer
변경할 수 없습니다. 조정을 위한 배치 크기 초매개변수입니다. 설정하지 않으면 학습 예시의 수에 따라 기본값 4 또는 16이 사용됩니다.
JSON 표현 |
---|
{ // learning_rate_option "learningRate": number, "learningRateMultiplier": number // Union type "epochCount": integer, "batchSize": integer } |