图书馆: https://pypi.org/project/chatwithsql
GitHub: https://github.com/sathninduk/chatwithsql
随着软件的发展,对直观、安全、高效的数据库交互的需求呈指数级增长。 ChatWithSQL 是一个突破性的 Python 库,它改变了开发人员与 SQL 数据库交互的方式。通过将自然语言处理 (NLP) 的强大功能与模式验证的 SQL 生成和数据检索相结合,ChatWithSQL 为安全高效的数据检索树立了新的基准。
文本到 SQL 工具并不新鲜,但大多数都有一个明显的缺陷:可能生成和执行任意查询。这带来了严重的风险:
ChatWithSQL 通过实施基于模式的验证方法重新定义了安全性和可靠性。通过确保所有查询都遵循预定义的架构,该库可以消除未经授权的访问,同时保持无与伦比的性能。
与传统的文本到 SQL 系统不同,ChatWithSQL 在执行之前根据严格的架构定义验证每个查询,确保:
这种安全第一的方法使 ChatWithSQL 成为寻求简单性和可信性的开发人员的首选解决方案。
写出如下提示:
“显示 ID 为 5 的用户的详细信息。”
“显示 2024 年 11 月 25 日的所有订单”
“用户 ID 34 的生日是哪一天”
“500美元以上的订单有哪些?”
让 ChatWithSQL 处理剩下的事情,将其转换为可操作的 SQL。
准确定义允许哪些查询:
query_schema = [ { "description": "Fetch user data by ID", "name": "get_user_data", "sql": "SELECT * FROM users WHERE id = ?", "params": {"id": {"type": "int", "default": None}}, }, ]
仅执行此架构内的查询,消除了误用的风险。
ChatWithSQL 支持领先的语言学习模型 (LLM),包括:
这些 LLM 之间的切换就像更改配置一样简单。
ChatWithSQL 动态提取、验证和映射查询参数,以确保每次结果都准确。
无论您使用 PostgreSQL、MySQL、SQLite 还是任何其他 SQL 数据库,ChatWithSQL 通过通用 URI 格式提供支持。
通过详细的日志记录,ChatWithSQL 使调试变得轻而易举:
安装 ChatWithSQL
query_schema = [ { "description": "Fetch user data by ID", "name": "get_user_data", "sql": "SELECT * FROM users WHERE id = ?", "params": {"id": {"type": "int", "default": None}}, }, ]
初始化您的实例
pip install chatwithsql
执行查询
from chat_with_sql import ChatWithSQL chat_with_sql = ChatWithSQL( database_url="your_database_url", llm="openai", model="gpt-3.5-turbo", llm_api_key="your_llm_api_key", query_schema=[ { "description": "Fetch user by ID", "name": "get_user", "sql": "SELECT * FROM users WHERE id = ?", "params": {"id": {"type": "int", "default": None}}, }, ], )
用例
高级查询架构示例
response = chat_with_sql.load_data("Get user details for ID 10.") print(response)
目前,ChatWithSQL 仅支持 SELECT 查询,但计划将支持扩展到其他 SQL 操作,包括 INSERT、UPDATE 和 DELETE。
此外,该库是为 AI 聊天代理开发全面、免费和开源框架的更广泛计划的第一个组成部分。该框架通过将复杂的需求简化为几个简单的步骤,解决了当今软件工程行业的重要业务需求。
?加入 ChatWithSQL 革命
准备好体验下一级别的数据库交互了吗?立即开始使用 ChatWithSQL,为您的应用程序提供智能、安全且高效的查询处理能力。
GitHub 存储库:ChatWithSQL
支持电子邮件:hello@bysatha.com
我们欢迎贡献!提交拉取请求或报告问题以帮助塑造 ChatWithSQL 的未来。
通过 ChatWithSQL,自然语言以安全、可靠且改变游戏规则的方式与 SQL 相遇。立即加入该运动,将您的申请提升到新的水平!
以上是ChatWithSQL — 安全、模式验证的文本到 SQL Python 库,消除法学硕士的任意查询风险的详细内容。更多信息请关注PHP中文网其他相关文章!