首页 文章 精选 留言 我的

精选列表

搜索[基因多效性],共10000篇文章
优秀的个人博客,低调大师

《WorkBuddy 实战蓝皮书》系列的第七篇:个人提效-Workbuddy链接微信篇

> 让 AI 直接读取微信聊天记录,告别手动转发聊天记录的繁琐操作 > ## 一、这个方案解决什么问题 想让 AI 总结微信群消息,之前每次都需要手动选中聊天记录,再转发给 WorkBuddy,非常繁琐。现在通过 **微信 CLI**,可以让大模型直接读取本机微信的消息记录。 **核心流程(3 步走):** 1. 安装 WeChat CLI 技能(在 WorkBuddy 中搜索安装) 2. 配置本地工具(安装初始化 wechat-cli 并完成适配检查) 3. 核对记录后总结(选群测试,核对消息后生成总结) ## 二、操作步骤 ### 第 1 步:安装 WeChat CLI 技能 在电脑上打开 WorkBuddy,依次进入: **专家·技能·连接器 → 技能 → 搜索 wechat-cli → SkillHub** 找到「通过 wechat-cli 读取和分析微信聊天记录」,打开详情,点击「安装」。 > 💡 本文截图中的 WorkBuddy 版本为 5.7.6,入口以你实际看到的界面为准。 ![image.png](https://developer.qcloudimg.com/http-save/yehe-7660620/ead2b1ae02e184ae3e2be17325718a53.png) 图 1|技能安装入口(按图中 1—5 的标记操作) 安装后,选择这个技能发起对话,先让它检查环境。可以这样问: > 请检查这项技能需要的本地工具是否已安装、是否完成初始化。列出目前能用的功能,以及还缺什么。 ### 第 2 步:配置本地工具(这一步不能跳) 技能装好 ≠ 底层工具装好。直接提问,WorkBuddy 检查后会提示:**本机没有 wechat-cli,也没有初始化配置**。 ![6ab58783730f44593198b8410010e2b1.png](https://developer.qcloudimg.com/http-save/yehe-7660620/c086ef4327df8eca5c6ae68bdf76c84a.png) 图 2|环境检查结果:技能已装,本地工具仍缺失 **解决方法:** 让 WorkBuddy、Codex 这类智能体帮你搜索当前可用的 WeChat CLI 开源项目,再让它按项目文档帮你安装(资源随时变化,建议直接让 AI 现场搜索最新可用版本)。 ![image.png](https://developer.qcloudimg.com/http-save/yehe-7660620/33f2f6c20e3b0b3f9d567b2e0c6b4d3f.png) 图 3|WeChat CLI 项目示例(npm 安装,支持 macOS / Windows / Linux) 安装前,可以让 WorkBuddy 先做项目核验: > 请核对这项技能依赖哪个 WeChat CLI 项目,给出项目地址和安装文档,检查是否支持我的系统和微信版本。确认它能与当前技能配合使用;找不到项目或文档时直接说明,不要猜安装命令。 确认项目和适配条件后,按该项目文档完成安装、初始化和必要授权。**验收标准:WorkBuddy 能实际读出一小段本机聊天记录**。只收到"安装成功"的回复,还不算配置完成。 > ⚠️ **数据安全提示**:本方案涉及读取、解密本机微信聊天数据。只处理你有权使用的记录;交给模型总结前,确认所选模型的数据处理方式。 ### 第 3 步:先核对记录,再让它总结 先选一个你熟悉的群,用**明确的群名、日期和时间段**做测试。提问示例(替换方括号内容即可): > 查找「[群名]」在 [日期] 20:00—21:00 的消息,列出最近 10 条文字消息,保留发送时间和发言人,先不要总结。找到多个同名群时,先让我选择。 对照微信检查:群有没有选错、时间是否对应、消息内容是否一致。原文作者提到好友数量第一次统计就出错,后来调整查询才修正——**能返回结果,不等于统计口径正确**。 核对无误后,再发总结要求: > 总结这个群在上述时间段的讨论,分成「主要话题」「明确结论」「待办事项」三部分。关键结论附消息时间,聊天里没有的信息不要补充。 **原则:范围先小后大。本机没有的记录,不要默认它能查到;查询结果和 AI 总结也要分开核对。** ### 第 4 步:把微信连接到 WorkBuddy 电脑端能正常查询后,再设置手机入口: **助理 → 设置 → 微信助理 → 连接** 用自己的微信扫描弹出的二维码,按手机提示完成连接。 > ⚠️ 注意选择「**微信助理**」,不要点到旁边的「微信客服」入口。 ![image.png](https://developer.qcloudimg.com/http-save/yehe-7660620/48b890a6085608fd0d46fadfbe08ac78.png) 微信助理连接入口(请扫描自己电脑上的二维码) > 💡 如果提示已有绑定,先核对当前绑定对象。重新绑定可能替换之前连接的智能体,确定要更换后再确认。 ### 第 5 步:在微信里做一次完整测试 绑定后,在微信助理对话中**先发一句问候**,确认能收到回复,再发送刚才在电脑端验证过的查询: > 请查询「[群名]」在 [日期] 的聊天记录,整理主要话题和待办事项。若无法访问本机记录,请直接告诉我失败原因。 测试期间,保持**电脑开机联网、WorkBuddy 运行**,并确保本地查询工具可用。 收到回复后,再抽查几条原始消息。能在微信中发起查询、读到对应记录并得到总结,才算整条流程接通。 也可以在手机端进行操作 ![5d8b5ebe-cb66-447b-a3d4-743823e55bbe.png](https://developer.qcloudimg.com/http-save/yehe-7660620/3ba3e79ffdbf8d7b4edf93369e9074bc.png) ![image.png](https://developer.qcloudimg.com/http-save/yehe-7660620/c101a0d7b5b24fbd33cb27cd89d648c1.png) ## 三、注意事项与风险提示 | 事项 | 说明 | |------|------| | 数据安全 | 本方案涉及读取、解密本机微信聊天数据,只处理你有权使用的记录 | | 模型隐私 | 交给模型总结前,确认所选模型的数据处理方式 | | 账号风险 | 微信对这类操作是否封号较难判断,**建议不要用常用微信操作**,避免封号带来麻烦 | | 网络依赖 | 电脑关机后是否可用未经验证,测试和使用期间保持电脑开机联网 | | 自动回复 | 理论上可实现自动回复,但操作方式需自行摸索,风险自担 | ## 四、快速上手 Prompt 模板汇总 | 场景 | Prompt 模板 | |------|-------------| | 环境检查 | 请检查这项技能需要的本地工具是否已安装、是否完成初始化。列出目前能用的功能,以及还缺什么。 | | 项目核验 | 请核对这项技能依赖哪个 WeChat CLI 项目,给出项目地址和安装文档,检查是否支持我的系统和微信版本。找不到项目或文档时直接说明,不要猜安装命令。 | | 消息核对 | 查找「[群名]」在 [日期] [时间段] 的消息,列出最近 10 条文字消息,保留发送时间和发言人,先不要总结。 | | 生成总结 | 总结这个群在上述时间段的讨论,分成「主要话题」「明确结论」「待办事项」三部分。关键结论附消息时间,聊天里没有的信息不要补充。 | | 微信端测试 | 请查询「[群名]」在 [日期] 的聊天记录,整理主要话题和待办事项。若无法访问本机记录,请直接告诉我失败原因。 |

