pg_ai_query
AI驱动的 Postgres SQL 查询生成
仓库
benodiwal/pg_ai_query
https://github.com/benodiwal/pg_ai_query
源码
pg_ai_query-0.1.1.tar.gz
pg_ai_query-0.1.1.tar.gz
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
pg_ai_query | 0.1.1 | FEAT | Apache-2.0 | C++ |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 2720 | pg_ai_query | 否 | 是 | 否 | 是 | 否 | 是 | - |
| 相关扩展 | pgml pg4ml vectorize pg_summarize pg_tiktoken |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.1.1 | 1817161514 | pg_ai_query | - |
| RPM | PIGSTY | 0.1.1 | 1817161514 | pg_ai_query_$v | - |
| DEB | PIGSTY | 0.1.1 | 1817161514 | postgresql-$v-ai-query | - |
构建
您可以使用 pig build 命令构建 pg_ai_query 扩展的 RPM / DEB 包:
pig build pkg pg_ai_query # 构建 RPM / DEB 包
安装
您可以直接安装 pg_ai_query 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
pig repo add pgsql -u # 添加仓库并更新缓存
使用 pig 或者是 apt/yum/dnf 安装扩展:
pig install pg_ai_query; # 当前活跃 PG 版本安装
pig ext install -y pg_ai_query -v 18 # PG 18
pig ext install -y pg_ai_query -v 17 # PG 17
pig ext install -y pg_ai_query -v 16 # PG 16
pig ext install -y pg_ai_query -v 15 # PG 15
pig ext install -y pg_ai_query -v 14 # PG 14
dnf install -y pg_ai_query_18 # PG 18
dnf install -y pg_ai_query_17 # PG 17
dnf install -y pg_ai_query_16 # PG 16
dnf install -y pg_ai_query_15 # PG 15
dnf install -y pg_ai_query_14 # PG 14
apt install -y postgresql-18-ai-query # PG 18
apt install -y postgresql-17-ai-query # PG 17
apt install -y postgresql-16-ai-query # PG 16
apt install -y postgresql-15-ai-query # PG 15
apt install -y postgresql-14-ai-query # PG 14
创建扩展:
CREATE EXTENSION pg_ai_query;
用法
pg_ai_query 使用 LLM 提供商(OpenAI、Anthropic、Google Gemini)从自然语言描述生成 SQL 查询。它会自省数据库模式,将自然语言问题翻译为 SQL。
配置
创建 ~/.pg_ai.config:
[general]
log_level = "INFO"
enable_logging = false
[query]
enforce_limit = true
default_limit = 1000
[response]
show_explanation = true
show_warnings = true
[openai]
api_key = "your-openai-api-key"
default_model = "gpt-4o"
[anthropic]
api_key = "your-anthropic-api-key"
default_model = "claude-3-5-sonnet-20241022"
[gemini]
api_key = "your-google-api-key"
default_model = "gemini-2.5-flash"
查询生成
SELECT generate_query('show all customers');
SELECT generate_query('monthly sales trend for the last year by category');
SELECT generate_query('customers who have not placed orders in the last 6 months');
模式发现
SELECT get_database_tables();
SELECT get_table_details('orders');
查询解释
SELECT explain_query('SELECT * FROM users WHERE created_at > NOW() - INTERVAL ''7 days''');
直接传入 API 凭证:
SELECT explain_query('SELECT * FROM products WHERE price > 100', 'your-api-key', 'anthropic');
支持的模型
- OpenAI: gpt-4o, gpt-4o-mini
- Anthropic: claude-3-5-sonnet-20241022, claude-3-haiku-20240307
- Google Gemini: gemini-2.5-pro, gemini-2.5-flash