Kategorien:

Zeichenfolgen- und Binärfunktionen (Large Language Model)

COUNT_TOKENS (SNOWFLAKE.CORTEX)

Gibt die Anzahl der Token in einer Eingabeaufforderung für das große Sprachmodell (Large Language Model) oder die im Argument angegebene aufgabenspezifische Funktion zurück. Diese Funktion unterstützt Fine-Tuning-Modelle nicht.

Syntax

SNOWFLAKE.CORTEX.COUNT_TOKENS( <model_name> , <input_text> )

SNOWFLAKE.CORTEX.COUNT_TOKENS( <function_name> , <input_text> )
Copy

Argumente

Benötigt:

model_name

Name des Modells, auf dem die Token-Zählung basieren soll. Geben Sie einen der folgenden Werte an:

  • snowflake-arctic

  • mistral-large

  • reka-flash

  • reka-core

  • mixtral-8x7b

  • llama2-70b-chat

  • llama3-8b

  • llama3-70b

  • mistral-7b

  • gemma-7b

  • snowflake-arctic-embed-m

  • e5-base-v2

  • nv-embed-qa-4

Funktionsname

Name einer der aufgabenspezifischen Funktionen. Geben Sie einen der folgenden Werte an:

  • extract_answer

  • sentiment

  • summarize

  • translate

Beachten Sie, dass die Funktionsnamen in Kleinbuchstaben geschrieben werden müssen.

input_text

Eingabetext, in dem die Token gezählt werden sollen.

Rückgabewerte

Gibt einen INT , INTEGER , BIGINT , SMALLINT , TINYINT , BYTEINT Typ zurück, der die Anzahl der Token im Eingabetext basierend auf dem angegebenen Modell oder der angegebenen Funktion angibt.

Nutzungshinweise

  • Wenn ein Funktionsname angegeben wird, basiert die Anzahl der Token auf dem Modell, das von der Funktion verwendet wird.

  • Verwenden Sie bei der Angabe eines Funktionsnamens Kleinbuchstaben.

Beispiele

Ermittelt die Anzahl der Token für die Eingabeaufforderung what is a large language model? basierend auf dem Modell snowflake-arctic:

SELECT SNOWFLAKE.CORTEX.COUNT_TOKENS( 'snowflake-arctic', 'what is a large language model?' );
Copy
+---+
| 6 |
+---+

Ermittelt die Anzahl der Token für jede Eingabeaufforderung in der Spalte prompt von mytable basierend auf dem für die Funktion SUMMARIZE verwendeten Modells:

SELECT SNOWFLAKE.CORTEX.COUNT_TOKENS('SUMMARIZE', prompt) FROM mydb.myschema.mytable LIMIT 10;
Copy
+-----------+
| 1 |  1932 |
+-----------+
| 2 |  2379 |
+-----------+
| 3 |  2185 |
+-----------+
| 4 |  1195 |
+-----------+
| 5 |  2908 |
+-----------+
| 6 |  2601 |
+-----------+
| 7 |  2122 |
+-----------+
| 8 |  1720 |
+-----------+
| 9 |  2512 |
+-----------+
| 10 | 1510 |
+-----------+

Ermittelt die Anzahl der Token für einen Text, den Sie übersetzen möchten:

SELECT SNOWFLAKE.CORTEX.COUNT_TOKENS('translate', 'Dies ist ein kurzer Text.');
Copy
+---+
| 9 |
+---+