基于规则引擎的智能天气应用开发:从用户感知到自动化响应
最近在开发一个天气应用时遇到了一个高频需求如何优雅地处理用户对“热”的感知并将其转化为可量化的、可配置的业务逻辑比如当用户说“好热”时应用不仅要展示温度数据更要能智能地推荐降温方案、调整UI主题甚至联动智能家居。这背后涉及到温度数据的获取、用户偏好分析、条件判断与动作触发等一系列技术点。本文将围绕“热”这个业务场景拆解一套从数据到响应的完整技术实现方案包含环境搭建、核心逻辑编码、配置化策略以及常见避坑指南。无论你是想学习业务逻辑抽象的新手还是需要为现有应用添加智能响应的开发者都能从中获得可直接复用的代码和思路。1. 背景与核心概念从“感觉热”到“程序响应”在用户体验设计中单纯的数值如气温32°C是冰冷的而用户的感受如“闷热”、“凉爽”才是驱动交互的关键。将“好热”这种主观感受转化为程序可处理的逻辑本质上是一个业务规则引擎和上下文感知的问题。核心价值提升应用智能性与个性化程度。例如天气应用不再只是播报温度还能提醒“当前紫外线强建议涂抹防晒霜”智能家居中控可以根据室内体感温度自动打开空调并调节到适宜湿度。技术范畴这通常不属于某个特定框架而是一种设计模式。它涉及数据采集层获取温度、湿度、风速、用户位置、时间、用户历史偏好等原始数据。规则定义层如何定义“热”是单纯看温度还是结合湿度计算“体感温度”规则如何配置和管理逻辑执行层当条件满足时执行哪些动作如发送通知、调用API、改变界面元素等。配置与扩展层如何让非开发人员如产品经理也能方便地调整“热”的阈值和对应的行动方案本文将用一个模拟的“智能天气助手”项目来贯穿这些概念展示如何用Python后端逻辑和一种配置化方案来实现。2. 环境准备与版本说明我们将使用Python作为主要开发语言因为它语法简洁适合快速原型开发和逻辑演示。项目结构清晰无需复杂的外部服务依赖。操作系统Windows 10/11, macOS, 或 Linux (如Ubuntu 20.04)均可。本文命令以Linux/macOS的bash为例Windows用户可在PowerShell或WSL中运行。Python版本 3.8。确保你的环境已安装Python和pip。主要第三方库requests: 用于模拟获取天气API数据。pyyaml: 用于解析YAML格式的规则配置文件可选也可使用JSON。开发工具任何文本编辑器或IDE均可如VS Code、PyCharm。项目结构预览smart_weather_assistant/ ├── config/ │ └── rules.yaml # 规则配置文件 ├── core/ │ ├── __init__.py │ ├── data_fetcher.py # 数据采集模块 │ ├── rule_engine.py # 规则引擎核心模块 │ └── action_executor.py # 动作执行模块 ├── main.py # 程序入口 └── requirements.txt # 项目依赖首先创建项目目录并初始化虚拟环境推荐mkdir smart_weather_assistant cd smart_weather_assistant python3 -m venv venv # Windows: venv\Scripts\activate source venv/bin/activate创建requirements.txt文件并安装依赖# requirements.txt requests2.28.0 pyyaml6.0安装命令pip install -r requirements.txt3. 核心逻辑拆解规则引擎的设计规则引擎是本案的核心其目的是将“如果...那么...”这样的业务逻辑从硬编码中解耦出来。我们设计一个简单的规则引擎包含三个部分条件评估、规则匹配和动作触发。3.1 规则的数据结构设计一条规则至少包含三个要素name规则名、condition触发条件、actions执行的动作。条件可以很复杂但我们从最简单的开始比较温度阈值。我们可以用YAML来定义规则因为它可读性好支持嵌套结构。例如# config/rules.yaml rules: - name: 感觉炎热 description: 当体感温度高于30度时触发 condition: type: compound operator: and subconditions: - type: comparison field: feels_like operator: value: 30 - type: comparison field: humidity operator: value: 70 actions: - type: notification message: 好热而且湿度很高感觉闷热建议开启空调除湿模式。 - type: api_call url: http://smart-home/api/ac method: POST body: power: on mode: cool temperature: 26 - name: 温暖舒适 description: 体感温度在20-26度之间湿度适中 condition: type: comparison field: feels_like operator: between value: [20, 26] actions: - type: notification message: 温度适宜享受美好时光吧设计要点condition支持复合条件and/or和比较条件,,between,等。field对应数据对象中的字段如feels_like体感温度、temp实际温度、humidity湿度。actions是一个列表允许触发多个动作如发送通知、记录日志、调用外部API。3.2 条件评估器的实现我们需要一个模块来解析上述条件结构并根据传入的上下文数据当前天气数据计算条件是否为真。# core/rule_engine.py class ConditionEvaluator: 条件评估器 def evaluate(self, condition: dict, context: dict) - bool: 评估单个条件是否成立 cond_type condition.get(type) if cond_type comparison: return self._evaluate_comparison(condition, context) elif cond_type compound: return self._evaluate_compound(condition, context) else: raise ValueError(f未知的条件类型: {cond_type}) def _evaluate_comparison(self, condition: dict, context: dict) - bool: 评估比较条件 field condition[field] operator condition[operator] threshold condition[value] # 从上下文中获取实际值如果字段不存在则返回None actual_value context.get(field) if actual_value is None: return False # 或者根据业务决定如何处理缺失字段 if operator : return actual_value threshold elif operator : return actual_value threshold elif operator : return actual_value threshold elif operator : return actual_value threshold elif operator : return actual_value threshold elif operator !: return actual_value ! threshold elif operator between: if isinstance(threshold, list) and len(threshold) 2: return threshold[0] actual_value threshold[1] else: raise ValueError(between 操作符的值必须是一个包含两个元素的列表) else: raise ValueError(f不支持的比较操作符: {operator}) def _evaluate_compound(self, condition: dict, context: dict) - bool: 评估复合条件and/or operator condition[operator] subconditions condition[subconditions] if operator and: # 所有子条件都必须为真 return all(self.evaluate(sub, context) for sub in subconditions) elif operator or: # 任意一个子条件为真即可 return any(self.evaluate(sub, context) for sub in subconditions) else: raise ValueError(f不支持的复合操作符: {operator})3.3 规则引擎的整合规则引擎负责加载所有规则遍历它们并使用ConditionEvaluator检查每条规则的条件是否满足。# core/rule_engine.py (续) import yaml class RuleEngine: 简单的规则引擎 def __init__(self, rules_file_path: str): self.rules self._load_rules(rules_file_path) self.evaluator ConditionEvaluator() def _load_rules(self, file_path: str) - list: 从YAML文件加载规则 with open(file_path, r, encodingutf-8) as f: data yaml.safe_load(f) return data.get(rules, []) def process(self, context: dict) - list: 处理上下文数据返回所有被触发的规则及其动作。 Args: context: 字典包含评估所需的所有数据字段。 Returns: list: 元素为字典包含触发的规则名和对应的动作列表。 triggered_rules [] for rule in self.rules: try: # 评估规则条件 if self.evaluator.evaluate(rule[condition], context): triggered_rules.append({ name: rule[name], actions: rule.get(actions, []) }) except Exception as e: # 在实际项目中这里应该记录日志而不是简单打印 print(f评估规则 {rule.get(name)} 时出错: {e}) continue return triggered_rules4. 完整实战案例构建智能天气助手现在我们将各个模块组合起来创建一个完整的、可运行的程序。4.1 创建项目结构按照之前的环境准备章节创建目录和文件。4.2 编写数据采集模块我们模拟从天气API获取数据。在实际项目中你会替换为调用真实的API如和风天气、OpenWeatherMap等。# core/data_fetcher.py import requests import random from typing import Dict class WeatherDataFetcher: 模拟天气数据获取器 def fetch_from_api(self, city: str) - Dict: 模拟调用天气API。 在实际应用中这里应替换为真实的API请求。 # 模拟API返回的JSON数据 # 为了演示我们生成一些随机数据并确保feels_like体感温度可能偏高 base_temp random.randint(25, 38) # 实际温度在25-38度之间 humidity random.randint(50, 95) # 湿度在50%-95%之间 # 一个简单的体感温度估算简化版温度越高、湿度越大体感温度越高 feels_like base_temp (humidity / 100) * 3 mock_data { city: city, temp: base_temp, # 实际温度 feels_like: round(feels_like, 1), # 体感温度 humidity: humidity, # 湿度 wind_speed: random.randint(1, 10), # 风速 condition: sunny if base_temp 30 else cloudy, timestamp: 2023-10-27 14:30:00 } print(f[模拟] 获取到{city}的天气数据: {mock_data}) return mock_data def get_context(self, city: str) - Dict: 获取并返回规则引擎需要的上下文数据字典 weather_data self.fetch_from_api(city) # 规则引擎的context直接使用API返回数据的主要字段 # 你可以在这里进行数据转换或增强 context { temp: weather_data[temp], feels_like: weather_data[feels_like], humidity: weather_data[humidity], wind_speed: weather_data[wind_speed], condition: weather_data[condition] } return context4.3 编写动作执行模块动作执行器负责执行规则中定义的各种动作。# core/action_executor.py import requests import json class ActionExecutor: 动作执行器 def execute(self, action: dict): 根据动作类型执行相应的操作 action_type action.get(type) if action_type notification: self._send_notification(action) elif action_type api_call: self._make_api_call(action) elif action_type log: self._write_log(action) else: print(f警告: 未知的动作类型 {action_type}已跳过。) def _send_notification(self, action: dict): 模拟发送通知例如到前端、手机推送、日志文件 message action.get(message, ) # 这里可以集成真正的通知服务如WebSocket、邮件、钉钉机器人等 print(f 发送通知: {message}) def _make_api_call(self, action: dict): 模拟调用外部HTTP API url action.get(url) method action.get(method, GET).upper() body action.get(body) if not url: print(错误: API调用动作缺少 url 参数) return print(f 调用外部API: {method} {url}) if body: print(f 请求体: {json.dumps(body, indent2, ensure_asciiFalse)}) # 注意在生产环境中这里应该使用requests库真正发起调用并处理超时和异常。 # 示例注释掉: # try: # response requests.request(methodmethod, urlurl, jsonbody, timeout5) # response.raise_for_status() # print(fAPI调用成功状态码: {response.status_code}) # except requests.exceptions.RequestException as e: # print(fAPI调用失败: {e}) def _write_log(self, action: dict): 记录日志到文件或控制台 log_message action.get(message, ) level action.get(level, INFO) print(f[{level}] 日志记录: {log_message})4.4 编写规则配置文件创建config/rules.yaml文件内容使用前面3.1章节示例的YAML。4.5 编写主程序入口main.py文件将一切串联起来。# main.py import time from core.data_fetcher import WeatherDataFetcher from core.rule_engine import RuleEngine from core.action_executor import ActionExecutor def main(): # 1. 初始化各个组件 print( 智能天气助手启动 ) fetcher WeatherDataFetcher() # 注意规则文件路径需要根据你的实际位置调整 rule_engine RuleEngine(config/rules.yaml) action_executor ActionExecutor() # 2. 模拟城市列表可以扩展为从数据库或配置读取 cities [北京, 上海, 广州, 武汉] for city in cities: print(f\n--- 处理城市: {city} ---) # 3. 获取天气数据上下文 context fetcher.get_context(city) # 4. 使用规则引擎处理数据 triggered rule_engine.process(context) if not triggered: print(f 未触发任何规则。) continue # 5. 执行所有被触发规则的动作 for rule_result in triggered: rule_name rule_result[name] actions rule_result[actions] print(f 触发规则: 『{rule_name}』) for action in actions: action_executor.execute(action) # 模拟一点延迟避免输出太快 time.sleep(0.5) print(\n 所有城市处理完毕 ) if __name__ __main__: main()4.6 运行与验证在项目根目录下运行python main.py你将看到类似如下的输出由于数据是随机生成的每次运行结果会不同 智能天气助手启动 --- 处理城市: 北京 --- [模拟] 获取到北京的天气数据: {city: 北京, temp: 32, feels_like: 34.7, humidity: 85, wind_speed: 3, condition: sunny, timestamp: 2023-10-27 14:30:00} 触发规则: 『感觉炎热』 发送通知: 好热而且湿度很高感觉闷热建议开启空调除湿模式。 调用外部API: POST http://smart-home/api/ac 请求体: { power: on, mode: cool, temperature: 26 } --- 处理城市: 上海 --- [模拟] 获取到上海的天气数据: {city: 上海, temp: 28, feels_like: 29.2, humidity: 40, wind_speed: 5, condition: cloudy, timestamp: 2023-10-27 14:30:00} 触发规则: 『温暖舒适』 发送通知: 温度适宜享受美好时光吧 --- 处理城市: 广州 --- ...程序成功运行它模拟获取了不同城市的天气数据根据我们定义的规则体感温度30且湿度70触发“感觉炎热”体感温度20-26触发“温暖舒适”进行判断并执行了相应的通知和API调用动作。5. 常见问题与排查思路在实际开发和集成中你可能会遇到以下问题问题现象可能原因排查思路与解决方案规则配置文件无法加载或解析错误1. YAML文件语法错误如缩进、冒号后缺空格。2. 文件路径不正确。3. 文件编码不是UTF-8。1. 使用在线YAML校验器检查语法。2. 使用绝对路径或检查相对路径是否正确。print(os.path.abspath(‘config/rules.yaml’))。3. 确保文件以UTF-8编码保存。规则始终不触发或错误触发1. 上下文数据中字段名与规则中field不匹配。2. 条件逻辑写错如and/or混淆。3. 数据类型不匹配如字符串与数字比较。1. 打印context字典确认字段名和值。2. 使用简单规则测试逐步复杂化。3. 在ConditionEvaluator的_evaluate_comparison方法中添加调试打印查看实际值和阈值。执行API调用动作失败1. 网络问题。2. URL错误或服务不可用。3. 请求体格式不符合API要求。4. 缺少认证信息。1. 检查网络连接使用curl或Postman先测试API。2. 在_make_api_call方法中实现真实的requests调用并添加try-except捕获异常记录详细错误日志。3. 对照API文档检查请求方法和Body格式。4. 在动作配置中添加headers或auth字段。程序性能随规则数量增加而下降1. 规则引擎是线性遍历所有规则复杂度O(n)。2. 条件评估或动作执行耗时过长。1. 对规则进行分组或索引例如按优先级或触发频率排序优先检查高概率规则。2. 对于不变的条件部分可以预先编译或缓存评估结果。3. 考虑引入更专业的规则引擎库如DroolsJava或durable_rulesPython。规则难以管理修改需要重启服务规则硬编码在配置文件里修改后需重新加载。1. 实现配置热重载监听配置文件变化或从数据库/配置中心如Apollo, Nacos读取规则。2. 为RuleEngine添加reload_rules()方法。6. 最佳实践与工程建议将“感觉热”这样的业务逻辑进行代码化、配置化是提升系统可维护性和灵活性的关键一步。以下是深入项目时需要考虑的工程化实践规则配置中心化与版本化不要将规则散落在代码或本地文件。应将其存入数据库如MySQL表或专门的配置中心如Apollo。为规则添加版本号、生效时间、失效时间、创建人等元数据。实现规则的历史版本管理和一键回滚功能任何线上规则的修改都必须可追溯。规则引擎的增强性能当规则成千上万时线性遍历不可取。可以考虑Rete算法经典规则引擎算法通过构建网络共享条件节点避免重复计算。按优先级/场景分组将规则分组每次只评估相关组的规则。复杂性支持更丰富的操作符如字符串包含、正则匹配、集合运算和自定义函数如is_weekend()、get_user_preference()。调试与监控为每条规则的执行提供详细的调试日志记录“为什么触发”或“为什么不触发”。监控规则的触发频率及时发现异常或无效规则。动作执行的可靠性与异步化异步处理动作执行尤其是调用外部API、发送短信可能耗时或失败绝不能阻塞主规则评估流程。应使用消息队列如RabbitMQ、Kafka或异步任务框架如Celery将动作任务丢到后台执行。重试与降级对于重要的动作如开关设备必须实现重试机制。对于非关键动作如发送提醒要有降级策略如失败后记录日志不重试。动作模板化通知消息、API请求体中的部分内容可能需要动态填充如{city}今天很热。可以使用模板引擎如Jinja2来渲染动作参数。上下文数据的丰富与标准化数据源天气数据可能来自多个API用户数据来自用户中心设备状态来自IoT平台。需要设计一个上下文构建器统一拉取和组装所有必要数据并处理数据缺失或异常情况。数据模型定义清晰的上下文数据模型Context类或Pydantic模型确保字段类型明确避免在规则中因类型问题导致错误。安全与权限规则权限不同角色管理员、运营可能只能修改特定范围的规则。需要对规则配置界面做权限控制。动作权限执行“打开空调”和“发送营销短信”的权限等级不同。在动作执行前应校验当前上下文如触发用户是否有权执行该动作。输入校验对从配置中心或界面下发的规则内容要进行严格的语法和安全性校验防止注入攻击。测试策略单元测试针对ConditionEvaluator、RuleEngine等核心类编写单元测试覆盖各种条件组合和边界情况。集成测试模拟完整的上下文数据测试规则是否能正确触发预期动作。回归测试每当规则发生变更自动运行已有的测试用例集防止新规则破坏旧逻辑。通过以上实践这个始于“好热”的简单想法就能演进为一个健壮、灵活、可扩展的业务规则中台轻松应对未来诸如“太冷了”、“空气干燥”、“下雨概率大”等更多场景的挑战。

