【mysql】python+agent调用
python调用
相关工作
两篇参考工作
2025.02 Balancing Content Size in RAG-Text2SQL System
2024.08 Text2SQL is Not Enough: Unifying AI and Databases with TAG
TAG
Text2SQL is Not Enough: Unifying AI and Databases with TAG
伯克利大学+斯坦福大学。
代码
动机:
现有工作不能符合真实世界人类需求,即更泛化性的问题(需要聚合信息或者LM情感分析等)。DB可以提供领域知识+精确计算。LM可以提供语义推理(如情感分析)+世界知识(预训练语料)。
框架:
gen可以迭代或者回溯。R是自然语言问题,Q是可执行的SQL语句,T是SQL查询得到的数据,A是回答。
gen:
- 根据table schema推理哪些数据是问题相关的。
- 语义解析得到SQL语句。
框架设计空间:
两类问题
- the level of data aggregation。需要多条数据聚合。
- the knowledge and capabilities。需要情感分析、分类等。
数据:可以是数据库,也可以是无结构、半结构化数据(free-text,图片,视音数据,图,向量等)
数据查询引擎和API:sql,向量数据库,etc。
扩展数据查询API:提供一组基于声明式人工智能的运算符(例如,过滤、排序、聚合和使用自然语言指定符执行搜索)或LM用户定义函数。如下图的LLM(...)='True'
:
LLM生成模式:
table encoding, prompt compression, and prompt tuning。
以及迭代、回溯的生成模式。
LOTUS
LOTUS: Enabling Semantic Queries with LLMs Over Tables of Unstructured and Structured Data
斯坦福。
代码
动机:现有工作缺少high-level的抽象内容来处理semantic的查询。语义查询(从大量结构化、半结构化、无结构信息中快速查询内容)。RAG的问题在于是点查询point lookups,假设可以通过一小组文本得到回答。但是很多问题需要聚合大量的信息。
贡献:提出了semantic operators语义运算符,这是一种声明性编程接口,它通过基于人工智能的可组合操作扩展关系模型,用于对数据集进行语义查询(例如,使用自然语言标准对记录进行排序或聚合)。语义运算符包括了,过滤、联合、排序、聚合、投影。
相关论文
LM-based operators:
2405 A Declarative System for Optimizing AI Workloads
2403 Optimizing LLM Queries in Relational Workloads
2311 SUQL: Conversational Search over Structured and Unstructured Data with Large Language Models
semantic operators
2407 LOTUS: Enabling Semantic Queries with LLMs Over Tables of Unstructured and Structured Data
2403 Optimizing LLM Queries in Relational Workloads
survey
2402 Large Language Models(LLMs) on Tabular Data: Prediction, Generation, and Understanding – A Survey