当前位置: 首页 > wzjs >正文

自己做网站可以赚钱么杭州新站整站seo

自己做网站可以赚钱么,杭州新站整站seo,怎么做网站的营销,香港服务器的网站目录 一、功能概述 二、文件结构 三、城市天气实时查询(运行代码) weather_runnable.py main.py 运行结果 四、技术亮点 五、使用场景 一、功能概述 它实现了以下主要功能: 用户输入地点(城市名) 构造提示词…

目录

一、功能概述

二、文件结构

三、城市天气实时查询(运行代码)

weather_runnable.py

main.py

运行结果

四、技术亮点

五、使用场景


一、功能概述

它实现了以下主要功能:

  1. 用户输入地点(城市名)

  2. 构造提示词(Prompt)生成自然语言问题

  3. 异步调用 Open-Meteo API 查询该城市当前气温

  4. 调用 OpenAI GPT-4o 模型,让它基于气温给出外出建议


二、文件结构

your_project/
├── weather_runnable.py     ✅ 自定义异步 Runnable 类
├── main.py                 ✅ 主程序,构建异步链并执行

三、城市天气实时查询(运行代码)

weather_runnable.py

这是一个符合 LangChain LCEL 规范的异步组件,继承自 Runnable

  • 实现了 ainvoke 方法,用于异步调用天气 API。

  • 使用 aiohttp 获取 Open-Meteo 提供的天气数据。

  • 支持城市:Beijing、Shanghai、New York(可扩展)。

# weather_runnable.py
import aiohttp
from typing import Any, Optional
from langchain_core.runnables import Runnableclass WeatherLookupAsyncRunnable(Runnable):"""异步版:调用 Open-Meteo API 获取城市天气"""def get_coordinates(self, city: str):city_map = {"Beijing": (39.9042, 116.4074),"Shanghai": (31.2304, 121.4737),"New York": (40.7128, -74.0060),}return city_map.get(city)def invoke(self, input: Any, config: Optional[dict] = None) -> str:raise NotImplementedError("这是一个异步组件,请使用 ainvoke() 调用。")async def ainvoke(self, input: Any, config: Optional[dict] = None) -> str:if not isinstance(input, str):raise ValueError("输入必须是字符串(城市名)")coords = self.get_coordinates(input)if coords is None:return f"暂不支持城市:{input}"lat, lon = coordsurl = (f"https://api.open-meteo.com/v1/forecast?"f"latitude={lat}&longitude={lon}&current_weather=true")try:async with aiohttp.ClientSession() as session:async with session.get(url) as response:if response.status != 200:return "天气 API 请求失败"data = await response.json()temp = data.get("current_weather", {}).get("temperature")return f"当前{input}的气温是 {temp}°C" if temp is not None else "未获取到气温"except Exception as e:return f"请求过程中出错: {str(e)}"

main.py

这是主程序,执行以下流程:

  1. 构造提示词: 使用 ChatPromptTemplate 创建一个天气查询句子。

  2. 调用天气服务: 执行自定义异步 Runnable,获取当前气温。

  3. 调用 GPT-4o: 让 LLM 根据天气数据生成建议,比如“适合出门”或“建议带伞”。

# main.py
import asyncio
from weather_runnable import WeatherLookupAsyncRunnable
from langchain_core.prompts import ChatPromptTemplate
from langchain_openai import ChatOpenAI  # ✅ 用 langchain_openai,不要再用老接口prompt = ChatPromptTemplate.from_template("请问{location}的天气如何?")
llm = ChatOpenAI(model="gpt-4o")weather = WeatherLookupAsyncRunnable()async def run():# 1. 生成用户问题question = prompt.invoke({"location": "Beijing"}).to_string()print("Prompt output:", question)# 2. 实际调用天气 API(最关键)weather_result = await weather.ainvoke("Beijing")print("天气查询结果:", weather_result)    # 3. 由 LLM 生成回复llm_output = llm.invoke(f"根据{weather_result},简短描述一下今天是否适合出门,需要注意什么")print("LLM output:", llm_output.content)asyncio.run(run())

运行结果

Prompt output: Human: 请问Beijing的天气如何?
天气查询结果: 当前Beijing的气温是 23.9°C
LLM output: 今天北京的气温是23.9°C,天气较为宜人,非常适合出门活动。不过建议根据具体的天气情况查看是否有降水或其它天气变化,出门时根据个人体感选择适合的衣物。此
外,可以适当携带水杯保持水分补充,同时注意防晒措施,以确保舒适的户外体验。


四、技术亮点

技术用途
LangChain Core / LCEL构建可组合的数据流
Runnable Async实现异步接口逻辑,非阻塞式
aiohttp高效异步 HTTP 请求库
OpenAI GPT-4o生成智能出行建议
ChatPromptTemplate动态构造人类语言输入

五、使用场景

  • AI 助理天气模块

  • 旅游或日程规划建议工具

  • 多轮对话集成的一个工具链组件

http://www.dtcms.com/wzjs/209681.html

相关文章:

  • 网页制作基础教程素材seo网站推广公司
  • seo网站建设价格手机seo快速排名
  • wordpress增加logoseo推广效果怎么样
  • 旅游网站做模板素材网页设计制作软件
  • 上海城乡建设与管理委员会网站浏阳廖主任打人案
  • 凡科一个注册做2个网站网站页面禁止访问
  • 织梦手机端网站怎么做网页设计流程步骤
  • 一站式网站管家seo实战技巧100例
  • 房地产小程序开发seo主要做什么工作内容
  • 义乌网站建站百度seo优化公司
  • 手机网站建设开什么类型的票seo 优化案例
  • wordpress注册页快排seo软件
  • wordpress革命滑块seo中国官网
  • 太原做网站排名bt磁力搜索引擎索引
  • 商业网站建设知识点国际新闻最新消息今天 新闻
  • 最专业网站建设公司申京效率值联盟第一
  • 定制化网站建设在百度上怎么卖自己的产品
  • 惠阳网站建设公司广东seo推广方案
  • 惠州网站制作公司电商推广
  • 济南住房和城乡建设部网站在哪里可以做百度推广
  • 对电子商务网站建设与维护的总结排名优化哪家专业
  • 北京中国建设部网站seo优化报价公司
  • 网站建设价格如何国内最新新闻事件
  • 宣传类的网站有哪些内容怀化网络推广
  • python做网站多么网站快速排名服务
  • 牙科医院网站源码品牌策划书
  • 一般网站的架构恩施seo整站优化哪家好
  • javaweb做新闻网站网络营销试卷及答案
  • 东城区网站建设seo实战密码
  • 湛江网站优化四种基本营销模式