相关新闻

React Native与鸿蒙OS的SafeAreaView优化实践

React Native与鸿蒙OS的SafeAreaView优化实践

1. 项目概述:跨平台沉浸式布局的挑战与机遇在移动应用开发领域,React Native作为跨平台框架的代表,与新兴的鸿蒙操作系统相遇,催生了全新的开发范式。SafeAreaView作为处理设备安全区域的核心组件,在实现沉浸式页面布局…

2026/8/9 12:30:46 阅读更多 →
冰箱辅助半导体制冷片散热方案:原理、风险与安全实现

冰箱辅助半导体制冷片散热方案:原理、风险与安全实现

最近在折腾半导体制冷片散热方案时,看到不少网友提出了一个脑洞大开的想法:把水冷系统的冷排(散热排)做得更长,直接塞进冰箱里,利用冰箱的低温环境来进一步提升散热效率。这个想法听起来很“硬核”&#xf…

2026/8/9 12:30:46 阅读更多 →
UE5离线语音识别插件开发:C++集成Vosk实现毫秒级实时交互

UE5离线语音识别插件开发:C++集成Vosk实现毫秒级实时交互

1. 项目概述:为什么我们需要一个离线的语音转文字插件? 在UE5里做语音交互,你是不是也遇到过这样的场景:玩家对着麦克风喊了一句“开火!”,结果游戏角色愣了一秒多才反应过来,或者干脆因为网络波…

