vsql_ai elimina o meio chamando o modelo a partir do SQL. Duas funções dão
conta disso, uma para um prompt e outra para um embedding. A função de prompt
funciona com Anthropic Claude, Google Gemini, OpenAI ou um modelo executado
localmente por meio do Ollama. A função de embedding funciona com todos esses,
exceto a Anthropic.
Instalar
Ovsql_ai.veb já está no diretório lib/veb/ do servidor se você instalou o
VillageSQL com o script de instalação, a imagem Docker ou um tarball de
release. Instale-o no servidor com uma única instrução:
O que ela adiciona
provider é anthropic, google, openai ou local. Um modelo local é
executado por meio do Ollama e recebe uma chave de API vazia. O ai_embedding
oferece suporte a modelos do Google, da OpenAI e locais.
Exemplo
Faça uma pergunta a um modelo local:No VillageSQL 0.0.6 e anteriores, o resultado carrega o conjunto de
caracteres binary, e duas coisas decorrem disso. Uma função JSON ou uma
coluna
JSON o rejeita, então o exemplo de embedding acima falha ali com
ERROR 3144 (22032): Cannot create a JSON value from a string with CHARACTER SET 'binary'. Dentro de JSON_OBJECT() ou JSON_ARRAY() ele é aceito, mas
codificado em base64, então SELECT JSON_OBJECT('v', ai_prompt(...)) retorna
{"v": "base64:type15:UGFyaXMu"}. Envolva a chamada em
CONVERT(... USING utf8mb4) nessas versões. Isso não é necessário no 0.0.7
e posteriores, onde os exemplos acima rodam como estão escritos.Veja também
- Configurando uma chave de API de IA — onde colocar a chave e como mantê-la fora dos logs
- Prompts de IA no MySQL — padrões de prompting que sobrevivem ao contato com uma tabela
- Gerando embeddings vetoriais — armazenar vetores e pesquisá-los
- Instalar extensões — como o
INSTALL EXTENSIONfunciona e onde o servidor procura um bundle - Extensões disponíveis — o catálogo completo
- villagesql/vsql-ai — código-fonte, instruções de compilação e as limitações conhecidas