vsql_ai 通过从 SQL 直接调用模型省去了中间环节。
两个函数就能覆盖这些工作,一个用于提示,一个用于嵌入。
提示函数可用于 Anthropic Claude、Google Gemini、OpenAI,或通过 Ollama
在本地运行的模型。嵌入函数可用于除 Anthropic 之外的所有这些提供商。
安装
如果您使用安装脚本、Docker 镜像或发行版压缩包安装了 VillageSQL,vsql_ai.veb 已经位于服务器的 lib/veb/ 目录中。
用一条语句将它安装到服务器中:
新增内容
provider 为 anthropic、google、openai 或 local。本地模型通过
Ollama 运行,API 密钥留空即可。ai_embedding 支持 Google、OpenAI 和
本地模型。
示例
向本地模型提问:在 VillageSQL 0.0.6 及更早版本上,结果带有 binary 字符集,
由此产生两个后果。JSON 函数或
JSON 列会拒绝它,因此上面的嵌入示例
在这些版本上会失败并报
ERROR 3144 (22032): Cannot create a JSON value from a string with CHARACTER SET 'binary'.。在 JSON_OBJECT() 或 JSON_ARRAY() 内部它会被接受,
但会被 base64 编码,因此 SELECT JSON_OBJECT('v', ai_prompt(...)) 得到
{"v": "base64:type15:UGFyaXMu"}。在这些版本上,请用
CONVERT(... USING utf8mb4) 包装调用。在 0.0.7 及更高版本上不需要这样做,
上面的示例可以按原样运行。另请参阅
- 设置 AI API 密钥 — 密钥放在哪里,以及如何让它不进入日志
- MySQL 中的 AI 提示 — 在真实表上经得起考验的提示模式
- 生成向量嵌入 — 存储向量并搜索它们
- 安装扩展 —
INSTALL EXTENSION如何工作,以及服务器在哪里查找包 - 可用扩展 — 完整目录
- villagesql/vsql-ai — 源代码、构建说明和已知限制