토큰 목록 가져오기

이 페이지에서는 지정된 프롬프트의 토큰을 계산하는 방법을 설명합니다.

토큰은 언어 모델의 의미를 전달하는 최소 텍스트 단위입니다. 이해를 돕기 위해 텍스트를 준비할 때 모델은 문장 또는 더 큰 텍스트 조각을 개별 토큰으로 분리하는 토큰화 프로세스를 수행합니다. 그런 후 각각의 고유한 토큰에 숫자 ID가 지정됩니다. 이렇게 해서 모델이 텍스트를 숫자로 작업할 수 있습니다. 토큰을 만들 때 대규모 언어 모델(LLM)은 토큰 간의 통계 관계를 계산하고 일련의 토큰에서 다음으로 가장 가능성이 높은 토큰을 생성합니다.

지원되는 모델

다음 기반 모델은 토큰 및 토큰 ID 목록 가져오기를 지원합니다.

  • text-bison
  • chat-bison
  • textembedding-gecko
  • code-bison
  • codechat-bison
  • code-gecko

프롬프트에 대한 토큰 및 토큰 ID 목록 가져오기

Vertex AI API를 사용하여 토큰 및 토큰 ID 목록을 가져올 수 있습니다.

REST

Vertex AI API를 사용하여 프롬프트에 대한 토큰 및 토큰 ID 목록을 가져오려면 게시자 모델 엔드포인트에 POST 요청을 보냅니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID
  • MODEL_ID: 프롬프트의 토큰을 계산하려는 모델의 이름입니다. 기반 모델 옵션은 다음과 같습니다.
    • text-bison
    • chat-bison
    • textembedding-gecko
    • code-bison
    • codechat-bison
    • code-gecko
    모델 이름에 버전 번호(예: 모델 이름에 @001)를 추가하여 안정적인 버전을 지정할 수 있습니다. 모델 이름에 버전 번호를 추가하지 않는 방법으로 최신 버전을 지정할 수도 있습니다. 사용 가능한 *정식* 모델 버전을 알아보려면 사용 가능한 정식 모델 버전을 참조하세요.
  • PROMPT: 토큰을 계산할 프롬프트입니다. (여기에서 프롬프트 주위에 따옴표를 추가하지 마세요.)

HTTP 메서드 및 URL:

POST https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:computeTokens

JSON 요청 본문:

{
  "instances": [
    { "prompt": "PROMPT"}
  ],
}

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

요청 본문을 request.json 파일에 저장합니다. 터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.

cat > request.json << 'EOF'
{
  "instances": [
    { "prompt": "PROMPT"}
  ],
}
EOF

그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:computeTokens"

PowerShell

요청 본문을 request.json 파일에 저장합니다. 터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.

@'
{
  "instances": [
    { "prompt": "PROMPT"}
  ],
}
'@  | Out-File -FilePath request.json -Encoding utf8

그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:computeTokens" | Select-Object -Expand Content

출력 토큰은 base64 문자열로 표시됩니다. 가독성을 높이기 위해 출력을 다시 일반 문자열로 변환할 수 있습니다. 예를 들면 다음과 같습니다.

  {
    "tokensInfo": [
      {
        "tokens": [
          "IFByb3ZpZGU=",
          "IGE=",
          "IHN1bW1hcnk=",
          "IG9m"
        ],
        "tokenIds": [
          "45895",
          "1016",
          "14292",
          "1024"
        ]
      }
    ]
  }

curl 명령어 예시

MODEL_ID="text-bison"
PROJECT_ID="my-project"
PROMPT="Provide a summary with about two sentences for the following article."

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:computeTokens -d \
$'{
  "instances": [
    { "prompt": "'"$PROMPT"'"}
  ],
}'

가격 책정 및 할당량

ComputeTokens API를 사용하는 경우 요금이 부과되지 않습니다. 할당량 한도는 CountTokens API 할당량과 같은 분당 요청 3,000개입니다.

다음 단계