2026/8/9 12:30:46 阅读更多 →

最新新闻

数据库索引优化与慢查询分析实战:升级前先做这几项确认

数据库索引优化与慢查询分析实战:升级前先做这几项确认

数据库索引优化与慢查询分析实战:升级前先做这几项确认 在线上数据库进行版本升级或大表 DDL(如增加索引、变更字段类型)变更,是后端工程中最让人神经紧绷的环节之一。稍微考虑不周,一次看似简单的 ADD INDEX 就会触发…

2026/8/10 0:34:17 阅读更多 →
Go 系统编程与并发原语:流量上来前要补哪些防线

Go 系统编程与并发原语:流量上来前要补哪些防线

Go 系统编程与并发原语:流量上来前要补哪些防线 Go 语言极为轻松的 go func() 协程创建语法,给了很多开发者一种“Go 拥有无限并发能力”的错觉。在本地或测试环境,并发数从几百加到几万,系统似乎都能轻松应对。 但是当真实的突发…

2026/8/10 0:34:16 阅读更多 →
CoSbTe节点线半金属的电子结构与物理性质

CoSbTe节点线半金属的电子结构与物理性质

CoSbTe节点线半金属的电子结构与物理性质 PHYS. REV. B 113, 134406 (2026) CoSbTe节点线半金属的电子结构与物理性质 Electronic and Physical Properties of the Topological Nodal-Line Semimetal Candidate CoSbTe 导读 导读:节点线半金属是拓扑材料家族的重…

