MindSQL 是一个 Python RAG(检索增强生成)库,用于简化数据库交互,让用户仅用几行代码就能以自然语言查询数据库。
用途:将自然语言问题转换为 SQL,从而降低与数据库交互的门槛。
主要能力:
- 无缝集成 PostgreSQL、MySQL 和 SQLite 等数据库;通过扩展 IDatabase 接口,还可支持 Snowflake 和 BigQuery 等主要数据库。
- 使用 GPT-4、Llama 2、Google Gemini 等大语言模型。
- 支持 ChromaDB 和 Faiss 等知识库,以提供具备上下文感知的响应。
使用方式: 可通过 pip 安装 MindSQL;该库要求 Python 3.10 或更高版本。
代码结构:
- _utils:包含常量和日志记录器的实用工具模块。
- _helper:辅助模块。
- core:主核心模块,minds_core.py。
- databases:数据库相关模块。
- llms:语言模型相关模块。
- testing:测试脚本。
- vectorstores:向量存储相关模块。
- poetry.lock 和 pyproject.toml:Poetry 依赖与配置文件。
- tests:测试用例。
适用场景:需要使用自然语言查询上述受支持数据库的场景。
限制:目前仅明确支持 PostgreSQL、MySQL、SQLite、Snowflake 和 BigQuery;其他数据库需通过扩展 IDatabase 接口实现。其余收费、价格及更多功能细节暂未提供。