메서드: models.generateText
입력 메시지가 주어지면 모델에서 응답을 생성합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateText
경로 매개변수
model
string
필수 항목입니다. 완성을 생성하는 데 사용할 Model
또는 TunedModel
의 이름입니다. 예: models/text-bison-001, tunedModels/sentence-translator-u3b7m 형식은 models/{model}
입니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
prompt
object (TextPrompt
)
필수 항목입니다. 모델에 프롬프트로 제공되는 자유 형식 입력 텍스트입니다.
프롬프트가 주어지면 모델은 입력 텍스트의 완료로 예측되는 TextCompletion 응답을 생성합니다.
safetySettings[]
object (SafetySetting
)
선택사항입니다. 안전하지 않은 콘텐츠를 차단하기 위한 고유한 SafetySetting
인스턴스 목록입니다.
GenerateTextRequest.prompt
및 GenerateTextResponse.candidates
에 적용됩니다. 각 SafetyCategory
유형에 설정이 두 개 이상 있으면 안 됩니다. API는 이러한 설정에서 설정한 기준을 충족하지 않는 프롬프트와 응답을 차단합니다. 이 목록은 safetySettings에 지정된 각 SafetyCategory
의 기본 설정을 재정의합니다. 목록에 제공된 특정 SafetyCategory
에 대한 SafetySetting
가 없는 경우 API는 해당 카테고리의 기본 안전 설정을 사용합니다. 텍스트 서비스에서는 HARM_CATEGORY_DEROGATORY, HARM_CATEGORY_TOXICITY, HARM_CATEGORY_VIOLENCE, HARM_CATEGORY_SEXUAL, HARM_CATEGORY_MEDICAL, HARM_CATEGORY_DANGEROUS 유해 카테고리가 지원됩니다.
stopSequences[]
string
출력 생성을 중지하는 문자 시퀀스 집합입니다 (최대 5개). 지정된 경우 API는 중지 시퀀스가 처음 나타나는 위치에서 중지됩니다. 중지 시퀀스는 응답에 포함되지 않습니다.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다. 참고: 기본값은 모델에 따라 다릅니다. getModel
함수에서 반환된 Model
의 Model.temperature
속성을 참고하세요.
값의 범위는 [0.0,1.0]입니다(포함). 1.0에 가까운 값은 더 다양하고 창의적인 대답을 생성하는 반면 0.0에 가까운 값은 일반적으로 모델에서 더 간단한 대답을 생성합니다.
candidateCount
integer
선택사항입니다. 반환할 생성된 응답 수입니다.
이 값은 [1, 8] 사이여야 합니다(1과 8 포함). 설정되지 않은 경우 기본값은 1입니다.
maxOutputTokens
integer
선택사항입니다. 후보에 포함할 최대 토큰 수입니다.
설정되지 않은 경우 Model
사양에 지정된 outputTokenLimit로 기본 설정됩니다.
topP
number
선택사항입니다. 샘플링 시 고려할 토큰의 최대 누적 확률입니다.
모델은 결합된 Top-k 및 Nucleus 샘플링을 사용합니다.
토큰은 할당된 확률에 따라 정렬되므로 가능성이 가장 높은 토큰만 고려됩니다. Top-k 샘플링은 고려할 최대 토큰 수를 직접 제한하는 반면, 뉴클리어스 샘플링은 누적 확률에 따라 토큰 수를 제한합니다.
참고: 기본값은 모델에 따라 다릅니다. getModel
함수에서 반환된 Model
의 Model.top_p
속성을 참고하세요.
topK
integer
선택사항입니다. 샘플링 시 고려할 최대 토큰 수입니다.
모델은 결합된 Top-k 및 Nucleus 샘플링을 사용합니다.
Top-k 샘플링은 확률이 가장 높은 topK
개의 토큰 집합을 고려합니다. 기본값은 40입니다.
참고: 기본값은 모델에 따라 다릅니다. getModel
함수에서 반환된 Model
의 Model.top_k
속성을 참고하세요.
응답 본문
성공한 경우 응답 본문에 GenerateTextResponse
의 인스턴스가 포함됩니다.
메서드: models.countTextTokens
텍스트에서 모델의 토큰화 도구를 실행하고 토큰 수를 반환합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:countTextTokens
경로 매개변수
model
string
필수 항목입니다. 모델의 리소스 이름입니다. 이는 모델에서 사용할 ID 역할을 합니다.
이 이름은 models.list
메서드에서 반환된 모델 이름과 일치해야 합니다.
형식: models/{model}
models/{model}
형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
prompt
object (TextPrompt
)
필수 항목입니다. 모델에 프롬프트로 제공되는 자유 형식 입력 텍스트입니다.
응답 본문
models.countTextTokens
의 응답입니다.
prompt
의 모델 tokenCount
를 반환합니다.
성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.
tokenCount
integer
model
이 prompt
을 토큰화하는 토큰 수입니다.
항상 음수가 아닙니다.
JSON 표현 |
---|
{ "tokenCount": integer } |
메서드: models.generateMessage
입력 MessagePrompt
가 주어지면 모델에서 대답을 생성합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateMessage
경로 매개변수
model
string
필수 항목입니다. 사용할 모델의 이름입니다.
형식: name=models/{model}
models/{model}
형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
prompt
object (MessagePrompt
)
필수 항목입니다. 모델에 프롬프트로 제공되는 구조화된 텍스트 입력입니다.
프롬프트가 주어지면 모델은 토론에서 다음 메시지라고 예측되는 내용을 반환합니다.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다.
값은 [0.0,1.0]
이상일 수 있습니다. 1.0
에 가까운 값은 더 다양한 대답을 생성하는 반면 0.0
에 가까운 값은 일반적으로 모델에서 덜 놀라운 대답을 생성합니다.
candidateCount
integer
선택사항입니다. 반환할 생성된 응답 메시지의 수입니다.
이 값은 [1, 8]
이상이어야 합니다. 설정하지 않으면 기본값은 1
입니다.
topP
number
선택사항입니다. 샘플링 시 고려할 토큰의 최대 누적 확률입니다.
모델은 결합된 Top-k 및 Nucleus 샘플링을 사용합니다.
핵 샘플링은 확률 합이 topP
이상인 가장 작은 토큰 집합을 고려합니다.
topK
integer
선택사항입니다. 샘플링 시 고려할 최대 토큰 수입니다.
모델은 결합된 Top-k 및 Nucleus 샘플링을 사용합니다.
Top-k 샘플링은 확률이 가장 높은 topK
개의 토큰 집합을 고려합니다.
응답 본문
모델의 응답입니다.
여기에는 후보자 메시지와 시간순으로 정렬된 메시지 형식의 대화 기록이 포함됩니다.
성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.
candidates[]
object (Message
)
모델의 후보 응답 메시지입니다.
messages[]
object (Message
)
모델에서 사용하는 대화 기록입니다.
filters[]
object (ContentFilter
)
프롬프트 및 응답 텍스트의 콘텐츠 필터링 메타데이터 세트입니다.
이 응답에서 후보를 차단한 SafetyCategory
, 차단을 트리거한 가장 낮은 HarmProbability
, 해당 카테고리의 HarmThreshold 설정을 나타냅니다.
JSON 표현 |
---|
{ "candidates": [ { object ( |
메서드: models.countMessageTokens
문자열에서 모델의 토큰화 도구를 실행하고 토큰 수를 반환합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:countMessageTokens
경로 매개변수
model
string
필수 항목입니다. 모델의 리소스 이름입니다. 이는 모델에서 사용할 ID 역할을 합니다.
이 이름은 models.list
메서드에서 반환된 모델 이름과 일치해야 합니다.
형식: models/{model}
models/{model}
형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
prompt
object (MessagePrompt
)
필수 항목입니다. 토큰 수를 반환할 프롬프트입니다.
응답 본문
models.countMessageTokens
의 응답입니다.
prompt
의 모델 tokenCount
를 반환합니다.
성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.
tokenCount
integer
model
이 prompt
을 토큰화하는 토큰 수입니다.
항상 음수가 아닙니다.
JSON 표현 |
---|
{ "tokenCount": integer } |
메서드: models.embedText
입력 메시지가 주어지면 모델에서 임베딩을 생성합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:embedText
경로 매개변수
model
string
필수 항목입니다. model=models/{model} 형식으로 사용할 모델 이름입니다. models/{model}
형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
text
string
선택사항입니다. 모델이 임베딩으로 변환할 자유 형식 입력 텍스트입니다.
메서드: models.batchEmbedText
동기 호출에서 입력 텍스트가 지정된 모델로부터 여러 임베딩을 생성합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedText
경로 매개변수
model
string
필수 항목입니다. 임베딩을 생성하는 데 사용할 Model
의 이름입니다. 예: models/embedding-gecko-001 models/{model}
형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
texts[]
string
선택사항입니다. 모델이 임베딩으로 변환할 자유 형식 입력 텍스트입니다. 현재 한도는 100개 텍스트이며, 이를 초과하면 오류가 발생합니다.
requests[]
object (EmbedTextRequest
)
선택사항입니다. 배치의 삽입 요청입니다. texts
또는 requests
중 하나만 설정할 수 있습니다.
응답 본문
EmbedTextRequest에 대한 응답입니다.
성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.
embeddings[]
object (Embedding
)
출력 전용입니다. 입력 텍스트에서 생성된 임베딩입니다.
JSON 표현 |
---|
{
"embeddings": [
{
object ( |
EmbedTextRequest
모델에서 텍스트 임베딩을 가져오도록 요청합니다.
model
string
필수 항목입니다. model=models/{model} 형식으로 사용할 모델 이름입니다.
text
string
선택사항입니다. 모델이 임베딩으로 변환할 자유 형식 입력 텍스트입니다.
JSON 표현 |
---|
{ "model": string, "text": string } |
ContentFilter
단일 요청 처리에 연결된 콘텐츠 필터링 메타데이터입니다.
ContentFilter에는 이유와 선택적 지원 문자열이 포함됩니다. 이유가 지정되지 않았을 수 있습니다.
reason
enum (BlockedReason
)
요청 처리 중에 콘텐츠가 차단된 이유입니다.
message
string
필터링 동작을 자세히 설명하는 문자열입니다.
JSON 표현 |
---|
{
"reason": enum ( |
BlockedReason
콘텐츠가 차단된 이유 목록입니다.
열거형 | |
---|---|
BLOCKED_REASON_UNSPECIFIED |
차단 이유가 지정되지 않았습니다. |
SAFETY |
안전 설정으로 인해 콘텐츠가 차단되었습니다. |
OTHER |
콘텐츠가 차단되었지만 이유가 분류되지 않았습니다. |
메시지
구조화된 텍스트의 기본 단위입니다.
Message
에는 author
과 Message
의 content
이 포함됩니다.
author
는 메시지가 텍스트로 모델에 입력될 때 메시지에 태그를 지정하는 데 사용됩니다.
content
string
필수 항목입니다. 구조화된 Message
의 텍스트 콘텐츠입니다.
citationMetadata
object (CitationMetadata
)
출력 전용입니다. 이 Message
에 있는 모델 생성 content
의 인용 정보입니다.
이 Message
가 모델에서 출력으로 생성된 경우 이 필드에는 content
에 포함된 텍스트의 저작자 표시 정보가 채워질 수 있습니다. 이 필드는 출력에만 사용됩니다.
JSON 표현 |
---|
{
"author": string,
"content": string,
"citationMetadata": {
object ( |
MessagePrompt
모델에 프롬프트로 전달된 모든 구조화된 입력 텍스트입니다.
MessagePrompt
에는 대화의 컨텍스트를 제공하는 구조화된 필드 집합, 모델이 다양한 방식으로 응답하도록 유도하는 사용자 입력/모델 출력 메시지 쌍의 예, 사용자 및 모델 간의 대화의 교대 턴을 나타내는 대화 기록 또는 메시지 목록이 포함됩니다.
context
string
선택사항입니다. 응답을 근거로 하기 위해 모델에 먼저 제공해야 하는 텍스트입니다.
비어 있지 않으면 이 context
가 examples
및 messages
전에 모델에 먼저 제공됩니다. context
를 사용할 때는 연속성을 유지하기 위해 모든 요청에 제공해야 합니다.
이 필드는 컨텍스트를 제공하고 대답을 안내하는 데 도움이 되는 모델에 대한 프롬프트의 설명일 수 있습니다. 예: '이 문구를 영어에서 프랑스어로 번역해 줘' 또는 '주어진 문장을 행복, 슬픔, 중립 중 하나로 분류해 줘'
총 입력 크기가 모델의 inputTokenLimit
를 초과하고 입력 요청이 잘리면 이 필드에 포함된 모든 항목이 메시지 기록보다 우선합니다.
examples[]
object (Example
)
선택사항입니다. 모델이 생성해야 하는 항목의 예시입니다.
여기에는 사용자 입력과 모델이 모방해야 하는 대답이 모두 포함됩니다.
이러한 examples
는 대화 메시지와 동일하게 처리되지만 messages
의 기록보다 우선합니다. 총 입력 크기가 모델의 inputTokenLimit
를 초과하면 입력이 잘립니다. examples
전에 messages
에서 아이템이 드롭됩니다.
messages[]
object (Message
)
필수 항목입니다. 최근 대화 기록의 스냅샷으로, 시간순으로 정렬됩니다.
두 저자가 번갈아 가며 글을 씁니다.
총 입력 크기가 모델의 inputTokenLimit
를 초과하면 입력이 잘립니다. 가장 오래된 항목이 messages
에서 삭제됩니다.
예
GenerateTextResponse
후보 완성 항목을 포함한 모델의 응답입니다.
candidates[]
object (TextCompletion
)
모델의 후보 응답입니다.
filters[]
object (ContentFilter
)
프롬프트 및 응답 텍스트의 콘텐츠 필터링 메타데이터 세트입니다.
이 응답에서 후보를 차단한 SafetyCategory
, 차단을 트리거한 가장 낮은 HarmProbability
, 해당 카테고리의 HarmThreshold 설정을 나타냅니다. 이는 하나 이상의 응답을 차단 해제하는 데 필요한 SafetySettings
의 가장 작은 변경사항을 나타냅니다.
차단은 요청의 SafetySettings
(또는 API의 기본 SafetySettings
)에 의해 구성됩니다.
safetyFeedback[]
object (SafetyFeedback
)
콘텐츠 필터링과 관련된 안전 피드백을 반환합니다.
JSON 표현 |
---|
{ "candidates": [ { object ( |
TextCompletion
모델에서 반환된 출력 텍스트입니다.
output
string
출력 전용입니다. 모델에서 반환된 생성된 텍스트입니다.
safetyRatings[]
object (SafetyRating
)
대답의 안전에 대한 평가입니다.
카테고리당 등급은 최대 1개입니다.
citationMetadata
object (CitationMetadata
)
출력 전용입니다. 이 TextCompletion
에 있는 모델 생성 output
의 인용 정보입니다.
이 필드는 output
에 포함된 텍스트의 저작자 표시 정보로 채워질 수 있습니다.
JSON 표현 |
---|
{ "output": string, "safetyRatings": [ { object ( |
SafetyFeedback
전체 요청에 대한 안전 피드백입니다.
안전 설정으로 인해 입력 또는 응답의 콘텐츠가 차단된 경우 이 필드가 채워집니다. SafetyFeedback은 모든 HarmCategory에 존재하지 않을 수 있습니다. 각 SafetyFeedback은 요청에서 사용된 안전 설정과 결과를 반환하기 위해 허용되어야 하는 가장 낮은 HarmProbability를 반환합니다.
rating
object (SafetyRating
)
콘텐츠에서 평가된 안전 등급입니다.
setting
object (SafetySetting
)
요청에 적용된 안전 설정입니다.
JSON 표현 |
---|
{ "rating": { object ( |