2026/8/10 0:32:15 阅读更多 →
如何快速优化macOS鼠标体验:Mac Mouse Fix完整配置指南

如何快速优化macOS鼠标体验:Mac Mouse Fix完整配置指南

如何快速优化macOS鼠标体验:Mac Mouse Fix完整配置指南 【免费下载链接】mac-mouse-fix Mac Mouse Fix - Make Your $10 Mouse Better Than an Apple Trackpad! 项目地址: https://gitcode.com/GitHub_Trending/ma/mac-mouse-fix 你是否厌倦了在macOS上使用普…

2026/8/10 0:32:15 阅读更多 →
北京网站建设 标准型 新翼方案,揭秘中小企业官网搭建背后的真相与实战策略

北京网站建设 标准型 新翼方案,揭秘中小企业官网搭建背后的真相与实战策略

在北京,提到“网站建设”,很多人的第一反应可能还是十年前那种满屏闪烁、色彩斑斓、到处弹窗的Flash页面。那时候,觉得花里胡哨才叫有技术,觉得页面做得越复杂,老板越觉得钱花得值。但今天,当我们再次站在北京这座中国互联网的核心高地,去审视“北京网站建设 标准型 新翼…

2026/8/10 0:31:15 阅读更多 →
通达信缠论量化插件:3分钟实现智能K线分析的完整指南

通达信缠论量化插件:3分钟实现智能K线分析的完整指南

通达信缠论量化插件:3分钟实现智能K线分析的完整指南 【免费下载链接】Indicator 通达信缠论可视化分析插件 项目地址: https://gitcode.com/gh_mirrors/ind/Indicator CZSC缠论可视化交易插件是一款专为通达信用户设计的开源缠论量化分析工具,通…

2026/8/10 0:31:15 阅读更多 →

日新闻

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南 【免费下载链接】graphql-css A blazing fast CSS-in-GQL™ library. 项目地址: https://gitcode.com/gh_mirrors/gr/graphql-css GraphQL-CSS是一个基于GraphQL的CSS-in-GQL™库&#xff0…

2026/8/10 0:00:02 阅读更多 →
告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode.com/…

2026/8/10 0:00:02 阅读更多 →
BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案 【免费下载链接】BepInEx.ConfigurationManager Plugin configuration manager for BepInEx 项目地址: https://gitcode.com/gh_mirrors/be/BepInEx.ConfigurationManager 你是否曾经因为游戏插件的复杂…

2026/8/10 0:00:02 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/9 0:45:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →