跳转到主要内容

jev

通过兼容 Jev 的 API 实现自然语言行过滤、排序和分类

概览

扩展包名版本分类许可证语言
jev0.2.1RAGPostgreSQLPython
ID扩展名BinLibLoadCreateTrustReloc模式
1900jev否否否是否否public
相关扩展plpython3u

typesafe.ai needs an API key; configured endpoints receive row contents.

版本

类型仓库版本PG 大版本包名依赖
EXTPIGSTY0.2.11817161514jevplpython3u
RPMPIGSTY0.2.11817161514jev_$vpostgresql$v-plpython3
DEBPIGSTY0.2.11817161514postgresql-$v-jevpostgresql-plpython3-$v
OS / PGPG18PG17PG16PG15PG14
el8.x86_64N/A
el8.aarch64N/A
el9.x86_64N/A
el9.aarch64N/A
el10.x86_64N/A
el10.aarch64N/A
d12.x86_64N/A
d12.aarch64N/A
d13.x86_64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
d13.aarch64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
u22.x86_64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
u22.aarch64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
u24.x86_64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
u24.aarch64N/A
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
PIGSTY 0.2.1
u26.x86_64N/A
u26.aarch64N/A

构建

您可以使用 pig build 命令构建 jev 扩展的 RPM / DEB 包:

pig build pkg jev         # 构建 RPM / DEB 包

安装

您可以直接安装 jev 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:

pig repo add pgsql -u          # 添加仓库并更新缓存

使用 pig 或者是 apt/yum/dnf 安装扩展:

安装
pig install jev;          # 当前活跃 PG 版本安装
pig
pig ext install -y jev -v 17  # PG 17
pig ext install -y jev -v 16  # PG 16
pig ext install -y jev -v 15  # PG 15
pig ext install -y jev -v 14  # PG 14
dnf
dnf install -y jev_17       # PG 17
dnf install -y jev_16       # PG 16
dnf install -y jev_15       # PG 15
dnf install -y jev_14       # PG 14
apt
apt install -y postgresql-17-jev   # PG 17
apt install -y postgresql-16-jev   # PG 16
apt install -y postgresql-15-jev   # PG 15
apt install -y postgresql-14-jev   # PG 14

创建扩展:

CREATE EXTENSION jev CASCADE;  -- 依赖: plpython3u

用法

来源:

jev 使用配置的 Jev 兼容 API 对自然语言条件求值,实现行过滤、排序和分类。它依赖 plpython3u,需要超级用户安装;TypeSafe 托管端点还需要 API 密钥。上游文档支持 PostgreSQL 14–17,无需预加载。

查询数据行

CREATE EXTENSION jev CASCADE;
SET jev.api_key = 'your-key';
CREATE TABLE jev_demo (id integer, body text);
INSERT INTO jev_demo VALUES (1, 'The customer requests a refund');
SELECT id, jev_prob(jev_demo, 'the customer requests a refund')
FROM jev_demo;
SELECT jev_stats();

jev() 返回布尔谓词,jev_prob() 返回概率;jev_choice() 从选项中分类,jev_score() 对有序等级评分。缓存和连接池属于会话,jev_cache_clear() 清理会话状态。

服务与数据边界

扩展会将行内容发送至配置的 API。通过 jev.api_url 指定服务,使用 jev.max_rows_per_statement 和 jev.max_chars_per_statement 限制工作量。API 延迟和费用取决于服务与数据量,API 密钥须按凭据管理。

PL/Python 以数据库服务进程的操作系统权限运行;不提供超级用户或 PL/Python 的托管服务无法运行此扩展。本地包测试使用上游模拟 API,不验证远程模型判断的质量。

0.2.1 端点配置

0.2.1 仅对 *.typesafe.ai 主机要求 jev.api_key。本地运行或其他兼容端点在未设置密钥时不发送 Authorization 头,若已配置密钥仍会发送。将 jev.api_url 指向预期的可信服务。为 0.2.0 数据库安装匹配文件后执行 ALTER EXTENSION jev UPDATE。模型准确性与数据处理策略仍取决于所选服务。

这个页面对您有帮助吗?