Gostaria de usar uma função apoc com uma WITH
instrução, mas sempre recebo um erro. Quando chamamos a função diretamente em uma CALL
instrução, isso está funcionando:
CALL apoc.ml.openai.embedding(['Some Text'], ...
Mas quando incluo a chamada de função em uma WITH
instrução
MATCH (movie:Movie) WHERE movie.tagline IS NOT NULL
WITH movie, apoc.ml.openai.embedding(movie.tagline,
Eu tenho um erro de função desconhecida:message: Unknown function 'apoc.ml.openai.embedding'
qualquer ideia?
apoc.ml.openai.embedding é um procedimento, não uma função. Somente funções podem ser usadas com WITH, os procedimentos requerem CALL. Uma função só pode retornar uma coisa, enquanto os procedimentos podem retornar mais.
Você pode usar SHOW FUNCTIONS e SHOW PROCEDURES para ver o que é uma função e o que é um procedimento.
Desde a versão 5.15 há outro plugin incluído no produto chamado neo4j-genai-plugin-5.XX.0.jar. Tem uma versão do apoc.ml.openai.embedding que funciona como uma função, se chama genai.vector.encode e você pode usar com o WITH como quiser. Isso também está disponível no Aura.