カテゴリ:

文字列とバイナリ関数 (大規模言語モデル)

COUNT_TOKENS (SNOWFLAKE.CORTEX)

引数で指定された大規模言語モデルまたはタスク固有の関数のプロンプトのトークン数を返します。この関数は微調整済みモデルをサポートしていません。

構文

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

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

引数

必須:

model_name

トークン数の基にしたいモデルの名前。次の値のいずれかを指定します。

  • 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

関数名

タスク固有関数 のいずれかの名前。次の値のいずれかを指定します。

  • extract_answer

  • sentiment

  • summarize

  • translate

関数名は小文字でなければならないことに注意してください。

input_text

トークンを数えるテキストを入力。

戻り値

指定されたモデルまたは関数に基づいて、入力テキスト内のトークン数を INT , INTEGER , BIGINT , SMALLINT , TINYINT , BYTEINT 型で返します。

使用上の注意

  • 関数名が指定された場合、トークン数はその関数が使用するモデルに基づいてカウントされます。

  • 関数名を指定する場合は、小文字を使用します。

snowflake-arctic モデルに基づいて、プロンプト what is a large language model? のトークン数を取得します。

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

SUMMARIZE 関数で使用されたモデルに基づいて、 mytableprompt 列の各プロンプトのトークン数を取得します。

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 |
+-----------+

翻訳したいテキストのトークン数を取得します。

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