VECTOR_TRUNCATE¶
将 VECTOR 截断到更小的维度。
也可以通过别名 VECTOR_TRUNC 调用此函数。
- 另请参阅:
语法¶
VECTOR_TRUNCATE( <vector>, <dimension> )
实参¶
vector要截断的单个 VECTOR 值。
dimension返回向量中应包含的元素数。
返回¶
返回一个与第一个 dimension 条目具有相同值和类型的 VECTOR 值,其余部分丢弃。
使用说明¶
当任何输入为 NULL 时返回 NULL。
使用大于
vector中的维度数的dimension会导致错误。截断向量未规范化。
示例¶
此示例演示如何将 3 维向量截断为 2 维向量:
SELECT VECTOR_TRUNCATE([1, 2, 3]::VECTOR(INT, 3), 2);
[1,2]
此示例演示了截断 EMBED_TEXT_768 为文本“Analytical databases are typically column-oriented rather than row-oriented”生成的向量,其中 snowflake-arctic-embed-m-v1.5 模型从 768 个元素减少到 256 个元素:
SELECT VECTOR_TRUNCATE(
SNOWFLAKE.CORTEX.EMBED_TEXT_768(
'snowflake-arctic-embed-m-v1.5',
'Analytical databases are typically column-oriented rather than row-oriented'
),
256)
;