Ottieni numero di token e caratteri fatturabili

I modelli di IA generativa suddividono i dati di testo in unità chiamate token per l'elaborazione. Il modo in cui i dati di testo vengono convertiti in token dipende dall'utilizzatore del tokenizer. Un token può essere costituito da caratteri, parole o frasi. Ogni modello ha un valore massimo numero di token che può gestire in un prompt e una risposta. Questa pagina mostra come ottenere il conteggio dei token e il numero di caratteri fatturabili per un richiesta.

Modelli supportati

I seguenti modelli di base supportano il conteggio dei token prompt:

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

Per scoprire come ottenere il conteggio dei token dei prompt per i modelli Gemini, consulta le ricevi istruzioni per il conteggio dei token per l'API Gemini di Vertex AI.

Ottieni il conteggio dei token per un prompt

Puoi ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API countTokens. Il formato di input per countTokens dipende da il modello che utilizzi. Ogni formato di input è uguale al formato di input predict.

text-bison

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: inserisci una regione supportata. Per l'elenco completo delle regioni supportate, consulta Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • PROMPT: la richiesta per ottenere il conteggio dei token e i costi fatturabili caratteri per. Non aggiungere virgolette intorno al prompt qui.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/text-bison:countTokens

Corpo JSON della richiesta:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

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

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

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

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/text-bison:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 12,
  "totalBillableCharacters": 54
}

Comando curl di esempio

PROJECT_ID="PROJECT_ID"

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/text-bison:countTokens -d \
$'{
  "instances": [
    { "prompt": "Give me ten interview questions for the role of program manager." },
    { "prompt": "List some good qualities for a program manager." }
  ]
}'

chat-bison

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: inserisci una regione supportata. Per l'elenco completo delle regioni supportate, consulta Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • CONTEXT: facoltativo. Il contesto può essere costituito da istruzioni che fornisci al modello su come deve rispondere o da informazioni che utilizza o a cui fa riferimento per generare una risposta. Aggiungi contesto nel prompt, quando devi fornire informazioni al modello, limita i confini delle risposte solo a ciò che c'è all'interno del contesto.
  • EXAMPLE_AUTHOR_1: l'autore di EXAMPLE_INPUT (l'utente).
  • EXAMPLE_INPUT: esempio di messaggio.
  • EXAMPLE_AUTHOR_2: l'autore di EXAMPLE_OUTPUT (il bot).
  • EXAMPLE_OUTPUT: esempio di risposta ideale.
  • AUTHOR_1: l'autore del messaggio (l'utente).
  • CONTENT: i contenuti del messaggio.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/chat-bison:countTokens

Corpo JSON della richiesta:

{
  "instances": [
    {
      "context": "CONTEXT",
      "examples": [
        {
          "input": {
            "author": "EXAMPLE_AUTHOR_1",
            "content": "EXAMPLE_INPUT"
          },
          "output": {
            "author": "EXAMPLE_AUTHOR_2",
            "content": "EXAMPLE_OUTPUT"
          }
        }
      ],
      "messages": [
        {
          "author": "AUTHOR_1",
          "content": "CONTENT"
        }
      ]
    }
  ]
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

cat > request.json << 'EOF'
{
  "instances": [
    {
      "context": "CONTEXT",
      "examples": [
        {
          "input": {
            "author": "EXAMPLE_AUTHOR_1",
            "content": "EXAMPLE_INPUT"
          },
          "output": {
            "author": "EXAMPLE_AUTHOR_2",
            "content": "EXAMPLE_OUTPUT"
          }
        }
      ],
      "messages": [
        {
          "author": "AUTHOR_1",
          "content": "CONTENT"
        }
      ]
    }
  ]
}
EOF

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

@'
{
  "instances": [
    {
      "context": "CONTEXT",
      "examples": [
        {
          "input": {
            "author": "EXAMPLE_AUTHOR_1",
            "content": "EXAMPLE_INPUT"
          },
          "output": {
            "author": "EXAMPLE_AUTHOR_2",
            "content": "EXAMPLE_OUTPUT"
          }
        }
      ],
      "messages": [
        {
          "author": "AUTHOR_1",
          "content": "CONTENT"
        }
      ]
    }
  ]
}
'@  | Out-File -FilePath request.json -Encoding utf8

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/chat-bison:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 43,
  "totalBillableCharacters": 182
}

Comando curl di esempio

PROJECT_ID="PROJECT_ID"

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/chat-bison:countTokens -d \
$'{
  "instances": [
    {
      "context": "You are Captain Bartholomew, the most feared pirate dog of the seven seas.",
      "examples": [
        {
          "input": {
            "author": "User",
            "content": "Hello!"
          },
          "output": {
            "author": "Captain Barktholomew",
            "content": "Argh! What brings ye to my ship?"
          }
        },
        {
          "input": {
            "author": "User",
            "content": "Who are you?"
          },
          "output": {
            "author": "Captain Barktholomew",
            "content": "I be Captain Barktholomew, the most feared pirate dog of the seven seas."
          }
        }
      ],
      "messages": [
        {
          "author": "User",
          "content": "Hello!"
        },
        {
          "author": "Captain Barktholomew",
          "content": "Ahoy there, landlubber! What brings ye to me ship?"
        },
        {
          "author": "User",
          "content": "Can you tell me a tale of your most recent adventure?"
        },
        {
          "author": "Captain Barktholomew",
          "content": "Aye, I\'ll spin ye a tale of me latest adventure....",
        },
        {
          "author": "User",
          "content": "I\'m listening."
        }
      ]
    }
  ]
}'

