Receber uma lista de tokens

Nesta página, mostramos como processar tokens de um comando emitido.

Os tokens são a menor unidade de texto que tem significado para um modelo de linguagem. Para preparar textos para compreensão, os modelos usam a tokenização, um processo que divide frases ou pedaços maiores de texto em tokens individuais. Em seguida, cada token exclusivo recebe um ID numérico. Isso permite que o modelo trabalhe com o texto em forma de números. Quando você cria um token, um modelo de linguagem grande (LLM) pode processar as relações estatísticas entre os tokens e produzir o próximo token mais provável em uma sequência de tokens.

Modelos compatíveis

Os modelos de fundação a seguir permitem receber uma lista de tokens e IDs de token:

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

Receber uma lista de tokens e IDs de token de um comando

É possível receber uma lista de tokens e IDs de token usando a API Vertex AI.

REST

Para receber uma lista de tokens e IDs de tokens de um comando usando a API Vertex AI, envie uma solicitação POST para o endpoint do modelo do editor.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto.
  • MODEL_ID: o nome do modelo em que você quer processar os tokens do comando. Estas são as opções de modelo de fundação:
    • text-bison
    • chat-bison
    • textembedding-gecko
    • code-bison
    • codechat-bison
    • code-gecko
    É possível especificar uma versão estável anexando um número de versão ao nome do modelo, como @001 para o nome do modelo. Também é possível especificar uma versão mais recente sem anexar um número de versão ao nome do modelo. Para saber quais versões de modelo *estável* estão disponíveis, consulte Versões de modelo estável disponíveis.
  • PROMPT: o comando que terá os tokens processados. (Não adicione citações diretas ao redor deste comando.)

Método HTTP e URL:

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

Corpo JSON da solicitação:

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

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

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

Depois execute o comando a seguir para enviar a solicitação 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

Os tokens de saída são representados na string base64. Para melhorar a legibilidade, é possível converter a saída de volta em uma string normal. Veja um exemplo:


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

Exemplo de comando 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"'"}
  ],
}'

Preços e cotas

Não há cobrança pelo uso da API ComputeTokens. Há uma restrição de cota de 3.000 solicitações por minuto, a mesma cota para a API CountTokens.

A seguir