自然语言转SQL模拟工具

一个集成了Gemini API的交互式自然语言转SQL模拟工具,支持实时交互日志记录、查询生成和结果摘要功能。

  • by chrisOldfield
  • HTML
  • 本地部署
  • 更新于
在 GitHub 查看 chrisoldfield/test-mcp-server

使用说明

系统文档:与Gemini API集成的交互式NL2SQL仿真 引言 本文档概述了一个自包含的web应用程序,旨在演示人工智能(AI)代理通过自然语言处理查询数据库的功能。该应用程序模拟了从初始用户查询到最终数据库响应的完整工作流程,并结合了利用Gemini应用程序编程接口(API)的补充功能。

系统功能 自然语言到SQL模拟:该系统促进了自然语言查询,随后由模拟的AI代理将其转换为结构化查询语言(SQL),以便在模拟数据库上执行。

实时交互日志:该应用程序提供详细的实时日志,记录用户界面、AI代理和模拟服务器后端之间的交互顺序。

Gemini API驱动的查询生成:系统可以利用Gemini API根据提供的数据库模式生成上下文相关的查询建议。

Gemini API驱动的结果摘要:检索到JSON格式的结果集后,可以调用Gemini API生成简洁、可人工阅读的数据摘要。

执行程序 此应用程序作为单个HTML文件交付,不需要外部安装或依赖关系。

将提供的HTML源代码持久化到本地文件(例如index.HTML)。

使用现代网络浏览器启动文件。

应用程序现在已准备好进行直接用户交互。

Python API授权示例 以下部分详细介绍了使用Python请求库建立与安全应用程序编程接口(API)连接的标准方法。

  1. HTTP基本认证 这种广泛采用的身份验证方案涉及直接在请求标头内传输用户凭据。

进口请求 导入系统

尝试: 打印(f“正在连接到{API_ENDPOINT}…”) response=请求.get(API_ENDPOINT,auth=(用户名,密码)) response.raise_for_status()#引发状态代码错误的异常

print("✅ Connection successful!")
print("--- API Response Data ---")
print(response.json())

请求除外。例外。请求异常错误: 打印(f“❌ 发生错误:{err}“)

  1. POST请求体中的凭据 此方法通常用于在成功验证后发出访问令牌的身份验证端点。该令牌随后用于后续API调用中的授权。

进口请求 导入系统

登录端点=“https://your-instance.app.com/api/login" 登录有效载荷={ “用户名”:“your_username”, “密码”:“您的密码” }

尝试: print(f“正在尝试登录{LOGIN_ENDPOINT}…”) response=requests.post(LOGIN_ENDPOINT,json=LOGIN_awnload) response.raise_for_status()

print("✅ Login successful!")
access_token = response.json().get("token")
if access_token:
    print("Retrieved access token.")
    # Use this token in headers for future requests
    # headers = {'Authorization': f'Bearer {access_token}'}
else:
    print("⚠️ Login succeeded, but no token was found.")

请求除外。例外。请求异常错误: 打印(f“❌ 发生错误:{err}“)