优秀的个人博客,低调大师

AE 影视后期特效工程师实战:表达式与脚本驱动的智能动效流程

Adobe After Effects(AE)是影视后期、动态图形和视觉效果的核心工具。多数特效师依赖关键帧手工动画,而技术型特效工程师则通过 **表达式(Expression)** 与 **ExtendScript 脚本** 实现参数化控制、批量处理和自动化工作流,大幅提升效率并实现手工难以企及的复杂效果。本文从实战出发,覆盖 **表达式驱动物理动画**、**脚本自动化合成** 以及 **基于数据的动态图表生成**,提供完整代码,助你从“手动师”进阶为“代码驱动”的特效工程师。 --- ## 1. 表达式:用数学函数替代海量关键帧 表达式基于 JavaScript 语法,可控制图层的任何属性。我们以 **弹性缓动(Spring)** 和 **无关键帧随机运动** 为例。 ### 1.1 弹性缓动表达式(位置属性) 当图层需模拟弹簧效果(如弹窗弹出),传统方法需数十个关键帧。而表达式通过物理公式自动计算: ``` // 位置弹性表达式(附加在位置属性) freq = 2.5; // 振荡频率(Hz) decay = 1.8; // 衰减系数 amplitude = 100; // 初始振幅(像素) t = time - inPoint; // 从图层入点开始 if (t < 0) t = 0; // 带阻尼的弹簧模型(位移 = 振幅 * sin(2π*freq*t) * exp(-decay*t)) offset = amplitude * Math.sin(2 * Math.PI * freq * t) * Math.exp(-decay * t); value + [0, offset] // 在 Y 轴方向弹性运动 ``` 该表达式让图层在 Y 方向自动振荡并衰减,无需任何关键帧,且可实时调整参数。 ### 1.2 随机游走(模拟漂浮或噪点) ``` // 位置随机游走,适用于摄像机晃动或粒子随机偏移 seed = 12345; // 随机种子,确保可复现 seedRandom(seed, timeless = true); freq = 0.8; // 随机变化频率(次/秒) amp = 50; // 随机振幅 t = time * freq; offsetX = noise(t) * amp - amp/2; offsetY = noise(t + 100) * amp - amp/2; value + [offsetX, offsetY]; ``` `noise()` 是 AE 内置的 Perlin 噪声函数,产生平滑随机值,配合不同相位实现二维随机漂移。 --- ## 2. 脚本自动化:批量生成合成与图层 ExtendScript 是 AE 的自动化脚本语言(基于 ECMA-262),可操作项目、合成、图层和属性。以下脚本实现 **从 CSV 数据批量创建文字图层并设置动画**,常用于数据可视化或体育赛事信息板。 ### 2.1 读取 CSV 并生成合成 ``` // 批量生成合成.jsx #target aftereffects var csvFile = File("~/Desktop/data.csv"); csvFile.open("r"); var lines = csvFile.read().split("\n"); csvFile.close(); var compWidth = 1920; var compHeight = 1080; var frameRate = 30; var duration = 5; // 秒 for (var i = 1; i < lines.length; i++) { // 跳过表头 var parts = lines[i].split(","); if (parts.length < 3) continue; var name = parts[0]; var score = parseInt(parts[1]); var rank = parseInt(parts[2]); // 创建合成 var comp = app.project.items.addComp(name + "_Rank" + rank, compWidth, compHeight, 1, duration, frameRate); comp.openInViewer(); // 创建背景图层(纯色) var bg = comp.layers.addSolid([0.2, 0.2, 0.3], "Background", compWidth, compHeight, 1); bg.moveToBeginning(); // 创建文字图层(名字) var txtLayer = comp.layers.addText(name); var txtDoc = txtLayer.property("Source Text").value; txtDoc.fontSize = 120; txtDoc.fillColor = [1, 1, 1]; txtDoc.font = "Arial Bold"; txtLayer.property("Source Text").setValue(txtDoc); // 位置居中(X 轴居中,Y 轴随排名变化) var yPos = 400 + rank * 80; txtLayer.property("Position").setValue([compWidth/2, yPos]); // 添加缩放动画(从 0 到 100% 弹性) var scaleProp = txtLayer.property("Scale"); // 在 0 秒设关键帧为 [0,0] scaleProp.setValueAtTime(0, [0, 0]); // 在 1 秒设关键帧为 [120,120](过冲) scaleProp.setValueAtTime(1, [120, 120]); // 在 1.5 秒设关键帧为 [100,100] scaleProp.setValueAtTime(1.5, [100, 100]); // 应用缓动(Easy Ease) var key1 = scaleProp.keyframe(1); key1.easeOut = [0.2, 0.8]; var key2 = scaleProp.keyframe(2); key2.easeIn = [0.8, 0.2]; } ``` 该脚本自动为每行数据生成独立合成,包含背景和动态缩放文字,适用于排行榜类视频批量制作。 --- ## 3. 基于数据的动态图表生成(高级) 结合 AE 的路径属性,可生成动态数据曲线。脚本通过贝塞尔曲线连接数据点,并添加进度动画。 ### 3.1 生成折线图路径 ``` // 在形状图层上创建路径(数据点) function createChart(dataPoints, comp) { var shapeLayer = comp.layers.addShape(); var shapeGroup = shapeLayer.property("ADBE Root Vectors Group"); var pathGroup = shapeGroup.addProperty("ADBE Vector Shape - Group"); var pathProp = pathGroup.property("ADBE Vector Shape"); var points = []; var spacing = comp.width / (dataPoints.length - 1); var baseY = comp.height * 0.8; var scaleY = comp.height * 0.6; for (var i = 0; i < dataPoints.length; i++) { var x = i * spacing; var y = baseY - dataPoints[i] / 100 * scaleY; points.push([x, y]); } // 构建贝塞尔路径(使用 Catmull-Rom 插值平滑) var vertices = []; var inTangents = []; var outTangents = []; for (var i = 0; i < points.length; i++) { vertices.push(points[i]); // 切线计算(简化) if (i === 0) { inTangents.push([0, 0]); outTangents.push([(points[1][0]-points[0][0])/3, (points[1][1]-points[0][1])/3]); } else if (i === points.length-1) { inTangents.push([(points[i][0]-points[i-1][0])/3, (points[i][1]-points[i-1][1])/3]); outTangents.push([0, 0]); } else { var dx = points[i+1][0] - points[i-1][0]; var dy = points[i+1][1] - points[i-1][1]; inTangents.push([-dx/6, -dy/6]); outTangents.push([dx/6, dy/6]); } } var pathValue = pathProp.value; pathValue.vertices = vertices; pathValue.inTangents = inTangents; pathValue.outTangents = outTangents; pathValue.closed = false; pathProp.setValue(pathValue); // 添加描边 var stroke = shapeGroup.addProperty("ADBE Vector Stroke - Group"); stroke.property("ADBE Vector Stroke Color").setValue([1, 0.5, 0]); stroke.property("ADBE Vector Stroke Width").setValue(4); // 添加路径修剪(Trim Paths)实现绘制动画 var trim = shapeGroup.addProperty("ADBE Vector Trim - Group"); trim.property("ADBE Vector Trim End").setValueAtTime(0, 0); trim.property("ADBE Vector Trim End").setValueAtTime(2, 100); } ``` --- ## 4. 渲染队列自动化 脚本可批量将合成添加到渲染队列,输出预设格式,实现夜间批量渲染。 ``` function renderComp(comp, outputPath) { var renderQueue = app.project.renderQueue; var item = renderQueue.items.add(comp); item.outputModule(1).file = new File(outputPath); item.outputModule(1).applyTemplate("H.264 - 1080p 30"); item.render = true; } // 遍历所有合成,调用 renderComp ``` --- ## 5. 调试与优化技巧 - **表达式调试**:使用 `console.log()` 在表达式控制台输出(需启用 `Enable JavaScript Debugger`)。 - **脚本调试**:使用 `$.writeln()` 输出到 ExtendScript Toolkit 控制台。 - **性能优化**:避免在表达式中频繁使用 `value`(会触发重算),优先使用 `thisLayer` 属性缓存。 --- ## 结语 AE 的表达式和脚本将特效制作从“手工绘画”提升到“程序生成”的层次。本文提供的弹性运动、随机噪声、批量合成生成和数据图表绘制代码,均可直接应用到实际项目中。技术型特效工程师应熟练运用这些工具,将重复劳动自动化,把创造力释放到更复杂的视觉设计上。建议你从修改示例参数开始,逐步尝试将外部 API(如实时天气数据)接入 AE,打造真正的数据驱动动态图形。

优秀的个人博客,低调大师

不止是冰山一角——阿里云效团队大规模代码构建技术实践

视频地址:https://yq.aliyun.com/webinar/play/216 什么是持续集成? 大师Martin Fowler认为持续集成是一种软件开发实践,在实践中团队开发成员会频繁的进行任务的集成,通常每个成员每天都会集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建来验证,从而尽快地发现集成错误,快速进行修复。 如上图所示,一个完整的持续集成环节包括:首先项目经理创建一个项目,将项目成员添加到项目中;开发人员在项目中拉取开发分支进行代码开发,在开发过程中,开发人员将代码提交到代码仓库(如SN、GIT);后端的持续集成任务会定时扫描代码仓库,如果发现代码有变更,马上触发一次CI构建,一次CI包括源码下载、代码编译、静态扫描、单元测试、覆盖率分析、sona检查、环境打包部署、自动化用例执行等;再以消息的

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册