Snowflake Cortex AISQL (incluindo as funções LLM)¶
Use o Cortex AISQL no Snowflake para executar análises não estruturadas em textos e imagens com LLMs líderes do setor da OpenAI, Anthropic, Meta, Mistral AI e DeepSeek. O Cortex AISQL é compatível com casos de uso como:
Extração de entidades para enriquecer metadados e agilizar a validação
Agregação de insights sobre os tíquetes dos clientes
Filtragem e classificação de conteúdo por linguagem natural
Análise baseada em sentimentos e aspectos para aprimoramento de serviços
Tradução e localização de conteúdo multilíngue
Análise de documentos para análise e pipelines RAG
Todos os modelos são totalmente hospedados no Snowflake, o que garante desempenho, escalabilidade e governança, além de manter seus dados seguros e no local.
Funções disponíveis¶
Os recursos do Snowflake Cortex são fornecidos como funções SQL e também estão disponíveis em Python. As funções do Cortex AISQL podem ser agrupadas nas seguintes categorias:
Funções AISQL¶
As funções específicas de tarefas são funções criadas e gerenciadas para fins específicos que automatizam tarefas de rotina, como resumos simples e traduções rápidas, que não exigem nenhuma personalização.
AI_COMPLETE: Gera uma conclusão para uma determinada cadeia de caracteres de texto ou imagem usando um LLM selecionado. Use essa função para a maioria das tarefas de AI generativa.
Esta é a versão atualizada de COMPLETE (SNOWFLAKE.CORTEX).
AI_CLASSIFY: classifica texto ou imagem em categorias definidas pelo usuário.
Esta é a versão atualizada de CLASSIFY_TEXT (SNOWFLAKE.CORTEX) com suporte para classificação de imagens e vários rótulos.
AI_FILTER: retorna true (verdadeiro) ou false (falso) para uma determinada entrada de texto ou imagem, permitindo que você filtre os resultados nas cláusulas
SELECT
,WHERE
ouJOIN … ON
.AI_AGG: agrega uma coluna de texto e retorna insights em várias linhas com base em um prompt definido pelo usuário. Essa função não está sujeita às limitações da janela de contexto.
AI_SUMMARIZE_AGG: agrega uma coluna de texto e retorna um resumo de várias linhas. Essa função não está sujeita às limitações da janela de contexto.
AI_SIMILARITY: calcula a similaridade de incorporação entre duas entradas.
PARSE_DOCUMENT (SNOWFLAKE.CORTEX): extrai texto (usando o modo OCR) ou texto com informações de layout (usando o modo LAYOUT) de documentos em um estágio interno ou externo.
TRANSLATE: traduz o texto entre os idiomas compatíveis.
SENTIMENT (SNOWFLAKE.CORTEX): extrai pontuações de sentimento do texto.
EXTRACT_ANSWER (SNOWFLAKE.CORTEX): extrai a resposta para uma pergunta a partir de dados não estruturados, desde que existam os dados relevantes.
SUMMARIZE (SNOWFLAKE.CORTEX): retorna um resumo do texto que você especificou.
Nota
As funções que antes eram chamadas de “funçõesLLM” estão listadas no namespace “SNOWFLAKE.CORTEX”
Funções auxiliares¶
Funções auxiliares são funções gerenciadas e criadas especificamente para reduzir casos de falhas ao executar outras funções de AISQL, por exemplo, obtendo a contagem de tokens em um prompt de entrada para garantir que a chamada não exceda um limite do modelo.
COUNT_TOKENS (SNOWFLAKE.CORTEX): ao receber um texto de entrada, retorna a contagem de tokens com base no modelo ou na função Cortex especificada.
TRY_COMPLETE (SNOWFLAKE.CORTEX): funciona como a função COMPLETE, mas retorna NULL quando a função não pôde ser executada em vez de um código de erro.
Cortex Guard¶
O Cortex Guard é uma opção da função COMPLETE projetada para filtrar possíveis respostas inseguras e prejudiciais de um modelo de linguagem. O Cortex Guard é atualmente construído com o Llama Guard 3 da Meta. O Cortex Guard funciona avaliando as respostas de um modelo de linguagem antes que a saída seja retornada ao aplicativo. Depois de ativar o Cortex Guard, as respostas do modelo de linguagem que podem estar associadas a crimes violentos, ódio, conteúdo sexual, automutilação e muito mais são filtradas automaticamente. Consulte os COMPLETE argumentos para obter a sintaxe e os exemplos.
Nota
O uso do Cortex Guard incorre em taxas de computação com base no número de tokens de entrada processados.
Considerações de desempenho¶
As funções do Cortex AISQL são otimizadas para rendimento. Recomendamos o uso dessas funções para processar várias entradas, como texto de grandes tabelas SQL. O processamento em lote é normalmente mais adequado para funções AISQL. Para casos de uso mais interativos em que a latência é importante, use REST API. Eles estão disponíveis para inferência simples (Complete API), incorporação (Embed API) e aplicativos agênticos (Agents API).
Privilégios obrigatórios¶
A função de banco de dados CORTEX_USER no banco de dados SNOWFLAKE inclui os privilégios que permitem aos usuários chamar funções de AI do Snowflake Cortex. Por padrão, a função CORTEX_USER é concedida à função PUBLIC. A função PUBLIC é concedida automaticamente a todos os usuários e funções, portanto, isto permite que todos os usuários em sua conta usem as funções de AI do Snowflake Cortex.
Se não quiser que todos os usuários tenham esse privilégio, você pode revogar o acesso à função PUBLIC e conceder acesso a funções específicas.
Para revogar a função de banco de dados CORTEX_USER da função PUBLIC, execute os seguintes comandos usando a função ACCOUNTADMIN:
REVOKE DATABASE ROLE SNOWFLAKE.CORTEX_USER
FROM ROLE PUBLIC;
REVOKE IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE
FROM ROLE PUBLIC;
Você poderá então fornecer acesso seletivamente a funções específicas. A função de banco de dados SNOWFLAKE.CORTEX_USER não pode ser concedida diretamente a um usuário. Para obter mais informações, consulte Como usar as funções de banco de dados SNOWFLAKE. Um usuário com a função ACCOUNTADMIN pode conceder esta função a uma função personalizada para permitir que os usuários acessem as funções do Cortex AI. No exemplo a seguir, use a função ACCOUNTADMIN e conceda ao usuário some_user
a função de banco de dados CORTEX_USER por meio da função de conta cortex_user_role
, que você cria para essa finalidade.
USE ROLE ACCOUNTADMIN;
CREATE ROLE cortex_user_role;
GRANT DATABASE ROLE SNOWFLAKE.CORTEX_USER TO ROLE cortex_user_role;
GRANT ROLE cortex_user_role TO USER some_user;
Você também pode conceder acesso às funções de AI do Snowflake Cortex por meio de funções existentes comumente usadas por grupos específicos de usuários. (Consulte Funções do usuário.) Por exemplo, se você criou uma função analyst
usada como função padrão pelos analistas da sua organização, poderá conceder facilmente a esses usuários acesso às funções de AISQL do Snowflake Cortex com uma única instrução GRANT.
GRANT DATABASE ROLE SNOWFLAKE.CORTEX_USER TO ROLE analyst;
Controle o acesso ao modelo¶
Há dois métodos para controlar o acesso aos modelos no Snowflake Cortex. Você pode usar um ou ambos os métodos juntos para obter uma combinação de controle de acesso amplo e refinado:
Lista de permissão de modelos
controle de acesso baseado em função
A lista de permissão de modelos fornece um nível padrão de acesso aos modelos para todos os usuários da conta, que pode ser personalizado usando o parâmetro CORTEX_MODELS_ALLOWLIST
. O controle de acesso baseado em função permite o gerenciamento de acesso refinado, concedendo ou revogando privilégios a objetos de modelo específicos por meio de funções de aplicativo.
O controle de acesso ao modelo está disponível para os seguintes serviços:
Os métodos de controle de acesso com granularidade fina não estão disponíveis para os seguintes serviços:
Cortex Search
Cortex Analyst
Cortex Copilot
Cortex Agents
AI do documento
Lista de permissão de modelos¶
Use o parâmetro CORTEX_MODELS_ALLOWLIST
no comando ALTER ACCOUNT SET
para definir o acesso ao modelo para todos os usuários da conta. Se precisar fornecer acesso a usuários específicos além do que foi especificado na lista de permissões, você deve usar o controle de acesso baseado em função. Para obter mais informações sobre o controle de acesso baseado em função, consulte Controle de acesso baseado em função.
Quando seus usuários fazem uma solicitação, o Snowflake Cortex avalia o parâmetro para determinar se o usuário pode acessar o modelo.
Para o parâmetro CORTEX_MODELS_ALLOWLIST
, você pode definir os seguintes valores:
CORTEX_MODELS_ALLOWLIST = 'All'
fornece acesso a todos os modelos.O comando a seguir fornece acesso de usuário a todos os modelos:
ALTER ACCOUNT SET CORTEX_MODELS_ALLOWLIST = 'All';
CORTEX_MODELS_ALLOWLIST = 'model1,model2,...'
Fornece aos usuários acesso aos modelos especificados em uma lista separada por vírgulas.
O comando a seguir fornece aos usuários acesso aos modelos
mistral-large2
ellama3.1-70b
:ALTER ACCOUNT SET CORTEX_MODELS_ALLOWLIST = 'mistral-large2,llama3.1-70b';
CORTEX_MODELS_ALLOWLIST = 'None'
impede que os usuários acessem qualquer modelo.O comando a seguir impede o acesso do usuário a qualquer modelo:
ALTER ACCOUNT SET CORTEX_MODELS_ALLOWLIST = 'None';
Controle de acesso baseado em função¶
Cada modelo no Snowflake Cortex é um objeto exclusivo no esquema SNOWFLAKE.MODELS com uma função de aplicativo associada. Você pode usar os objetos de modelo e as funções de aplicativo para gerenciar o acesso ao objeto de modelo.
Use o seguinte comando para obter acesso aos modelos mais recentes:
CALL SNOWFLAKE.MODELS.CORTEX_BASE_MODELS_REFRESH();
Em seguida, use o seguinte comando para listar os modelos que estão disponíveis em sua conta Snowflake:
SHOW MODELS IN SNOWFLAKE.MODELS;
O comando retorna uma lista de modelos, como:
created_on |
name |
model_type |
database_name |
schema_name |
owner |
---|---|---|---|---|---|
2025-04-22 09:35:38.558 -0700 |
CLAUDE-3-5-SONNET |
CORTEX_BASE |
SNOWFLAKE |
MODELS |
SNOWFLAKE |
2025-04-22 09:36:16.793 -0700 |
LLAMA3.1-405B |
CORTEX_BASE |
SNOWFLAKE |
MODELS |
SNOWFLAKE |
2025-04-22 09:37:18.692 -0700 |
SNOWFLAKE-ARCTIC |
CORTEX_BASE |
SNOWFLAKE |
MODELS |
SNOWFLAKE |
Use o comando a seguir para listar as funções de aplicativo para esses modelos:
SHOW APPLICATION ROLES IN APPLICATION SNOWFLAKE;
O comando retorna uma lista de funções de aplicativo, como a seguinte:
created_on |
name |
owner |
comment |
owner_role_type |
---|---|---|---|---|
2025-04-22 09:35:38.558 -0700 |
CORTEX-MODEL-ROLE-ALL |
SNOWFLAKE |
MODELS |
APPLICATION |
2025-04-22 09:36:16.793 -0700 |
CORTEX-MODEL-ROLE-LLAMA3.1-405B |
SNOWFLAKE |
MODELS |
APPLICATION |
2025-04-22 09:37:18.692 -0700 |
CORTEX-MODEL-ROLE-SNOWFLAKE-ARCTIC |
SNOWFLAKE |
MODELS |
APPLICATION |
Importante
Se você não vir os modelos ou as funções de aplicativo associadas, acesse CALL SNOWFLAKE.MODELS.CORTEX_BASE_MODELS_REFRESH()
para ter acesso aos modelos mais recentes.
Para conceder acesso a um modelo específico, o usuário concede a função de aplicativo do modelo a uma função de usuário. Por exemplo, é possível conceder CORTEX-MODEL-ROLE-LLAMA3.1-70B
, a função de aplicativo para SNOWFLAKE.MODELS."LLAMA3.1-70B"
, a uma função de usuário. O comando a seguir concede a função de aplicativo CORTEX-MODEL-ROLE-LLAMA3.1-70B
à função de usuário MY_ROLE
:
GRANT APPLICATION ROLE SNOWFLAKE."CORTEX-MODEL-ROLE-LLAMA3.1-70B" TO ROLE MY_ROLE;
Para realizar uma chamada de inferência, use o nome do modelo totalmente qualificado. A seguir, um exemplo de uma chamada que os usuários podem realizar:
SELECT AI_COMPLETE('SNOWFLAKE.MODELS."LLAMA3.1-70B"', 'Hello');
Importante
Quando um usuário faz uma solicitação, o Snowflake Cortex usa primeiro o controle de acesso baseado em função para determinar se o usuário tem acesso ao modelo. Se o usuário não tiver acesso, o Snowflake Cortex avalia CORTEX_MODELS_ALLOWLIST para determinar o acesso ao modelo. Se o modelo estiver na lista de permissões (ou se o valor da lista de permissões estiver definido como 'All'
), o usuário terá acesso ao modelo. Para habilitar o acesso granular a um modelo, remova o nome de modelo de CORTEX_MODELS_ALLOWLIST ou defina-o como 'None'
.
Disponibilidade¶
As funções de AI do Snowflake Cortex estão atualmente disponíveis nas seguintes regiões. Para acessar os LLMs a partir de regiões que não estão listadas, use o parâmetro de inferência entre regiões.
Nota
A função TRY_COMPLETE está disponível nas mesmas regiões que COMPLETE.
A função COUNT_TOKENS está disponível em todas as regiões, mas a inferência do modelo é específica da região, conforme a tabela.
Função
(Modelo)
|
AWS US
(Entre regiões)
|
AWS US West 2
(Oregon)
|
AWS US East 1
(N. Virginia)
|
AWS Europe Central 1
(Frankfurt)
|
AWS Europe West 1
(Ireland)
|
AWS AP Southeast 2
(Sidney)
|
AWS AP Northeast 1
(Tokyo)
|
AWS US East
(Comercial Gov – N. Virginia)
|
Azure East US 2
(Virginia)
|
Azure West Europe
(Países Baixos)
|
AWS EU
(Entre regiões)
|
AWS AWS_APJ
(Entre regiões)
|
Azure US
(Entre regiões)
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
COMPLETE
(
claude-4-sonnet ) |
✔ |
||||||||||||
COMPLETE
(
claude-4-opus ) |
Em versão preliminar |
||||||||||||
COMPLETE
(
claude-3-7-sonnet ) |
✔ |
||||||||||||
COMPLETE
(
claude-3-5-sonnet ) |
✔ |
✔ |
✔ |
||||||||||
COMPLETE
(
llama4-maverick ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
llama4-scout ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
llama3.2-1b ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
llama3.2-3b ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
llama3.1-8b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
COMPLETE
(
llama3.1-70b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
COMPLETE
(
llama3.3-70b ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
snowflake-llama-3.3-70b ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
llama3.1-405b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|||||||
COMPLETE
(
openai-gpt-4.1 ) |
Em versão preliminar |
Em versão preliminar |
|||||||||||
COMPLETE
(
openai-o4-mini ) |
Em versão preliminar |
Em versão preliminar |
|||||||||||
COMPLETE
(
snowflake-llama-3.1-405b ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
snowflake-arctic ) |
✔ |
✔ |
✔ |
✔ |
|||||||||
COMPLETE
(
deepseek-r1 ) |
✔ |
✔ |
|||||||||||
COMPLETE
(
reka-core ) |
✔ |
✔ |
✔ |
||||||||||
COMPLETE
(
reka-flash ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|||||||
COMPLETE
(
mistral-large2 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
COMPLETE
(
mixtral-8x7b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
COMPLETE
(
mistral-7b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
COMPLETE
(
jamba-instruct ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||||||
COMPLETE
(
jamba-1.5-mini ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||||||
COMPLETE
(
jamba-1.5-large ) |
✔ |
✔ |
✔ |
||||||||||
COMPLETE
(
gemma-7b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||||
EMBED_TEXT_768
(
e5-base-v2 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||
EMBED_TEXT_768
(
snowflake-arctic-embed-m ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
EMBED_TEXT_768
(
snowflake-arctic-embed-m-v1.5 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
EMBED_TEXT_1024
(
snowflake-arctic-embed-l-v2.0 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
EMBED_TEXT_1024
(
nv-embed-qa-4 ) |
✔ |
✔ |
|||||||||||
EMBED_TEXT_1024
(
multilingual-e5-large ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
EMBED_TEXT_1024
(
voyage-multilingual-2 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
AI_CLASSIFY TEXT
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
AI_CLASSIFY IMAGE
|
✔ |
✔ |
✔ |
✔ |
|||||||||
AI_FILTER TEXT
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
AI_FILTER IMAGE
|
✔ |
✔ |
✔ |
✔ |
|||||||||
AI_AGG
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
AI_SIMILARITY TEXT
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
AI_SIMILARITY IMAGE
|
✔ |
✔ |
✔ |
✔ |
|||||||||
AI_SUMMARIZE_AGG
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
EXTRACT_ANSWER |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
SENTIMENT |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
ENTITY_SENTIMENT |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||
SUMMARIZE |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
TRANSLATE |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
As seguintes funções de AI do Snowflake Cortex estão atualmente disponíveis nas seguintes regiões estendidas.
Função
(Modelo)
|
AWS US East 2
(Ohio)
|
AWS CA Central 1
(Central)
|
AWS SA East 1
(São Paulo)
|
AWS Europe West 2
(London)
|
AWS Europe Central 1
(Frankfurt)
|
AWS Europe North 1
(Stockholm)
|
AWS AP Northeast 1
(Tokyo)
|
AWS AP South 1
(Mumbai)
|
AWS AP Southeast 2
(Sidney)
|
AWS AP Southeast 3
(Jakarta)
|
Azure South Central US
(Texas)
|
Azure West US 2
(Washington)
|
Azure UK South
(London)
|
Azure North Europe
(Ireland)
|
Azure Switzerland North
(Zürich)
|
Azure Central India
(Pune)
|
Azure Japan East
(Tokyo, Saitama)
|
Azure Southeast Asia
(Singapore)
|
Azure Australia East
(New South Wales)
|
GCP Europe West 2
(London)
|
GCP Europe West 4
(Países Baixos)
|
GCP US Central 1
(Iowa)
|
GCP US East 4
(N. Virginia)
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EMBED_TEXT_768
(
snowflake-arctic-embed-m-v1.5 ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
EMBED_TEXT_768
(
snowflake-arctic-embed-m ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
EMBED_TEXT_1024
(
multilingual-e5-large ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
A tabela a seguir lista modelos de legado. Se você estiver apenas começando, comece com os modelos das tabelas anteriores:
Função
(Modelo)
|
AWS US West 2
(Oregon)
|
AWS US East 1
(N. Virginia)
|
AWS Europe Central 1
(Frankfurt)
|
AWS Europe West 1
(Ireland)
|
AWS AP Southeast 2
(Sidney)
|
AWS AP Northeast 1
(Tokyo)
|
Azure East US 2
(Virginia)
|
Azure West Europe
(Países Baixos)
|
---|---|---|---|---|---|---|---|---|
COMPLETE
(
llama2-70b-chat ) |
✔ |
✔ |
✔ |
✔ |
✔ |
|||
COMPLETE
(
llama3-8b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
||
COMPLETE
(
llama3-70b ) |
✔ |
✔ |
✔ |
✔ |
✔ |
|||
COMPLETE
(
mistral-large ) |
✔ |
✔ |
✔ |
✔ |
✔ |
Considerações sobre custo¶
As funções de AI do Snowflake Cortex incorrem em custos de computação com base no número de tokens processados. Consulte a Tabela de consumo do serviço Snowflake para o custo de cada função em créditos por milhão de tokens.
Um token é a menor unidade de texto processada pelas funções de AI do Snowflake Cortex, aproximadamente igual a quatro caracteres. A equivalência do texto bruto de entrada ou saída com tokens pode variar de acordo com o modelo.
Para funções que geram novo texto na resposta (AI_COMPLETE, AI_CLASSIFY, AI_FILTER, AI_AGG, AI_SUMMARIZE e TRANSLATE), os tokens de entrada e de saída são contados.
Para CORTEX GUARD, somente os tokens de entrada são contados. O número de tokens de entrada é baseado no número de tokens de saída por modelo de LLM usado na função COMPLETE.
Para as funções AI_SIMILARITY, EMBED_*, somente os tokens de entrada são contados.
Para EXTRACT_ANSWER, o número de tokens faturáveis é a soma do número de tokens nos campos
from_text
equestion
.AI_CLASSIFY, AI_FILTER, AI_AGG, AI_SUMMARIZE_AGG, SUMMARIZE, TRANSLATE, EXTRACT_ANSWER, ENTITY_SENTIMENT e SENTIMENT adicionam um prompt ao texto de entrada para gerar a resposta. Como resultado, a contagem de tokens de entrada é maior do que o número de tokens no texto fornecido por você.
Rótulos, descrições e exemplos de AI_CLASSIFY são contados como tokens de entrada para cada registro processado, e não apenas uma vez para cada chamada de AI_CLASSIFY.
Para PARSE_DOCUMENT (SNOWFLAKE.CORTEX), o faturamento é baseado no número de páginas de documentos processadas.
TRY_COMPLETE(SNOWFLAKE.CORTEX) não incorre em custos para tratamento de erro. Isso significa que se a função TRY_COMPLETE(SNOWFLAKE.CORTEX) retornar NULL, nenhum custo será gerado.
COUNT_TOKENS(SNOWFLAKE.CORTEX) incorre em custo de computação apenas para executar a função. Não há custos adicionais baseados em token.
A Snowflake recomenda a execução de consultas que chamem uma função do Snowflake Cortex AISQL ou uma função do Cortex PARSE_DOCUMENT com um warehouse menor (não maior que MEDIUM) porque warehouses maiores não aumentam o desempenho. O custo associado à manutenção de um warehouse ativo continuará a ser aplicado ao executar uma consulta que chama uma função de LLM do Snowflake Cortex. Para obter informações gerais sobre custos de computação, consulte Compreensão do custo de computação.
Acompanhamento de custos para AI de serviços¶
Para rastrear créditos usados para serviços de AI, incluindo funções LLM em sua conta, utilize o Exibição METERING_HISTORY:
SELECT *
FROM SNOWFLAKE.ACCOUNT_USAGE.METERING_DAILY_HISTORY
WHERE SERVICE_TYPE='AI_SERVICES';
Acompanhamento do consumo de crédito para funções de AISQL¶
Para visualizar o consumo de créditos e tokens para cada chamada de função AISQL, use a função Exibição CORTEX_FUNCTIONS_USAGE_HISTORY.
SELECT *
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_FUNCTIONS_USAGE_HISTORY;
Você também pode visualizar o consumo de créditos e tokens para cada consulta em sua conta Snowflake. A visualização do consumo de créditos e tokens de cada consulta ajuda você a identificar as consultas que estão consumindo mais créditos e tokens.
O exemplo de consulta a seguir usa Exibição CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY para mostrar o consumo de crédito e token de todas as consultas em sua conta.
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY;
Você também pode usar a mesma exibição para ver o consumo de créditos e tokens para uma consulta específica.
SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY
WHERE query_id='<query-id>';
Nota
Você não pode obter informações granulares de uso para solicitações feitas com a REST API.
O histórico de uso da consulta é agrupado pelos modelos usados na consulta. Por exemplo, se você executou:
SELECT AI_COMPLETE('mistral-7b', 'Is a hot dog a sandwich'), AI_COMPLETE('mistral-large', 'Is a hot dog a sandwich');
O histórico de uso da consulta mostraria duas linhas, uma para mistral-7b
e outra para mistral-large
.
Cotas de uso¶
Para garantir que todos os clientes Snowflake possam acessar as funcionalidades de LLM, as funções de AI do Snowflake Cortex podem estar sujeitas a limitações durante períodos de alta utilização. As cotas de uso não são aplicadas ao nível da conta.
As solicitações limitadas receberão uma resposta de erro e devem ser tentadas novamente mais tarde.
Nota
As contas Snowflake sob demanda sem um método de pagamento válido (como contas de avaliação) são limitadas a aproximadamente um crédito por dia no uso da função de LLM do Snowflake Cortex. Para remover essa restrição, converta sua conta de avaliação em uma conta paga.
Gerenciamento de custos e limitação¶
Snowflake recomenda usar um tamanho de warehouse não maior que MEDIUM ao chamar funções de AISQL do Snowflake Cortex. Utilizar um warehouse maior do que o necessário não aumenta o desempenho, mas pode resultar em custos desnecessários e num maior risco de limitação. Esta recomendação pode não se aplicar no futuro devido a atualizações futuras do produto.
Restrições de modelo¶
Os modelos usados pelo Snowflake Cortex têm limitações de tamanho conforme descrito na tabela abaixo. Os tamanhos são fornecidos em tokens. Os tokens geralmente representam cerca de quatro caracteres de texto, portanto, o número de palavras correspondentes a um limite é menor que o número de tokens. As entradas que excedem o limite resultam em erro.
O tamanho máximo da saída que um modelo pode produzir é limitado pelo seguinte:
O limite do token de saída do modelo.
O espaço disponível na janela de contexto após o modelo consumir os tokens de entrada.
Por exemplo, claude-3-5-sonnet
tem uma janela de contexto de 200 mil tokens. Se 100 mil tokens forem usados para a entrada, o modelo poderá gerar até 8.192 tokens. No entanto, se 195 mil tokens forem usados como entrada, o modelo só poderá gerar até 5 mil tokens para um total de 200 mil tokens.
Importante
Na região AWS AP Southeast 2 (Sydney):
A janela de contexto para
llama3-8b
emistral-7b
é de 4.096 tokens.A janela de contexto para
llama3.1-8b
é de 16.384 tokens.A janela de contexto do modelo gerenciado Snowflake da função SUMMARIZE é de 4.096 tokens.
Na região AWS Europe West 1 (Ireland):
A janela de contexto para
llama3.1-8b
é de 16.384 tokens.A janela de contexto para
mistral-7b
é de 4.096 tokens.
Função |
Modelo |
Janela de contexto (tokens) |
Funções AISQL de saída máxima (tokens) |
---|---|---|---|
COMPLETE |
|
128,000 |
8,192 |
|
128,000 |
8,192 |
|
|
4,096 |
8,192 |
|
|
32,768 |
8,192 |
|
|
200,000 |
32,000 |
|
|
200,000 |
64,000 |
|
|
200,000 |
8,192 |
|
|
200,000 |
8,192 |
|
|
32,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
1,047,576 |
32,768 |
|
|
200,000 |
100,000 |
|
|
100,000 |
8,192 |
|
|
32,000 |
8,192 |
|
|
256,000 |
8,192 |
|
|
256,000 |
8,192 |
|
|
256,000 |
8,192 |
|
|
32,000 |
8,192 |
|
|
4,096 |
8,192 |
|
|
8,000 |
8,192 |
|
|
8,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
8,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
8,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
128,000 |
8,192 |
|
|
32,000 |
8,192 |
|
|
8,000 |
8,192 |
|
EMBED_TEXT_768 |
|
512 |
n/a |
|
512 |
n/a |
|
EMBED_TEXT_1024 |
|
512 |
n/a |
|
512 |
n/a |
|
|
32,000 |
n/a |
|
AI_FILTER |
Modelo gerenciado do Snowflake |
128,000 |
n/a |
AI_CLASSIFY / CLASSIFY_TEXT |
Modelo gerenciado do Snowflake |
128,000 |
n/a |
AI_AGG |
Modelo gerenciado do Snowflake |
128.000 mil por linha
podem ser usadas em várias linhas
|
8,192 |
AI_SUMMARIZE_AGG |
Modelo gerenciado do Snowflake |
128.000 mil por linha
podem ser usadas em várias linhas
|
8,192 |
ENTITY_SENTIMENT |
Modelo gerenciado do Snowflake |
2,048 |
n/a |
EXTRACT_ANSWER |
Modelo gerenciado do Snowflake |
2,048 para texto
64 para pergunta
|
n/a |
SENTIMENT |
Modelo gerenciado do Snowflake |
512 |
n/a |
SUMMARIZE |
Modelo gerenciado do Snowflake |
32,000 |
4,096 |
TRANSLATE |
Modelo gerenciado do Snowflake |
4,096 |
n/a |
Escolha de um modelo¶
A função COMPLETE do Snowflake Cortex oferece suporte a vários modelos de capacidade, latência e custo variados. Esses modelos foram cuidadosamente escolhidos para se alinharem aos casos de uso comuns dos clientes. Para obter o melhor desempenho por crédito, escolha um modelo que corresponda bem ao tamanho do conteúdo e à complexidade da sua tarefa. Aqui estão breves visões gerais dos modelos disponíveis.
Modelos grandes¶
Se não tiver certeza de por onde começar, experimente primeiro os modelos mais capazes para estabelecer uma linha de base para avaliar outros modelos. claude-3-7-sonnet
, reka-core
e mistral-large2
são os modelos mais capazes oferecidos pelo Snowflake Cortex e lhe darão uma boa ideia do que um modelo de última geração pode fazer.
Claude 3-7 Sonnet
é líder em raciocínio geral e recursos multimodais. Ele supera seus antecessores em tarefas que exigem raciocínio em diferentes domínios e modalidades. Você pode usar sua grande capacidade de saída para obter mais informações de consultas estruturadas ou não estruturadas. Seus recursos de raciocínio e as grandes janelas de contexto o tornam adequado para fluxos de trabalho agênticos.deepseek-r1
é um modelo de base treinado por meio do aprendizado por reforço em larga escala (RL) sem ajuste fino supervisionado (SFT). Ele pode oferecer alto desempenho em tarefas de matemática, código e raciocínio. Para acessar o modelo, defina o parâmetro de inferência entre regiões paraAWS_US
.mistral-large2
é o modelo de linguagem grande mais avançado da Mistral AI e conta com recursos de raciocínio de alto nível. Comparado aomistral-large
, ele é significativamente mais capaz na geração de código, matemática, raciocínio e oferece suporte multilíngue muito mais forte. É ideal para tarefas complexas que exigem grandes recursos de raciocínio ou são altamente especializadas, como geração de texto sintético, geração de código e análise de texto multilíngue.llama3.1-405b
é um modelo de código aberto da família de modelollama3.1
da Meta com uma grande janela de contexto de 128K. Ele se destaca no processamento de documentos longos, suporte multilíngue, geração de dados sintéticos e destilação de modelos.snowflake-llama3.1-405b
é um modelo derivado do modelo de código aberto llama3.1. Ele usa o<SwiftKV optimizations https://www.snowflake.com/en/blog/up-to-75-lower-inference-cost-llama-meta-llm/>
que foi desenvolvido pela equipe de pesquisa do Snowflake AI para proporcionar uma redução de até 75% no custo de inferência. SwiftKV alcança maior desempenho de rendimento com perda mínima de precisão.
Modelos médios¶
llama3.1-70b
é um modelo de código aberto que demonstra um desempenho de última geração, ideal para aplicativos de bate-papo, criação de conteúdo e aplicativos corporativos. É um modelo de alto desempenho e baixo custo que permite diversos casos de uso com uma janela de contexto de 128 mil.llama3-70b
ainda é suportado e tem uma janela de contexto de 8 mil.snowflake-llama3.3-70b
é um modelo derivado do modelo de código aberto llama3.3. Ele usa o<SwiftKV optimizations https://www.snowflake.com/en/blog/up-to-75-lower-inference-cost-llama-meta-llm/>
desenvolvido pela equipe de pesquisa do Snowflake AI para proporcionar uma redução de até 75% no custo de inferência. SwiftKV alcança maior desempenho de rendimento com perda mínima de precisão.snowflake-arctic
é o LLM focado em empresas de alto nível da Snowflake. O Arctic se destaca em tarefas empresariais como geração de SQL, codificação e instruções em conformidade com os parâmetros de comparação.mixtral-8x7b
é ideal para geração de texto, classificação e resposta a perguntas. Os modelos da Mistral são otimizados para baixa latência com baixos requisitos de memória, o que se traduz em maior rendimento para casos de uso empresarial.O modelo
jamba-Instruct
foi criado pela AI21 Labs para atender com eficiência aos requisitos empresariais. Ele é otimizado para oferecer uma janela de contexto de 256 mil tokens com baixo custo e latência, tornando-o ideal para tarefas como resumo, perguntas e respostas e extração de entidade em documentos longos e bases de conhecimento extensas.A família de modelos AI21 Jamba 1.5 é uma instrução híbrida de última geração do SSM-Transformer, que segue modelos básicos. O
jamba-1.5-mini
ejamba-1.5-large
com um comprimento de contexto de 256K oferecem suporte a casos de uso como saída estruturada (JSON) e geração aterrada.
Modelos pequenos¶
Os modelos
llama3.2-1b
ellama3.2-3b
oferecem suporte ao comprimento de contexto de 128 mil tokens e são os mais avançados em sua classe para casos de uso como resumo, acompanhamento de instruções e tarefas de reescrita. Os modelos Llama 3.2 oferecem recursos multilíngues, com suporte para inglês, alemão, francês, italiano, português, hindi, espanhol e tailandês.llama3.1-8b
é ideal para tarefas que exigem raciocínio baixo a moderado. É um modelo leve e ultrarrápido com uma janela de contexto de 128K.llama3-8b
ellama2-70b-chat
ainda são modelos suportados que fornecem uma janela de contexto menor e precisão relativamente mais baixa.mistral-7b
é ideal para tarefas mais simples de resumo, estruturação e resposta a perguntas que precisam ser feitas rapidamente. Ele oferece processamento de baixa latência e alta taxa de transferência para várias páginas de texto com sua janela de contexto de 32K.gemma-7b
é adequado para tarefas simples de conclusão de código e texto. Ele tem uma janela de contexto de 8.000 tokens, mas é surpreendentemente capaz dentro desse limite e bastante econômico.
A tabela a seguir fornece informações sobre o desempenho dos modelos populares em vários parâmetros de comparação, incluindo os modelos oferecidos pelo Snowflake Cortex COMPLETE, bem como alguns outros modelos populares.
Modelo |
Janela de contexto
(Tokens)
|
MMLU
(Raciocínio)
|
HumanEval
(Codificação)
|
GSM8K
(Raciocínio aritmético)
|
Spider 1.0
(SQL)
|
---|---|---|---|---|---|
128,000 |
88,7 |
90,2 |
96,4 |
- |
|
200,000 |
88,3 |
92,0 |
96,4 |
- |
|
128,000 |
88,6 |
89 |
96,8 |
- |
|
32,000 |
83,2 |
76,8 |
92,2 |
- |
|
128,000 |
86 |
80,5 |
95,1 |
- |
|
128,000 |
84 |
92 |
93 |
- |
|
100,000 |
75,9 |
72 |
81 |
- |
|
128,000 |
73 |
72,6 |
84,9 |
- |
|
32,000 |
70,6 |
40,2 |
60,4 |
- |
|
256,000 |
68,2 |
40 |
59,9 |
- |
|
256,000 |
69,7 |
- |
75,8 |
- |
|
256,000 |
81,2 |
- |
87 |
- |
|
4,096 |
67,3 |
64,3 |
69,7 |
79 |
|
128,000 |
49,3 |
- |
44,4 |
- |
|
128,000 |
69,4 |
- |
77,7 |
- |
|
8,000 |
64,3 |
32,3 |
46,4 |
- |
|
32,000 |
62,5 |
26,2 |
52,1 |
- |
|
GPT 3.5 Turbo* |
4,097 |
70 |
48,1 |
57,1 |
- |
Versões anteriores do modelo¶
A função COMPLETE do Snowflake Cortex também é compatível com as seguintes versões de modelos mais antigos. Recomendamos que você use as versões mais recentes do modelo em vez das versões listadas nesta tabela.
Modelo |
Janela de contexto
(Tokens)
|
MMLU
(Raciocínio)
|
HumanEval
(Codificação)
|
GSM8K
(Raciocínio aritmético)
|
Spider 1.0
(SQL)
|
---|---|---|---|---|---|
32,000 |
81,2 |
45,1 |
81 |
81 |
|
4,096 |
68,9 |
30,5 |
57,5 |
- |
Condições de erro¶
As funções de AI do Snowflake Cortex podem produzir as seguintes mensagens de erro.
Mensagem |
Explicação |
---|---|
|
A solicitação foi rejeitada devido à carga excessiva do sistema. Tente sua solicitação novamente. |
|
O objeto |
|
O orçamento de consumo do modelo foi excedido. |
|
O modelo especificado não existe. |
|
O idioma especificado não é compatível com a função TRANSLATE. |
|
A solicitação excedeu o número máximo de tokens suportados pelo modelo (consulte Restrições de modelo). |
|
A solicitação foi limitada devido ao alto nível de utilização. Tente novamente mais tarde. |
|
O número especificado de categorias está acima do limite para AI_CLASSIFY. |
|
O tipo de categoria especificado não é suportado por AI_CLASSIFY. |
|
A entrada para AI_CLASSIFY é uma cadeia de caracteres vazia ou nulo. |
Usando o Snowflake Cortex AISQL com Python¶
Você pode usar as funções do Snowflake Cortex AISQL na Snowpark Python API. Na API, você pode usar as funções para classificar, resumir e filtrar dados de texto e imagem.
Essas funções incluem o seguinte:
ai_agg()
– Agrega uma coluna de texto usando instruções de linguagem natural. Para obter mais informações, consulte AI_AGG.ai_classify()
– Classifica texto ou imagens em categorias personalizadas. Para obter mais informações, consulte AI_CLASSIFY.ai_filter()
– Filtra dados usando linguagem natural. Para obter mais informações, consulte AI_FILTER.
A função ai_agg()
agrega uma coluna de texto usando instruções de linguagem natural de forma semelhante a como você pediria a um analista para resumir ou extrair conclusões de dados agrupados ou não agrupados.
O exemplo a seguir resume as avaliações dos clientes para cada produto usando a função ai_agg()
. A função usa uma coluna de texto e uma instrução de linguagem natural para resumir as avaliações.
from snowflake.snowpark.functions import ai_agg, col
df = session.create_dataframe([
[1, "Excellent product!"],
[1, "Great battery life."],
[1, "A bit expensive but worth it."],
[2, "Terrible customer service."],
[2, "Won’t buy again."],
], schema=["product_id", "review"])
# Summarize reviews per product
summary_df = df.group_by("product_id").agg(
ai_agg(col("review"), "Summarize the customer reviews in one sentence.")
)
summary_df.show()
Nota
Use descrições de tarefas que sejam detalhadas e centralizadas no caso de uso. Por exemplo, “Resuma o feedback do cliente para um relatório do investidor”.
A função ai_classify()
pega um texto ou imagem e o classifica nas categorias que você definir.
O exemplo a seguir classifica as avaliações de viagens em categorias como “viagens” e “culinária”. A função recebe uma coluna de texto e uma lista de categorias para classificar o texto.
from snowflake.snowpark.functions import ai_classify
df = session.create_dataframe([
["I dream of backpacking across South America."],
["I made the best pasta yesterday."],
], schema=["sentence"])
df = df.select(
"sentence",
ai_classify("sentence", ["travel", "cooking"]).alias("classification")
)
df.show()
Nota
Você pode fornecer até 500 categorias. Você pode classificar textos e imagens.
A função ai_filter()
avalia uma condição de linguagem natural e retorna TRUE
ou FALSE
. Você pode usá-lo para filtrar ou marcar linhas.
from snowflake.snowpark.functions import ai_filter, prompt, col
df = session.create_dataframe(["Canada", "Germany", "Japan"], schema=["country"])
filtered_df = df.select(
"country",
ai_filter(prompt("Is {0} in Asia?", col("country"))).alias("is_in_asia")
)
filtered_df.show()
Nota
Você pode filtrar tanto cadeias de caracteres quanto arquivos. Para prompts dinâmicos, use a função prompt(). Para obter mais informações, consulte Referência do Snowpark Python.
As funções existentes do Snowpark ML ainda são compatíveis com o Snowpark ML versão 1.1.2 e posteriores. Consulte Como usar o Snowflake ML localmente para obter instruções sobre como configurar o Snowpark ML.
Se você executar seu script Python fora do Snowflake, deverá criar uma sessão do Snowpark para usar essas funções. Consulte Conexão ao Snowflake para obter instruções.
O exemplo Python a seguir ilustra a chamada de funções de AI do Snowflake Cortex em valores únicos:
from snowflake.cortex import Complete, ExtractAnswer, Sentiment, Summarize, Translate
text = """
The Snowflake company was co-founded by Thierry Cruanes, Marcin Zukowski,
and Benoit Dageville in 2012 and is headquartered in Bozeman, Montana.
"""
print(Complete("llama2-70b-chat", "how do snowflakes get their unique patterns?"))
print(ExtractAnswer(text, "When was snowflake founded?"))
print(Sentiment("I really enjoyed this restaurant. Fantastic service!"))
print(Summarize(text))
print(Translate(text, "en", "fr"))
Você pode passar opções que afetam os hiperparâmetros do modelo ao usar a função COMPLETE. O exemplo em Python a seguir ilustra a chamada da função COMPLETE com uma modificação do número máximo de tokens de saída que o modelo pode gerar:
from snowflake.cortex import Complete,CompleteOptions
model_options1 = CompleteOptions(
{'max_tokens':30}
)
print(Complete("llama3.1-8b", "how do snowflakes get their unique patterns?", options=model_options1))
Você também pode chamar uma função de AI em uma coluna da tabela, conforme mostrado abaixo. Este exemplo requer um objeto de sessão (armazenado em session
) e uma tabela articles
contendo uma coluna de texto abstract_text
e cria uma nova coluna abstract_summary
contendo um resumo do abstract.
from snowflake.cortex import Summarize
from snowflake.snowpark.functions import col
article_df = session.table("articles")
article_df = article_df.withColumn(
"abstract_summary",
Summarize(col("abstract_text"))
)
article_df.collect()
Nota
O formato de bate-papo avançado (várias mensagens) de COMPLETE não é atualmente compatível com Python.
Uso das funções de AI do Snowflake Cortex com Snowflake CLI¶
O Snowflake Cortex AISQL está disponível na Snowflake CLI versão 2.4.0 e posteriores. Consulte Apresentação do Snowflake CLI para obter mais informações sobre o uso de Snowflake CLI.
Os exemplos a seguir ilustram o uso dos comandos snow cortex
em valores únicos. O parâmetro -c
especifica qual conexão usar.
Nota
O formato de bate-papo avançado (multimensagens) de COMPLETE não é suportado atualmente em Snowflake CLI.
snow cortex complete "Is 5 more than 4? Please answer using one word without a period." -c "snowhouse"
snow cortex extract-answer "what is snowflake?" "snowflake is a company" -c "snowhouse"
snow cortex sentiment "Mary had a little Lamb" -c "snowhouse"
snow cortex summarize "John has a car. John's car is blue. John's car is old and John is thinking about buying a new car. There are a lot of cars to choose from and John cannot sleep because it's an important decision for John."
snow cortex translate herb --to pl
Você também pode usar arquivos que contenham o texto que deseja usar para os comandos. Para este exemplo, suponha que o arquivo about_cortex.txt
tenha o seguinte conteúdo:
Snowflake Cortex gives you instant access to industry-leading large language models (LLMs) trained by researchers at companies like Anthropic, Mistral, Reka, Meta, and Google, including Snowflake Arctic, an open enterprise-grade model developed by Snowflake.
Since these LLMs are fully hosted and managed by Snowflake, using them requires no setup. Your data stays within Snowflake, giving you the performance, scalability, and governance you expect.
Snowflake Cortex features are provided as SQL functions and are also available in Python. The available functions are summarized below.
COMPLETE: Given a prompt, returns a response that completes the prompt. This function accepts either a single prompt or a conversation with multiple prompts and responses.
EMBED_TEXT_768: Given a piece of text, returns a vector embedding that represents that text.
EXTRACT_ANSWER: Given a question and unstructured data, returns the answer to the question if it can be found in the data.
SENTIMENT: Returns a sentiment score, from -1 to 1, representing the detected positive or negative sentiment of the given text.
SUMMARIZE: Returns a summary of the given text.
TRANSLATE: Translates given text from any supported language to any other.
Você pode então executar o comando snow cortex summarize
passando o nome do arquivo usando o parâmetro --file
, conforme mostrado:
snow cortex summarize --file about_cortex.txt
Snowflake Cortex offers instant access to industry-leading language models, including Snowflake Arctic, with SQL functions for completing prompts (COMPLETE), text embedding (EMBED\_TEXT\_768), extracting answers (EXTRACT\_ANSWER), sentiment analysis (SENTIMENT), summarizing text (SUMMARIZE), and translating text (TRANSLATE).
Para obter mais informações sobre esses comandos, consulte snow cortex commands.
Avisos legais¶
A classificação dos dados de entradas e saídas é definido na tabela a seguir.
Classificação de dados de entrada |
Classificação de dados de saída |
Designação |
---|---|---|
Usage Data |
Customer Data |
As funções disponíveis ao público em geral são recursos de AI cobertos. As funções em versão preliminar são recursos de AI em versão preliminar. [1] |
Para obter informações adicionais, consulte AI e ML Snowflake.