详细介绍:如何利用LangChain1.0快速进行天气查询

@TOC如何利用LangChain1.0敏捷进行天气查询

如何利用LangChain1.0快速进行天气查询

1. 系统概述

通过本系统是一个基于LangChain框架构建的智能天气查询工具,利用通义千问大语言模型和知心天气API实现自然语言天气查询功能。用户能够通过自然语言提问来获取指定城市的天气信息。

2. 架构架构

2.1 主要组件

  1. Agent代理模块 (main.py)

    • 使用ChatTongyi模型作为核心推理引擎
    • 集成自定义天气查询工具query_weather
    • 处理自然语言输入并生成相应响应
  2. 天气工具模块 (func_tool/wechat.py)

    • 实现了与知心天气API的交互逻辑
    • 包含三个主要函数:
      • fetch_weather_sync: 同步获取天气数据
      • format_weather: 格式化天气信息
      • query_weather: LangChain工具接口函数

2.2 工作流程

  1. 用户提出自然语言查询(如"明天汕尾的天气怎么样,下雨吗")
  2. Agent解析用户意图并调用query_weather工具
  3. query_weather调用fetch_weather_sync从知心天气API获取数据
  4. 获取的数据通过format_weather格式化为易读文本
  5. Agent将格式化的结果返回给用户

3. 核心模块详解

3.1 Agent代理模块 (main.py)

from dotenv import load_dotenv
import os
# 加载.env文件中的环境变量
load_dotenv(override=True)
from func_tool.wechat import query_weather
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"))
agent = create_agent(
model=model,
tools=[query_weather]
)
question1 = "明天汕尾的天气怎么样,下雨吗"
# 运行agent
response1 = agent.invoke(
{
"messages": [{
"role": "user"
posted @ 2025-12-12 10:18  clnchanpin  阅读(22)  评论(0)    收藏  举报