- Categorias:
Funções de cadeia de caracteres e binários (funções de AI)
AI_COUNT_TOKENS¶
Nota
AI_COUNT_TOKENS é a versão atualizada do COUNT_TOKENS (SNOWFLAKE.CORTEX). Para obter a funcionalidade mais recente, use AI_COUNT_TOKENS.
Retorna o número de tokens em um prompt para o modelo de linguagem grande especificado ou função específica da tarefa.
Sintaxe¶
AI_COUNT_TOKENS(<function_name>, <model_name> , <input_text> ) AI_COUNT_TOKENS(<function_name>, <input_text> ) AI_COUNT_TOKENS(<function_name>, <input_text>, <categories> ) Argumentos¶
Obrigatório:
function_nameCadeia de caracteres contendo o nome da função na qual você deseja basear a contagem de tokens, como
'ai_complete'ou'ai_sentiment'. O nome da função deve começar com «ai_» e usar apenas letras minúsculas.Uma lista completa de funções aceitas está disponível na tabela Disponibilidade regional.
input_textInsira o texto para contar os tokens.
Opcional:
model_nameCadeia de caracteres contendo o nome do modelo no qual você deseja basear o conteúdo do token. Obrigatório se a função especificada por
function_nameexigir que você escolha o modelo a ser utilizado, como AI_COMPLETE ou AI_EMBED.Uma lista de modelos de LLM disponíveis está na tabela Disponibilidade regional. No entanto, nem todos os modelos são aceitos atualmente.
Para AI_COMPLETE, os seguintes modelos não são aceitos:
claude-4-opus
claude-4-sonnet
claude-3-7-sonnet
claude-3-5-sonnet
openai-gpt-4.1
openai-o4-mini
Para AI_EMBED, os seguintes modelos não são aceitos:
snowflake-arctic-embed-l-v2.0-8k
categoriesUma matriz de valores VARIANT que especifica uma ou mais categorias ou rótulos a serem utilizados, para funções que exigem esses dados. As categorias são incluídas na contagem de tokens de entrada.
Retornos¶
Um valor INTEGER que é o número de tokens de texto de entrada calculado usando os valores de parâmetro fornecidos.
Notas de uso¶
Use apenas letras minúsculas nos nomes de funções e modelos.
COUNT_TOKENS não funciona com funções de LLM no namespace SNOWFLAKE.CORTEX ou com modelos ajustados. Você deve especificar um nome de função que comece com «AI_».
COUNT_TOKENS aceita apenas texto, não imagens ou entradas de áudio.
COUNT_TOKENS não usa cobrança baseada em tokens e incorre apenas em custos de computação.
COUNT_TOKENS está disponível em todas as regiões, mesmo para modelos indisponíveis em uma determinada região.
Exemplos¶
Exemplo de AI_COMPLETE¶
A instrução SQL a seguir conta o número de tokens em um prompt para AI_COMPLETE e o modelo llama3.3-70b:
SELECT AI_COUNT_TOKENS('ai_complete', 'llama3.3-70b', 'Summarize the insights from this call transcript in 20 words: "I finally splurged on these after months of hesitation about the price, and I\'m mostly impressed. The Nulu fabric really is as buttery-soft as everyone says, and they\'re incredibly comfortable for yoga and lounging. The high-rise waistband stays put and doesn\'t dig in, which is rare for me. However, I\'m already seeing some pilling after just a few wears, and they definitely require gentle care. They\'re also quite delicate - I snagged them slightly on my gym bag zipper. Great for low-impact activities, but I wouldn\'t recommend for high-intensity workouts. Worth it for the comfort factor"'); Resposta:
158 Exemplo de AI_EMBED¶
A instrução SQL a seguir conta o número de tokens no texto que está sendo incorporado usando a função AI_EMBED e o modelo nv-embed-qa-4':
SELECT AI_COUNT_TOKENS('ai_embed', 'nv-embed-qa-4', '"I finally splurged on these after months of hesitation about the price, and I\'m mostly impressed. The Nulu fabric really is as buttery-soft as everyone says, and they\'re incredibly comfortable for yoga and lounging. The high-rise waistband stays put and doesn\'t dig in, which is rare for me. However, I\'m already seeing some pilling after just a few wears, and they definitely require gentle care. They\'re also quite delicate - I snagged them slightly on my gym bag zipper. Great for low-impact activities, but I wouldn\'t recommend for high-intensity workouts. Worth it for the comfort factor"'); Resposta:
142 Exemplos AI_CLASSIFY¶
Este exemplo calcula o número total de tokens de entrada necessários para a classificação de texto com a entrada e os rótulos fornecidos:
SELECT AI_COUNT_TOKENS('ai_classify', 'One day I will see the world and learn to cook my favorite dishes', [ {'label': 'travel'}, {'label': 'cooking'}, {'label': 'reading'}, {'label': 'driving'} ] ); Resposta:
187 O exemplo a seguir adiciona descrições por rótulo e uma descrição geral da tarefa ao exemplo anterior:
SELECT AI_COUNT_TOKENS('ai_classify', 'One day I will see the world and learn to cook my favorite dishes', [ {'label': 'travel', 'description': 'content related to traveling'}, {'label': 'cooking','description': 'content related to food preparation'}, {'label': 'reading','description': 'content related to reading'}, {'label': 'driving','description': 'content related to driving a car'} ], { 'task_description': 'Determine topics related to the given text' }; Resposta:
254 O exemplo a seguir se baseia nos dois exemplos anteriores, adicionando exemplos de rótulos:
SELECT AI_COUNT_TOKENS('ai_classify', 'One day I will see the world and learn to cook my favorite dishes', [ {'label': 'travel', 'description': 'content related to traveling'}, {'label': 'cooking','description': 'content related to food preparation'}, {'label': 'reading','description': 'content related to reading'}, {'label': 'driving','description': 'content related to driving a car'} ], { 'task_description': 'Determine topics related to the given text', 'examples': [ { 'input': 'i love traveling with a good book', 'labels': ['travel', 'reading'], 'explanation': 'the text mentions traveling and a good book which relates to reading' } ] } ); Resposta:
298 Exemplos AI_SENTIMENT¶
A instrução SQL a seguir conta o número de tokens no texto que está sendo analisado em busca de sentimento usando a função AI_SENTIMENT:
SELECT AI_COUNT_TOKENS('ai_sentiment', 'This place makes the best truffle pizza in the world! Too bad I cannot afford it'); Resposta:
139 O exemplo a seguir adiciona rótulos ao exemplo anterior:
SELECT AI_COUNT_TOKENS('ai_sentiment', 'This place makes the best truffle pizza in the world! Too bad I cannot afford it', [ {'label': 'positive'}, {'label': 'negative'}, {'label': 'neutral'} ] ); Resposta:
148 Avisos legais¶
Consulte AI e ML Snowflake.