- Kategorien:
Zeichenfolgen- und Binärfunktionen (AI-Funktionen)
AI_COUNT_TOKENS¶
Bemerkung
AI_COUNT_TOKENS ist die aktualisierte Version von COUNT_TOKENS (SNOWFLAKE.CORTEX). Die neueste Funktionalität finden Sie unter AI_COUNT_TOKENS.
Gibt die Anzahl der Token in einer Eingabeaufforderung für das angegebene große Sprachmodell (Large Language Model) oder die aufgabenspezifische Funktion zurück.
Syntax¶
AI_COUNT_TOKENS(<function_name>, <model_name> , <input_text> )
AI_COUNT_TOKENS(<function_name>, <input_text> )
AI_COUNT_TOKENS(<function_name>, <input_text>, <categories> )
Argumente¶
Benötigt:
FunktionsnameZeichenfolge, die den Namen der Funktion enthält, auf der die Token-Zählung basieren soll, z. B.
'ai_complete'oder'ai_sentiment'. Der Name der Funktion muss mit „ai_“ beginnen und darf nur Kleinbuchstaben enthalten.Eine vollständige Liste der unterstützten Funktionen finden Sie in der Tabelle Regionale Verfügbarkeit.
input_textEingabetext, in dem die Token gezählt werden sollen.
Optional:
model_nameZeichenfolge, die den Namen des Modells enthält, auf dem der Token-Inhalt basieren soll. Erforderlich, wenn die durch
function_nameangegebene Funktion erfordert, dass Sie das zu verwendende Modell auswählen, z. B. AI_COMPLETE oder AI_EMBED.Eine Auflistung der verfügbaren LLM-Modelle sind in der Tabelle Regionale Verfügbarkeit verfügbar. Allerdings werden derzeit nicht alle Modelle unterstützt.
Für AI_COMPLETE werden die folgenden Modelle nicht unterstützt:
claude-4-opus
claude-4-sonnet
claude-3-7-sonnet
claude-3-5-sonnet
openai-gpt-4.1
openai-o4-mini
Für AI_EMBED werden die folgenden Modelle nicht unterstützt:
snowflake-arctic-embed-l-v2.0-8k
categoriesEin Array von VARIANT-Werten, die eine oder mehrere Kategorien oder Labels angeben, die für Funktionen verwendet werden sollen, die diese Daten erfordern. Kategorien sind in der Token-Zählung für die Eingabe enthalten.
Rückgabewerte¶
Ein Wert des Typs INTEGER, der die Anzahl der Token des Eingabetexts angibt, die unter Verwendung der angegebenen Parameterwerte berechnet werden.
Nutzungshinweise¶
Verwenden Sie in Funktions- und Modellnamen nur Kleinbuchstaben.
COUNT_TOKENS funktioniert nicht mit LLM -Funktionen im SNOWFLAKE.CORTEX-Namespace oder mit Fine-Tuning-Modellen. Sie müssen einen Funktionsnamen angeben, der mit „AI_“ beginnt.
COUNT_TOKENS akzeptiert nur Text, keine Bilder oder Audioeingaben.
COUNT_TOKENS verwendet keine tokenbasierte Abrechnung und verursacht nur Computekosten.
COUNT_TOKENS ist in allen Regionen verfügbar, auch für Modelle, die in einer bestimmten Region nicht verfügbar sind.
Beispiele¶
AI_COMPLETE-Beispiel¶
Die folgenden SQL-Anweisung zählt die Anzahl der Token in einer Eingabeaufforderung für AI_COMPLETE und das llama3.3-70b-Modell:
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"');
Antwort:
158
AI_EMBED-Beispiel¶
Die folgenden SQL-Anweisung zählt die Anzahl der Token im Text, der mithilfe der AI_EMBED-Funktion und dem nv-embed-qa-4'-Modell eingebettet wird:
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"');
Antwort:
142
AI_CLASSIFY-Beispiele¶
Dieses Beispiel berechnet die Gesamtzahl der Eingabe-Token, die für die Textklassifizierung mit angegebenen Eingaben und Labels erforderlich sind:
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'}
]
);
Antwort:
187
Das folgende Beispiel fügt dem vorherigen Beispiel Beschreibungen pro Label und eine allgemeine Aufgabenbeschreibung hinzu:
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'
};
Antwort:
254
Das folgende Beispiel baut auf den beiden vorherigen Beispielen auf, indem es Beispiele für Labels hinzufügt:
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'
}
]
}
);
Antwort:
298
AI_SENTIMENT-Beispiele¶
Die folgenden SQL-Anweisung zählt die Anzahl der Token im Text, der mithilfe der AI_SENTIMENT-Funktion auf die Stimmung hin analysiert wird:
SELECT AI_COUNT_TOKENS('ai_sentiment',
'This place makes the best truffle pizza in the world! Too bad I cannot afford it');
Antwort:
139
Das folgende Beispiel fügt dem vorherigen Beispiel Labels hinzu:
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'}
]
);
Antwort:
148
Rechtliche Hinweise¶
Weitere Informationen dazu finden Sie unter KI und ML in Snowflake.