本地大模型编程实战(22)用langchain实现基于SQL数据构建问答的系统(1)
使 LLM(大语言模型) 系统能够查询结构化数据与非结构化文本数据在性质上可能不同。后者通常生成可在向量数据库中搜索的文本,而结构化数据的方法通常是让 LLM 编写和执行 DSL(例如 SQL)中的查询。 我们将演练使用 langchain 链 ,在结构化数据库 SQlite 中的数据上创建问答系统的基本方法,该系统建立以后,我们用自然语言询问有关数据库中数据的问题并返回答案。 后面我们将基于 智能体(Agent) 实现类似功能,两者之间的主要区别在于:智能体可以根据需要多次循环查询数据库以回答问题。 实现上述功能需要以下步骤: 将问题转换为 DSL 查询:模型将用户输入转换为 SQL 查询; 执行 SQL 查询; 回答问题:模型使用查询结果响应用户输入。 使用 qwen2.5 、 deepseek 以及 llama3.1 做实验。 ...