尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

深入解析:如何利用LangChain1.0快速进行天气和数据库查询

深入解析:如何利用LangChain1.0快速进行天气和数据库查询
📅 发布时间:2026/6/20 17:20:13

如何利用LangChain1.0快捷进行天气和数据库查询

1. 体系概述

本系统是一个基于LangChain框架构建的智能数据库查询工具,利用通义千问大语言模型和SQL数据库工具包实现自然语言数据库查询效果。用户可以通过自然语言提问来查询SQLite数据库中的信息。

2. 系统架构

2.1 主要组件

  1. Agent代理模块([dashscope_db_example.py](file:///Users/laraveljun/big_model/langchain-learn/dashscope_db_example.py))

    • 使用ChatTongyi模型作为核心推理引擎
    • 集成SQL数据库工具包
    • 处理自然语言输入并生成相应响应
  2. 数据库工具模块([func_tool/db_tools.py](file:///Users/laraveljun/big_model/langchain-learn/func_tool/db_tools.py))

    • 实现了SQL数据库工具包的创建和管理
    • 包含两个主要函数:
      • create_sql_database_toolkit: 创建SQL数据库工具包
      • get_sql_tools: 获取SQL工具列表
  3. 数据库结构

    • 运用SQLite数据库存储学生测验数据
    • 包含学生表([student](file:///Users/laraveljun/big_model/langchain-learn/database/studnet.sql#L1-L6))、题目表([quiz_question](file:///Users/laraveljun/big_model/langchain-learn/database/studnet.sql#L8-L16))和答题记录表([answer_record](file:///Users/laraveljun/big_model/langchain-learn/database/studnet.sql#L18-L25))

2.2 工作流程

  1. 用户提出自然语言查询(如"难度为中等有多少道题?")
  2. Agent解析用户意图并调用适当的SQL工具
  3. 软件执行相应的数据库操作(查看表结构、生成SQL查询等)
  4. 执行查询并获取结果
  5. Agent将结果格式化后返回给用户

3. 核心模块详解

3.1 Agent代理模块 ([main.py](file:///Users/laraveljun/big_model/langchain-learn/dashscope_db_example.py))

from dotenv import load_dotenv
import os
# 加载.env文件中的环境变量
load_dotenv(override=True)
from func_tool.wechat import query_weather
from func_tool.db_tools import get_sql_tools
from langchain.agents import create_agent
from langchain_community.chat_models import ChatTongyi
model = ChatTongyi(model="qwen-turbo", api_key=os.getenv("DASHSCOPE_API_KEY"))
# 创建可以同时使用天气和数据库工具的智能助手
database_uri = "sqlite:///student_quiz.db"  # 示例数据库URI
tools = get_sql_tools(database_uri, model)
# 创建智能助手,可以同时使用天气和数据库工具
agent = create_agent(
model=model,
tools=[query_weather]+tools,
system_prompt='''
1、你是一个专业的 SQL 数据分析师。
工作流程:
1. 先使用 sql_db_list_tables 查看所有表
2. 使用 sql_db_schema 获取相关表的结构
3. 生成 SQL 查询前,使用 sql_db_query_checker 检查语法
4. 使用 sql_db_query 执行查询
5. 用中文总结查询结果
注意事项:
- 只使用数据库中实际存在的表和字段
- 查询结果限制在 10 条以内
- 如果查询出错,分析错误并重新生成 SQL
- 有多个问题的时候,需要进行整理后返回
2、您是一个乐于助人的助手,您可以回答用户的问题,也可以帮助用户解决问题。
''',
)
question = "难度为中等有多少道题?"
# Run the agent with database query
response = agent.invoke(
{
"messages": [{
"role": "user", "content": question}]}
)
print(response['messages'][-1].content)

相关新闻

  • Codex 相较其他模型的核心优势(含 Polocode 集成场景) - poloai
  • 在Anaconda中指定Jupyter Notebook虚拟环境和工作目录
  • 基于SpringBoot+Vue技术的二手车交易管理系统的设计与实现(毕业设计项目源码+文档)

最新新闻

  • Ubuntu 14.04下WordPress XML-RPC四层防御实战
  • M2-PALE:融合过程挖掘与LLM的可解释混合智能体框架
  • Quanto量化实战:让Transformer在CPU/边缘设备高效运行
  • 基于流匹配与复值自编码器的脑肿瘤MRI生成式数据增强实战
  • 【技术干货】AI应用构建器实战:用大模型规划并生成创作者赞助管理后台
  • Ubuntu 20.04 安装 TensorFlow 的三大兼容性陷阱与生产级解决方案

日新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号