code-bison

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: inserisci una regione supportata. Per l'elenco completo delle regioni supportate, consulta Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • PREFIX: Per i modelli di codice, prefix rappresenta l'inizio di una porzione di un codice di programmazione significativo o un prompt in linguaggio naturale che descrive il codice essere generati.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/code-bison:countTokens

Corpo JSON della richiesta:

{
  "instances": [
    {
      "prefix": "PREFIX"
    }
  ]
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

cat > request.json << 'EOF'
{
  "instances": [
    {
      "prefix": "PREFIX"
    }
  ]
}
EOF

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

@'
{
  "instances": [
    {
      "prefix": "PREFIX"
    }
  ]
}
'@  | Out-File -FilePath request.json -Encoding utf8

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/code-bison:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 43,
  "totalBillableCharacters": 182
}

Comando curl di esempio

PROJECT_ID=PROJECT_ID

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/code-bison:countTokens -d \
$'{
  "instances": [
    {
      "prefix": "Write a function that checks if a year is a leap year."
    }
  ]
}'

codechat-bison

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: inserisci una regione supportata. Per l'elenco completo delle regioni supportate, vedi Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • AUTHOR: l'autore del messaggio.
  • CONTENT: i contenuti del messaggio.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/codechat-bison:countTokens

Corpo JSON della richiesta:

{
  "instances": {
    "messages": [
      {
         "author": "AUTHOR",
         "content": "CONTENT"
      }
    ]
  }
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

cat > request.json << 'EOF'
{
  "instances": {
    "messages": [
      {
         "author": "AUTHOR",
         "content": "CONTENT"
      }
    ]
  }
}
EOF

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

@'
{
  "instances": {
    "messages": [
      {
         "author": "AUTHOR",
         "content": "CONTENT"
      }
    ]
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/codechat-bison:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 43,
  "totalBillableCharacters": 182
}

Comando curl di esempio

PROJECT_ID=PROJECT_ID

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/codechat-bison:countTokens -d \
$'{
  "instances": {
    "messages": [
      {
        "author": "user",
        "content": "Hi, how are you?"
      },
      {
        "author": "system",
        "content": "I am doing good. What Can I help you with in the coding world?"
      },
      {
        "author": "user",
        "content": "Please help write a function to calculate the min of two numbers"
      }
    ]
  }
}'

code-gecko

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: Inserisci una regione supportata. Per l'elenco completo delle regioni supportate, vedi Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • PREFIX: per i modelli di codice, prefix rappresenta l'inizio di un frammento di codice di programmazione significativo o un prompt in linguaggio naturale che descrive il codice da generare. Il modello tenta di inserire il codice tra le prefix e suffix.
  • SUFFIX: Per il completamento del codice, suffix rappresenta la fine di una porzione di un codice di programmazione significativo. Il modello tenta di compilare il codice tra prefix e suffix.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/code-gecko:countTokens

Corpo JSON della richiesta:

{
  "instances": [
    {
      "prefix": "PREFIX",
      "suffix": "SUFFIX"
    }
  ]
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

cat > request.json << 'EOF'
{
  "instances": [
    {
      "prefix": "PREFIX",
      "suffix": "SUFFIX"
    }
  ]
}
EOF

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

@'
{
  "instances": [
    {
      "prefix": "PREFIX",
      "suffix": "SUFFIX"
    }
  ]
}
'@  | Out-File -FilePath request.json -Encoding utf8

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/code-gecko:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 43,
  "totalBillableCharacters": 182
}

Comando curl di esempio

PROJECT_ID=PROJECT_ID

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/code-gecko:countTokens -d \
$'{
  "instances": [
    {
      "prefix": "def reverse_string(s):",
      "suffix": ""
    }
  ]
}'

textembedding-gecko

REST

Per ottenere il conteggio dei token e il numero di caratteri fatturabili per un prompt utilizzando l'API Vertex AI, invia una richiesta POST all'endpoint del modello del publisher.

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • LOCATION: Inserisci una regione supportata. Per l'elenco completo delle regioni supportate, consulta Località disponibili.
  • PROJECT_ID: il tuo ID progetto.
  • TEXT: il testo per cui vuoi generare gli incorporamenti.

Metodo HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/textembedding-gecko:countTokens

Corpo JSON della richiesta:

{
  "instances": [
    {
      "content": "TEXT"
    }
  ]
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

cat > request.json << 'EOF'
{
  "instances": [
    {
      "content": "TEXT"
    }
  ]
}
EOF

Quindi, esegui questo comando per inviare la richiesta REST:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

@'
{
  "instances": [
    {
      "content": "TEXT"
    }
  ]
}
'@  | Out-File -FilePath request.json -Encoding utf8

Quindi, esegui questo comando per inviare la richiesta 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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/textembedding-gecko:countTokens" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente.

{
  "totalTokens": 43,
  "totalBillableCharacters": 182
}

Comando curl di esempio

PROJECT_ID=PROJECT_ID

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/textembedding-gecko:countTokens -d \
$'{
  "instances": [
    {
      "content": "What is life?"
    }
  ]
}'

Prezzi e quote

Non è previsto alcun costo per l'utilizzo dell'API CountTokens. La quota massima per le API CountTokens e ComputeTokens è di 3000 richieste al minuto.

Passaggi successivi