Categorias:

Funções de cadeia de caracteres e binários (Large Language Model)

AI_COMPLETE (Imagem única)

Nota

AI_COMPLETE é a versão atualizada do COMPLETE (SNOWFLAKE.CORTEX). Para obter a funcionalidade mais recente, use AI_COMPLETE.

Gera uma resposta (conclusão) para um prompt de texto usando um modelo de linguagem compatível.

Sintaxe

A função contém dois argumentos obrigatórios e quatro argumentos opcionais. A função pode ser usada com a sintaxe de argumentos posicionais ou nomeados.

Uso do AI_COMPLETE com uma única entrada de imagem

AI_COMPLETE(
    <model>, <predicate>, <file> [, <model_parameters> ] )
Copy

Argumentos

model

Uma cadeia de caracteres especificando o modelo a ser usado. Especifique um dos seguintes modelos:

  • claude-4-opus

  • claude-4-sonnet

  • claude-3-7-sonnet

  • claude-3-5-sonnet

  • llama-4-maverick

  • llama-4-scout

  • pixtral-large

Os modelos suportados podem ter custos diferentes.

predicate

Um prompt de cadeia de caracteres

file

Um objeto do tipo FILE que representa uma imagem

model_parameters Um objeto contendo zero ou mais das seguintes opções que afetam os hiperparâmetros do modelo. Consulte Configurações do LLM.

  • temperature: um valor de 0 a 1 (inclusive) que controla a aleatoriedade da saída do modelo de linguagem. Uma temperatura mais alta (por exemplo, 0,7) resulta em uma saída mais diversificada e aleatória, enquanto uma temperatura mais baixa (como 0,2) torna a saída mais determinística e focada.

    Padrão: 0

  • top_p: um valor de 0 a 1 (inclusive) que controla a aleatoriedade e a diversidade do modelo de linguagem, geralmente usado como alternativa a temperature. A diferença é que top_p restringe o conjunto de possíveis tokens gerados pelo modelo, enquanto temperature influencia quais tokens são escolhidos em cada etapa.

    Padrão: 0

  • max_tokens: define o número máximo de tokens de saída na resposta. Valores pequenos podem resultar em respostas truncadas.

    Padrão: 4096 Valor máximo permitido: 8192

  • guardrails: filtra respostas potencialmente inseguras e prejudiciais de um modelo de linguagem usando o Cortex Guard. TRUE ou FALSE. O valor padrão é FALSE.

Retornos

Retorna a resposta da cadeia de caracteres do modelo de linguagem.

Exemplos

Os exemplos a seguir demonstram os recursos básicos da função COMPLETE com imagens.

Resposta visual a perguntas

Um gráfico de taxas de inflação é usado para responder a uma pergunta sobre os dados.

Gráfico das taxas de inflação em 2023 com estimativas para 2024

Comparação entre as taxas de inflação em 2023 e em 2024 (Statista)

SELECT AI_COMPLETE('claude-3-5-sonnet',
    'Which country will observe the largest inflation change in 2024 compared to 2023?',
    TO_FILE('@myimages', 'highest-inflation.png'));
Copy

Resposta:

Looking at the data, Venezuela will experience the largest change in inflation rates between 2023 and 2024.
The inflation rate in Venezuela is projected to decrease significantly from 337.46% in 2023 to 99.98% in 2024,
representing a reduction of approximately 237.48 percentage points. This is the most dramatic change among
all countries shown in the chart, even though Zimbabwe has higher absolute inflation rates.

Extração de entidades de uma imagem

Este exemplo extrai as entidades (objetos) de uma imagem e retorna os resultados no formato JSON.

Fotografia da cozinha após a reforma
SELECT AI_COMPLETE('claude-3-5-sonnet',
    'Extract the kitchen appliances identified in this image. Respond in JSON only with the identified appliances.',
    TO_FILE('@myimages', 'kitchen.png'));
Copy

Resposta:

{
    "appliances": [ "microwave","electric stove","oven","refrigerator" ]
}

Notas de uso para o processamento de imagens

  • Somente texto e imagens são suportados. Não há suporte para arquivos de vídeo e áudio.

  • Formatos de imagem suportados:

    • .jpg

    • .jpeg

    • .png

    • .gif

    • .webp

    • Os modelos pixtral e llama4 e também oferecem suporte a .bmp.

  • O tamanho máximo da imagem é 10 MB para a maioria dos modelos e 3,75 MB para os modelos claude. Os modelos claude não oferecem suporte a imagens com resoluções acima de 8000x8000.

  • O estágio que contém as imagens deve ter a criptografia do lado do servidor ativada. Não há suporte para estágios criptografados no lado do cliente.

  • A função não é compatível com políticas de rede personalizadas.

  • Os nomes dos estágios não diferenciam maiúsculas de minúsculas; os caminhos diferenciam maiúsculas de minúsculas.