发 3 个药 school carpt ptzone 各一
普通玩家,没几个,不知道哪来的邀请了,需要的留一下邮箱
xiaohack博客专注前沿科技动态与实用技术干货分享,涵盖 AI 代理、大模型应用、编程工具、文档解析、SEO 实战、自动化部署等内容,提供开源项目教程、科技资讯日报、工具使用指南,助力开发者、AI 爱好者获取前沿技术与实战经验。
普通玩家,没几个,不知道哪来的邀请了,需要的留一下邮箱
还在为大模型应用开发的高门槛发愁?想快速搭建属于自己的AIAgent却被复杂配置劝退? 1月15日,商汤大装置事业群算法工程师陈家豪带来 「LazyLLMAgentic应用开发快速上手从一行代码说起」 直播,用一行代码解锁大模型应用开发新姿势,现在就为大家梳理这场 直播的核心亮点,错过直播的同学速码收藏吧~ 本次直播围绕四大核心模块展开,从技术演进到实操落地,层层递进带大家玩转LazyLLM: 回顾2022年底ChatGPT引爆AI浪潮后,大模型从千亿参数跃迁、多模态融合,到2024年MOE架构兴起、2025年Agentic能力成为主战场的完整演进路径,解析黄仁勋"五层蛋糕理论"下AI应用的核心价值。 作为商汤大装置推出的一站式多Agent应用开发工具,LazyLLM主打 “低代码、低成本、高灵活” ,破解AI应用开发中的选型难、调试难、优化难等痛点,支持从原型搭建、数据回流到迭代优化的全流程。 一行代码搞定大模型应用:从环境安装、API密钥申请,到模型调用、RAG系统搭建、Agent创建,全程代码演示,手把手教大家快速落地AI应用。 涵盖本地模型部署、多数据库适配、MCP协议接入、生产级部署等进阶技能,助力开发者从Demo走向实际生产。 不用再为模型、数据库选型纠结!LazyLLM内部整合了主流模型厂商(商汤科技、火山引擎、阿里百炼、硅基流动等)、在线/本地数据库服务。 通过统一的OnlineModule,一行代码即可调用文本生成、视觉模型、Embedding向量、文生图等各类模型,切换厂商或模型类型无需修改核心逻辑,极大降低试错成本。 复杂应用不用逐行堆砌代码!Flow组件提供pipeline(流水线)和parallel(并行处理)两种核心能力,支持业务逻辑的可视化编排。 以RAG系统为例,仅需十余行代码,即可完成文档解析、切片入库、多路检索、结果重排、模型生成的全流程搭建,结构清晰且可灵活调整。 Agent开发三步搞定:定义工具→创建Agent→运行! 通过FunctionCallRegister可快速将普通函数转化为大模型可用工具,配合MCP(模型上下文协议),能无缝接入外部工具和数据源,实现浏览器浏览、文件操作等复杂功能。无论是简单的任务执行,还是多工具协同的复杂场景,都能以极简代码实现。 LazyLLM不止于快速搭建原型,更提供完整的生产级支持: 不复杂!支持Windows/MacOS/Linux系统,Python3.10-3.12版本均可,通过pipinstalllazyllm==0.7.2或gitclone即可快速安装,一行代码完成基础配置。 核心能力相近,但LazyLLM在性能、服务部署、逻辑编排上更具优势,主打生产级友好,并沉淀了更多RAG/Agent落地场景的算法经验,避免仅停留在Demo阶段。 基础版仅需十余行代码!实际落地时可通过内部模块自定义编排,满足个性化需求。 支持!选择多模态Embedding模型(如千问v2.5vrembedding),可直接处理文本、图片甚至视频的混合输入,也可通过视觉模型描述图片后再进行向量化入库。 完全兼容!只要模型支持OpenAI-like接口,指定source为openai并配置baseurl,即可直接调用,无需自定义格式。 项目地址: https://github.com/LazyAGI/LazyLLM GitCode搜索「LazyLLM」 本次直播的PPT和演示代码可在技术交流群内获取,感兴趣的同学请扫描下方二维码加入~ 无论您是AI新手还是资深开发者,都能通过LazyLLM降低大模型应用开发门槛。 后续我们还会带来更多实操教程和版本更新解读,请持续关注!如果在使用过程中有任何问题,欢迎在交流群中与我们互动~ 欢迎升级体验 LazyLLM v0.7.1,请大家去github上点一个免费的star,支持一下~ 仓库链接🔗: 更多技术内容,欢迎移步 "LazyLLM" 讨论!
一、直播核心内容速览
No.1 大模型技术时间线
No.2 LazyLLM框架揭秘
No.3 实操演示
No.4 高阶用法速览
二、LazyLLM核心亮点速递

No.1 All-in-One选型自由,切换零成本

No.2 Flow组件:像搭乐高一样编排应用




No.3 低代码构建Agent,工具调用超简单

No.4 全流程支持:从Demo到生产级落地
三、高频问题答疑汇总
Q1 安装配置复杂吗?
Q2 与LangChain、LlamaIndex的区别?
Q3 搭建RAG应用需要多少代码?
Q4 支持多模态向量化吗?
Q5 能否调用私有化部署模型?
四、资源福利get!
一、概述总结 二、功能介绍 支持微信小程序与 PC 端使用,V2 版专属多开功能,可无限创建小程序,且主平台资源能同步至所有多开平台,降低多账号运营成本。 多元资源发布 全面覆盖六大资源类型,包括图文资源、单个视频资源、网盘资源、卡密资源(序列号、激活码等),以及新增的多章节音频课程、多章节视频课程,音视频课程均支持试看 / 试听,提升用户购买转化率。 自定义配置功能 支持 DIY 首页内容与布局,可自定义小程序主题颜色(导航栏、背景色等),灵活设置课程海报及会员推广海报,满足不同品牌风格需求。 (二)营销裂变功能 支持用户推广资源获取佣金的分销模式,可开设代理账号进行分销推广,无限发展代理团队,扩大推广范围;设置多等级佣金比例,激励代理与用户积极推广。 任务裂变引流 内置任务系统,用户需完成邀请好友助力、观看赞助视频等任务即可获取资源访问权限,实现低成本爆粉引流;支持生成推广海报,方便用户一键分享传播。 流量主变现 接入小程序流量主广告,包含激励视频广告等多种形式,用户在使用过程中观看广告,运营者可赚取广告费,拓宽盈利渠道。 (三)会员与付费功能 设置黄金月会员、铂金年会员、钻石永久会员等多档次会员,会员可享受资源免费获取、无广告等特权,会员套餐支持自定义编辑与管理。 多元支付与兑换 支持微信支付、卡密兑换、积分兑换等多种付费方式,安卓与苹果手机均适配卡密支付,用户可通过兑换码获取资源或会员,提升付费便捷性。 社群与跳转挂载 资源详情页可挂载微信社群码(支持设置付费后加入),聚合专属私域流量;同时支持跳转外部小程序或 H5 网页,实现多平台流量互通。 (四)管理后台功能 管理后台可查看今日 / 昨日 / 累计访问量、订单数、交易金额、代理余额等核心数据,支持近 7 天访问量统计与订单统计图表,助力运营决策。 精细化管理工具 包含资源管理(批量导入、编辑、删除)、用户管理、订单管理、代理管理、卡密管理(新增、批量删除、状态查询)、广告管理(广告位设置与管理)等功能,操作便捷高效。 特权与社群管理 可新增、编辑、删除会员特权(如资源分类权限、广告屏蔽等),管理社群列表,支持添加、编辑社群信息,实现私域流量精细化运营。 三、适用场景与行业价值 适合网络创业者、副业从业者,可借助系统发布闲鱼电商运营、微信营销、短视频运营等创业项目教程,通过会员订阅、资源售卖实现变现。 自媒体与内容创作者 自媒体人可发布原创图文、音视频课程(如今日头条创作、视频号引流等内容),利用分销与裂变功能扩大影响力,通过流量主广告与付费内容双重盈利。 培训机构与教育从业者 职业培训机构、技能讲师可发布多章节音视频课程(如 IT 教程、手艺教程、餐饮教程等),搭建专属知识付费平台,实现课程线上售卖与学员管理。 资源整合者 整合小说漫画、数据文献、软件脚本、源码资源等各类虚拟资源,通过网盘资源、卡密资源形式售卖,借助多开功能与代理体系扩大资源覆盖范围。 (二)行业价值 无需复杂技术开发,依托微擎系统快速部署,支持中小创业者与个体以低成本搭建专属知识付费平台,快速实现资源变现。 全场景运营支持 从资源发布、营销推广、用户转化到私域沉淀,提供全流程功能支持,解决内容变现过程中的引流、转化、留存等核心痛点。 盈利模式多元化 融合付费内容售卖、会员订阅、流量主广告、分销佣金、代理加盟等多种盈利方式,打破单一变现局限,提升收入天花板。 高效运营工具 多开同步、批量管理、数据监控等功能降低运营难度,自定义配置满足不同行业品牌需求,助力用户聚焦内容创作与推广核心。 四、问答环节 问:购买后能获得哪些服务保障? 问:会员体系有哪些特权? 问:资源如何实现多开平台同步?
智创云享知识付费 V2 小程序系统是一款面向创业者、自媒体及培训机构的全场景内容付费解决方案,支持微信小程序与 PC 端多端适配,以 “智慧、创造、云端、共享” 为核心理念,提供知识付费、资源变现、营销裂变等一站式服务。相较于 V1 版本,V2 升级为应用多开版,新增自定义首页布局、主题设置、多章节音视频课程等核心功能,涵盖图文、视频、网盘、卡密、音频课程、视频课程六大资源类型,融合流量主变现、会员分销、代理加盟、社群私域等多元盈利模式,助力用户轻松实现资源内容全方位运营变现。系统采用微擎系统交付,支持 PHP5.6 及以上多版本运行环境,提供官方正品保障与 1 年免费更新服务,以灵活配置和强大功能适配不同用户的知识变现需求。
(一)核心基础功能
多端适配与多开能力
分销与代理体系
多等级会员体系
全面数据监控
(一)适用场景
创业者与个体经营者
低门槛变现
问:系统支持哪些运行环境?
答:服务器需满足最低 1 核 CPU、2G 内存、3M 带宽,Linux Centos7.0 64 位及以上;软件环境要求 PHP≥5.6(推荐 7.2)、MYSQL≥5.6(推荐 5.6)、NGINX≥1.5,推荐使用宝塔控制面板;此外还需备案域名(配备 SSL 证书)、认证微信小程序及开通微信支付。
答:首次购买赠送 1 年服务套餐,服务周期内可免费更新至最新版;提供官方正品保障,购买前可联系客服查看前端和管理后台功能演示;售后服务时间为周一至周日 10:00-18:00,注意因代码产品可复制性,概不接受退款。
答:不同等级会员可享受对应特权,包括在有效期内免费获取各类资源(不限数量)、屏蔽站内广告、解锁全部分类资源等,具体特权可在管理后台自定义设置与编辑。
答:V2 版支持主平台向所有多开平台同步资源,无需在每个多开账号单独上传,大幅提升多账号运营效率,该功能为 V2 版专属,V1 版不支持。
一、概述总结 二、功能介绍 全场景店铺管理:商家通过手机即可完成商品上下架、分类管理、库存调整、订单处理等操作,同时配备店铺 LOGO、主题图片、导航设置等可视化配置功能,满足个性化店铺搭建需求。 双模式配送服务:提供用户到店自提与商家配送两种模式,适配超市、生鲜菜场、便利店等不同业态的履约需求,提升购物便捷性。 (二)营销推广工具 积分商城:用户每笔订单核销后可获得积分,积分可兑换商品并支持门店自提,增强用户复购意愿与粘性。推广激励机制:后台生成专属推广二维码,商家可通过填写推广码注册,鼓励现有商家推广新商家入驻,扩大平台商家规模。 多样化活动支持:包含商品秒杀、今日推荐、附近商家推荐等活动形式,结合销量排序、距离排序、评分排序等展示方式,提升商品曝光率。 (三)订单与用户管理 会员与积分管理:记录用户积分明细、消费足迹、商品收藏等数据,支持会员等级划分,便于商家开展精准营销。 评价与沟通工具:集成在线客服功能,支持用户发表评论、上传图片,商家可及时回复评价,提升服务质量;同时提供通知消息功能,实时推送订单状态、活动福利等信息。 (四)数据与资产管控 商家资产与提现:支持提现记录查询、手续费计算、微信打款 / 原路退回等功能,保障商家资金安全与便捷流转。 广告与导航管理:可设置首页广告、顶部菜单、导航链接等,支持按地区配置显示内容,提升平台运营灵活性。 三、适用场景与行业价值 零售业态:超市、便利店、水果店、蔬菜店、生鲜菜场等; 服务与消费业态:鲜花绿植店、美食店、特色零售店等; 连锁企业:需要跨地区管理、多门店协同运营的连锁品牌。 (二)行业价值 对用户:整合本地优质商家资源,提供 “线上下单、线下自提 / 配送” 的便捷购物体验;通过优惠券、积分等福利降低消费成本;基于距离、销量、评分等筛选条件,快速找到心仪商品与店铺,提升购物效率。 对平台:构建多商家、多地区的本地生活服务生态,形成公共流量池,提升平台品牌影响力;通过商家入驻与续费模式实现可持续盈利,同时借助推广机制扩大生态规模。 四、问答环节 问:商家入驻有哪些方式? 问:用户下单后有哪些取货方式? 问:系统能获取用户哪些信息用于运营? 问:系统支持哪些支付方式? 问:商家如何查看店铺经营数据?
多商家智慧新零售小程序系统是一款专为本地商家量身打造的数字化经营解决方案,支持微信小程序部署,通过微擎系统在线交付,以 “网店 + 门店” 双驱动为核心,助力商家实现全渠道业务增长。系统支持多商家入驻、多地区管理,商家可通过手机便捷操作店铺,同时集成商品秒杀、优惠券发放、积分商城等多元化营销工具,为用户提供丰富购物体验,为商家搭建公共流量池,增强品牌影响力与用户粘性。
(一)核心运营功能
多商家与多地区管理:支持优势商家批量入驻,后台可添加、编辑、删除管理城市,实现跨区域业务布局,搭建公共流量池,推动品牌规模化发展。
优惠券体系:支持平台与商家双向发放优惠券,可设置领取时间、过期时间等参数,助力商家引流获客、刺激消费。
全流程订单管控:覆盖待付款、待提货、待评价、退款 / 售后等订单状态,支持扫描核销、订单统计、退款管理等功能,商家可实时掌握订单动态。
多维度数据统计:包含今日关键指标、累计指标、每日 / 每周 / 每月销售统计、浏览量统计、核销统计等,为商家经营决策提供数据支撑。
(一)适用场景
本系统适用于本地生活服务领域的各类实体商家,包括但不限于:
对商家:打破线下门店地理限制,拓展线上销售渠道,实现 “网店 + 门店” 双增长;通过数字化工具简化店铺管理流程,降低运营成本;借助多元化营销功能精准触达用户,提升客流量与复购率;依托数据统计优化商品结构与经营策略,增强市场竞争力。
问:该小程序系统支持哪些运行环境?
答:支持 PHP5.3、PHP5.4、PHP5.5、PHP5.6、PHP7.1、PHP7.2、PHP7.3、PHP7.4、PHP8.0 多种版本,适配主流服务器配置。
答:可通过后台生成的推广二维码入驻,或填写推广码完成注册,平台支持推广激励机制,鼓励现有商家推广新商家加入。
答:支持两种模式,用户可选择到店自提,也可由商家配送,满足不同场景下的购物需求。
答:可获取用户微信昵称、头像、性别、地区等基础信息,以及位置信息、相册权限,帮助商家精准定位用户、优化服务与营销方案。
答:支持微信支付,满足用户主流支付习惯,保障交易安全便捷。
答:系统内置多维度数据统计功能,商家可查看今日订单、销售额、退款情况、浏览量、核销统计等关键指标,以及每日、每周、每月销售趋势,助力经营决策。
一、概述总结 二、功能介绍 多元支付渠道:集成微信支付、新大陆支付、乐刷支付等三方支付渠道,为用户提供丰富的支付选择,提升交易便捷性。 灵活支付辅助:支持他人代付功能,可自由开启或关闭,同时提供指纹支付、密码支付等支付验证方式,兼顾支付安全性与便捷性。 (二)后台管理功能 配套管理工具:包含配送管理、物流设置、权限管理、小票打印、后台设置等功能,实现支付与商城运营的无缝衔接,提升管理效率。 数据与安全保障:源码加密处理,保障系统安全;支持用户信息(微信昵称、头像等)、位置信息等必要隐私信息合规获取,兼顾功能需求与隐私保护。 三、适用场景与行业价值 本地生活场景:支持同城配送、到店取货等配送方式,适用于本地餐饮、生鲜、便利店等线下门店的线上小程序,解决到店与配送订单的支付结算问题。 营销活动场景:适用于开展积分兑换、限时促销、拼团等营销活动的小程序,保障营销活动中的支付环节顺畅,助力活动落地。 (二)行业价值 赋能服务商模式:支持服务商分润功能,为搭建服务商体系的企业提供盈利支撑,助力业务拓展与生态构建。 提升用户体验:多元支付渠道与便捷支付方式,减少用户支付障碍,提升交易转化率;完善的通知体系让用户实时掌握订单与支付状态。 简化运营管理:与微擎系统无缝对接,后台功能全面且操作便捷,实现支付、配送、权限等一体化管理,降低商城运营的技术门槛与管理成本。 四、问答环节 问:系统支持哪些 PHP 版本运行? 问:除了微信支付,还支持哪些支付渠道? 问:是否支持服务商分润功能? 问:后台是否有订单相关的管理功能?
智信商城三方支付微信小程序系统是一款专为微信小程序量身打造的支付解决方案,依托微擎系统实现便捷交付,具备源码加密保障与官方正品品质承诺。系统以 “更低交易费率、结算灵活、支持服务商分润” 为核心优势,支持多种 PHP 版本运行,能满足微信小程序商城的各类支付需求。同时平台提供担保交易、专业测试、未安装无理由退款等多重保障,全程监管服务流程,卖家服务响应及时,为用户提供安全、可靠的支付系统支持。
(一)核心支付功能
多场景支付覆盖:支持普通订单支付、会员充值支付、积分商城支付、营销活动支付等多种商城核心场景,全面满足小程序商城的交易支付需求。
支付设置:可在后台进行支付类型配置、商户号管理等操作,支持消息推送、订阅消息、邮箱通知、公众号通知等多渠道通知设置,实时同步支付相关信息。
(一)适用场景
电商零售场景:各类线上微信小程序商城,包括综合百货商城、垂直品类电商等,满足日常商品销售的订单支付、会员充值等需求。
降低运营成本:提供更低的交易费率,结算直接到个人银行卡,减少中间环节成本,提升商家资金周转效率。
问:该系统仅适用于微信小程序吗?
答:是的,系统明确标注适用类型为微信小程序,是专为微信小程序定制的三方支付解决方案。
答:支持 PHP5.4、PHP5.5、PHP5.6、PHP7.1、PHP7.2、PHP7.3 版本。
答:除微信支付外,还支持新大陆支付、乐刷支付等三方支付渠道。
答:支持服务商分润,是系统核心优势之一,可满足服务商模式的盈利需求。
答:有,后台包含订单列表、配送管理、物流设置等功能,可实现订单与支付相关的一体化管理。
最近在后台和私信里,被连续问到一个问题: 这个问题其实问得非常好,因为它其实是游戏行业的业务特性决定的选择。现在很多人理解IP查询,还停留在「展示属地」「统计访问来源」这种偏轻量的场景,但在游戏公司里,IP往往直接参与核心业务逻辑,比如: 换句话说,IP判断不是“展示层功能”,而是会影响账号、收益甚至公平性的底层能力。一旦出问题,影响的不是页面体验,而是真金白银。 理论上,在线IP API确实“能用”,但游戏公司往往很快就会遇到几个绕不过去的问题。 性能和稳定性。 口径不可控。 出海合规性 你无法解释历史判断。 这也是为什么很多中大型游戏公司,最终都会走向直接购买IP离线库。IP离线库最大的价值,其实不是“数据多”,而是确定性: 数据版本是固定的; 解析逻辑是可控的; 同一 IP 在同一版本下,结果永远一致,这些对于游戏公司来说非常关键,因为在游戏行业,能够解释往往比其他的更重要。 这也是很多人会继续追问的问题:“既然这么重要,为什么不自己维护一套IP数据?”原因其实也很简单现实,自己做+维护的成本远远高于直接购买一套可更新的数据库。 第二,自建成本远比想象中高。 第三,这并不是游戏公司的核心竞争力。 从我接触过的一些实际案例来看,游戏公司在选IP离线库时,关注点通常集中在这几件事上: 很少有团队会单纯因为“字段最多”而买单,反而更在意出问题时能不能兜住。其实还有一个行业现象:IP 离线库正在“下沉”,IP 离线库已经不再只是“大厂专属”。随着轻量化和模块化方案的出现,越来越多中小型游戏团队,也开始直接使用成熟的 IP 离线库,而不是自己拼凑方案。这背后其实反映的是行业共识的变化: 你如果要问我对于一个游戏公司来说,推荐哪个IP数据库,这个是市面上领先的那几家都可以,如果你的公司资金足够,可以都购买进行补充、交叉验证,如果只想要一个,可以试试我们用的“IP数据云离线库”,算是市面上主流的离线库了。 好了,今天的分享就到这里,欢迎留言进行讨论~“为什么游戏公司不自己做IP解析,反而会直接购买IP离线库?”
“在线API明明也能查,为什么还要花钱买离线数据?”二、在线 IP 查询接口,在游戏场景下的问题很现实
游戏登录、匹配、战斗结算等链路,对延迟极其敏感。在高并发情况下,每一次外部API调用,都是一次不确定因素,哪怕只有几毫秒的抖动,都会被放大。
在线接口背后的数据更新、规则调整,往往对外是“无感知”的,但在游戏里,同一个IP今天判定为A区,明天变成B区,很可能直接引发玩家投诉甚至纠纷。
近年来,游戏的海外运营越多,有好多游戏公司没有搞清楚出海地的相关规定,临出海开始火急火燎的进行IP归属地数据库的购入流程。
当运营、客服或合规部门问“这个账号当时为什么被判定为异常”时,如果答案是“当时查的第三方接口”,那基本等于没有答案。IP离线库的本质价值
Q:为什么不自己做一套?
第一,IP数据维护是一项长期、高频、重资产工作。
IP归属变化、运营商调整、云厂商地址漂移,这些都不是一次性工程,而是需要持续投入。
你不仅需要数据来源,还需要清洗、验证、版本管理、回滚机制,最后还要为“判错”承担内部责任。
对绝大多数游戏公司来说,把资源投入到玩法、内容和用户体验上,远比“维护IP数据”更有价值。游戏公司选择IP离线库时,真正看重什么?
IP能力,已经是基础设施,而不是加分项。
大佬们轻点玩,1c1g 禁不起折腾
本来做算法搞研究的,没啥开发经验,最近想转开发,领导喊我一个星期开发一个系统出来。
想接点儿单子,能糊口就行。
最近糟心新闻有点多, 还是来看看 AI 笑话放松一下吧(以下均为使用 Antigravity 过程中模型生成的内容):
货不对板

着急下班

人为疏忽

完全忘记

头昏眼花

绝对吊打

恰到好处的 emoji

早上送娃去学校,路上差点被一台龟速的网约车碰瓷。
经过如下:
本人驾龄超过 10 年,紧急情况下没有错误操作,如果换作新手司机,很容易就追尾或者撞到违停车辆。
事后猜测:
碰瓷可能性较大,如果后方车辆追尾,网约车不仅可以免费修车还能拿到误工费。
PS:
前段时间只是听说网约车收入下降特别厉害,平均一天干十几个小时,一个月才只有 4000 多一点。
要搬家了,咨询了下发现新小区没有电信。
目前在用电信 698 小团圆,200M + 10G 流量,官网咨询后
首页显示最后回复时间是 几分钟前,可进帖子里都是 一小时前 了。
是不是缓存出问题了?




资深程序员都知道,开发效率的瓶颈往往不在于手速,而在于环境配置、接口调试、查阅文档以及寻找市场定位这些琐碎环节的损耗。市面上主流的 IDE 虽然功能全面,但在处理特定任务时,往往不如一些垂直领域的小工具来得顺手。 这里挑选了 7 款能够实质性改善开发体验的工具,它们不一定是最热门的,但都在各自的领域解决了具体的痛点。 在终端处理 API 返回数据或日志时,面对一大坨没有格式化的 JSON 文本是常态。虽然 那 Fx 就可以将终端输出的 JSON 数据转化为可交互的视图,支持鼠标点击展开或折叠节点,就像在浏览器控制台里查看对象一样清晰。而且它保留了命令行的灵活性,支持使用 JavaScript 函数(如 map、filter、reduce)直接对数据进行实时筛选和转换。对于后端开发人员而言,就不再需要把日志复制到在线格式化网站,直接在命令行里就能完成从查看、清洗到分析的全过程,既保证了数据安全,又维持了工作流的连贯性。 有没有谁被环境配置坑过,请举手!Docker 虽然隔离性好,但对于简单的本地开发调试,编写 Dockerfile、配置挂载卷和端口映射依然耗时。 ServBay 就是一个开箱即用的工具箱,具备一套完整的 GUI 本地开发环境,最佳的 Docker 替代品。它内置了 PHP、Node.js、Python、Go、Rust 等主流编程语言,并且做好了版本隔离。开发者可以在不同项目间通过图形界面一键切换语言版本,无需手动修改环境变量。 在数据库方面,MySQL、PostgreSQL、Redis 和 MongoDB 也已预置妥当。值得一提的是,它整合了本地 AI 部署能力,支持一键运行常见的 AI 模型。省下来的时间都够打一局王者了。 Curl 是行业标准,但它的设计初衷是传输数据,而非供人阅读。使用 Curl 调试接口时,就要手动添加一长串参数来设置 Header,且返回的 JSON 默认没有格式化和高亮,阅读体验较差。 HTTPie 是一个给人用的 CLI 工具。它的语法极其简洁,例如 当忘记某个命令的用法时,运行 TLDR(Too Long; Didn't Read)Pages 解决了这个问题。它是由社区维护的简化版文档,只列出该命令最常用的 5-10 个实际使用案例。比如查询 在编写技术文档、教程或汇报 Bug 时,截图就没办法完整展示动态过程,而录制视频不仅文件体积大,画面容易模糊,观众也没办法复制视频中的代码,交互体验较差。 Asciinema 就不同了,它录制的不是视频像素,而是终端的文本字符流。生成的播放文件体积极小,在网页上播放时看起来像视频,但本质上是文本。那观众就可以随时暂停,直接选中并复制演示过程中的命令行代码。对于开源项目的 README 编写者或技术博客作者,用 Asciinema 展示安装和配置过程,专业又实用,极大提升了文档的可读性和互动性。 很多开发者容易陷入闭门造车的困境,用顶尖的技术解决一个不存在的需求。Exploding Topics 不直接参与代码编写,但对产品选型和方向判断极具参考价值。 该工具通过算法分析搜索数据和互联网讨论热度,识别那些处于早期增长阶段但尚未被主流大众熟知的话题。对于寻找副业方向或独立开发灵感的程序员,它能帮助过滤掉单纯的媒体炒作,发现真正具有增长潜力的利基市场。在技术栈选型或产品功能定义阶段,利用客观数据验证需求,比单纯依靠直觉要靠谱得多,能有效降低方向性错误的风险。 在技术传播和个人品牌建设中,代码的卖相也挺重要的。很多开发者习惯直接截取 IDE 屏幕,截图的IDE屏幕都不怎么好看,就像分辨率模糊还有配色不统一,严重影响阅读体验。Carbon 就是那个让很多推特大V和技术博主的秘密武器。 这款工具将代码分享提升到了设计美学的层面。不需要打开 Photoshop,只要粘贴代码,Carbon 就能自动套用优雅的语法高亮主题、添加窗口阴影和背景填充,瞬间生成一张海报级的高清图片。对于撰写技术文档、准备演示文稿(PPT)或是在 LinkedIn 与 Twitter 上分享技术见解的程序员来说,它不仅提升了信息的可读性,更在细节处展示了你对作品质量的极致追求,是打造专业开发者形象的必备利器。 优秀的开发者不仅会写代码,更懂得利用工具来优化自己的工作流。 从 Fx 和 HTTPie 对终端体验的改良,到 ServBay 对本地环境的整合,再到 Exploding Topics 对市场方向的指引,这些工具涵盖了从“想做什么”到“怎么开发”的各个环节。它们的存在证明了,在主流的庞大生态之外,依然有许多精致的工具在专注于解决具体而微小的问题。尝试将它们纳入工具箱,或许能为日常开发带来意想不到的流畅感。Fx — 终端里的可视化 JSON 浏览器

jq 是处理这类数据的标杆工具,但它的语法对记忆力有一定要求,且交互性较弱,往往需要反复试错才能提取到想要的数据。ServBay — 本地化 AI 与全栈环境集成平台

HTTPie — 符合直觉的命令行 HTTP 客户端

http POST url name=value 就能自动构造 JSON 请求体,无需繁琐的参数指定。它默认开启语法高亮,自动格式化返回的 JSON 数据,并且只在非管道输出时显示 Header 信息,保持输出界面的清爽。对于日常的 API 冒烟测试或快速调试,HTTPie 提供的交互体验远优于 Curl,同时又比启动 Postman 这种重型 GUI 软件要快得多,是终端爱好者的首选。TLDR Pages — 只有干货的命令行手册

man 查看手册不是不可以,但是看的眼都花了也找不到答案。其实,开发者不需要了解参数背后的系统调用原理,只想快速知道“怎么解压这个 tar.gz 文件”或者“怎么更新 git 子模块”。tar,它会直接给出压缩和解压的常用命令组合,而不是列出几百个参数选项。它不是要替代官方文档,而是作为一种快速参考,在开发者卡壳的那一瞬间提供最直接的帮助,大幅节省查阅资料的时间。Asciinema — 轻量级终端会话录制工具

Exploding Topics — 技术趋势风向标

Carbon — 代码截图的颜值标准

总结
作者:残风、栀七 Assistant Agent 是一个基于 Spring AI Alibaba 构建的企业级智能助手框架,采用代码即行动(Code-as-Action)范式,通过生成和执行代码来编排工具、完成任务。它是一个能理解、能行动、能学习的智能助手解决方案,可帮助企业快速构建智能答疑客服、系统诊断、运维助手、业务助理、AIOps 等智能体。 仓库地址:https://github.com/spring-ai-alibaba/AssistantAgent Assistant Agent 是一个功能完整的智能助手,具备以下核心能力: 💡 以上仅为典型场景示例。通过配置知识库和接入工具,Assistant Agent 可适配更多业务场景,欢迎探索。 以下是 Assistant Agent 处理一个完整请求的端到端流程示例: 项目已内置默认配置,只需确保 API Key 正确即可。如需自定义,可编辑 所有扩展模块默认开启并采用合理的配置,无需额外配置即可快速启动。 💡 框架默认提供 Mock 知识库实现用于演示测试。生产环境需要接入真实知识源(如向量数据库、Elasticsearch、企业知识库 API 等),以便 Agent 能够检索并回答业务相关问题。 默认配置已启用知识库搜索,可直接体验: 实现 SearchProvider 接口,接入你的业务知识源: 作用:多维度意图识别框架,通过评估图(Graph)对信息进行多层次特质识别。 核心能力: 双评估引擎: 作用:根据评估结果和运行时上下文,动态组装发送给模型的 Prompt。示例: 核心能力: 对比传统方案: 作用:从 Agent 执行历史中自动提取并保存有价值的经验。 核心能力: 作用:积累和复用历史成功执行经验。 核心能力: 快速意图响应: 作用:创建和管理定时任务或事件触发的 Agent 执行。 核心能力: 作用:提供灵活的消息回复能力,支持多种输出渠道。 核心能力: 作用:提供高度可扩展的工具体系,让 Agent 能够调用各类外部工具完成任务。 核心能力: 作用:多数据源统一检索引擎,为 Agent 的问答和决策提供知识支撑。 核心能力: 配置示例: 💡 以上搜索功能默认提供 Mock 实现供演示测试。生产环境需实现 🙏 致谢: Spring AI Spring AI Alibaba GraalVM 联系方式:更多接入与使用方式,可查看文末微信与钉钉群,与官方维护团队取得联系。
📖 简介
技术特性
Assistant Agent 能帮你做什么?
为什么选择 Assistant Agent?

适用场景


整体工作原理

项目结构
assistant-agent/
├── assistant-agent-common # 通用工具、枚举、常量
├── assistant-agent-core # 核心引擎:GraalVM 执行器、工具注册表
├── assistant-agent-extensions # 扩展模块:
│ ├── dynamic/ # - 动态工具(MCP、HTTP API)
│ ├── experience/ # - 经验管理与快速意图配置
│ ├── learning/ # - 学习提取与存储
│ ├── search/ # - 统一搜索能力
│ ├── reply/ # - 多渠道回复
│ ├── trigger/ # - 触发器机制
│ └── evaluation/ # - 评估集成
├── assistant-agent-prompt-builder # Prompt 动态组装
├── assistant-agent-evaluation # 评估引擎
├── assistant-agent-autoconfigure # Spring Boot 自动配置
└── assistant-agent-start # 启动模块🚀 快速启动
前置要求
1. 克隆并构建
git clone https://github.com/spring-ai-alibaba/AssistantAgent.git
cd assistant-agent
mvn clean install -DskipTests2. 配置 API Key
export DASHSCOPE_API_KEY=your-api-key-here3. 最小配置
assistant-agent-start/src/main/resources/application.yml:spring:
ai:
dashscope:
api-key: ${DASHSCOPE_API_KEY}
chat:
options:
model: qwen-max4. 启动应用
cd assistant-agent-start
mvn spring-boot:run5. 配置知识库(接入业务知识)
方式一:快速体验(使用内置 Mock 实现)
spring:
ai:
alibaba:
codeact:
extension:
search:
enabled: true
knowledge-search-enabled: true # 默认开启方式二:接入真实知识库(推荐)
package com.example.knowledge;
import com.alibaba.assistant.agent.extension.search.spi.SearchProvider;
import com.alibaba.assistant.agent.extension.search.model.*;
import org.springframework.stereotype.Component;
import java.util.*;
@Component // 添加此注解,Provider 会自动注册
public class MyKnowledgeSearchProvider implements SearchProvider {
@Override
public boolean supports(SearchSourceType type) {
return SearchSourceType.KNOWLEDGE == type;
}
@Override
public List<SearchResultItem> search(SearchRequest request) {
List<SearchResultItem> results = new ArrayList<>();
// 1. 从你的知识源查询(向量数据库、ES、API 等)
// 示例:List<Doc> docs = vectorStore.similaritySearch(request.getQuery());
// 2. 转换为 SearchResultItem
// for (Doc doc : docs) {
// SearchResultItem item = new SearchResultItem();
// item.setId(doc.getId());
// item.setSourceType(SearchSourceType.KNOWLEDGE);
// item.setTitle(doc.getTitle());
// item.setSnippet(doc.getSummary());
// item.setContent(doc.getContent());
// item.setScore(doc.getScore());
// results.add(item);
// }
return results;
}
@Override
public String getName() {
return "MyKnowledgeSearchProvider";
}
}常见知识源接入示例

🧩 核心模块介绍
评估模块(Evaluation)
┌──────────────────────────────────────────────────────────────────┐
│ 评估图 (Evaluation Graph) 示例 │
├──────────────────────────────────────────────────────────────────┤
│ │
│ 用户输入: "查询今日订单" │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Layer 1 (并行执行) │ │
│ │ ┌────────────┐ ┌────────────┐ │ │
│ │ │ 是否模糊? │ │ 输入改写 │ │ │
│ │ │ 清晰/模糊 │ │(增强) │ │ │
│ │ └─────┬──────┘ └─────┬──────┘ │ │
│ └─────────┼──────────────────────┼────────────────────────┘ │
│ │ │ │
│ └──────────┬───────────┘ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Layer 2 (基于改写内容,并行执行) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ 检索经验 │ │ 匹配工具 │ │ 搜索知识 │ │ │
│ │ │ 有/无 │ │ 有/无 │ │ 有/无 │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────┐ │
│ │ 整合不同维度评估结果 │ │
│ │ → 传递给后续模块 │ │
│ └────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────┘customPrompt),也可使用默认 Prompt 组装(支持 description、workingMechanism、fewShots 等配置)Function<CriterionExecutionContext, CriterionResult> 执行任意规则判断,适合阈值检测、格式校验、精确匹配等场景dependsOn 声明前置依赖,系统自动构建评估图按拓扑执行,无依赖项并行、有依赖项顺序执行,后续评估项可访问前置评估项的结果BOOLEAN、ENUM、SCORE、JSON、TEXT 等类型,传递给 Prompt Builder 驱动动态组装Prompt Builder 模块
┌─────────────────────────────────────────────────────────────────────────┐
│ Prompt Builder - 条件化动态生成 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 评估结果输入: │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ 模糊: 是 │ 经验: 有 │ 工具: 有 │ 知识: 无 │ │
│ └────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │ 自定义 PromptBuilder 条件匹配 │ │
│ │ │ │
│ │ 模糊=是 ──────▶ 注入 [澄清引导 Prompt] │ │
│ │ 模糊=否 ──────▶ 注入 [直接执行 Prompt] │ │
│ │ │ │
│ │ 经验=有 ──────▶ 注入 [历史经验参考] │ │
│ │ 工具=有 ──────▶ 注入 [工具使用说明] │ │
│ │ 知识=有 ──────▶ 注入 [相关知识片段] │ │
│ │ │ │
│ │ 组合示例1: 模糊+无工具+无知识 ──▶ [追问用户 Prompt] │ │
│ │ 组合示例2: 清晰+有工具+有经验 ──▶ [快速执行 Prompt] │ │
│ └────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │ 最终动态 Prompt: │ │
│ │ [系统提示] + [澄清引导] + [历史经验] + [工具说明] + [用户问题] │ │
│ └────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────┐ │
│ │ 模型 │ │
│ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
学习模块(Learning)
┌─────────────────────────────────────────────────────────────────────────┐
│ 学习模块工作流程 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌────────────────────────────────────────────────────────────────────┐ │
│ │ Agent 执行过程 │ │
│ │ │ │
│ │ 输入 ──▶ 推理 ──▶ 代码生成 ──▶ 执行 ──▶ 输出 │ │
│ │ │ │ │ │ │ │ │
│ │ └────────┴──────────┴─────────┴────────┘ │ │
│ │ │ │ │
│ └────────────────────────┼───────────────────────────────────────────┘ │
│ ▼ │
│ ┌────────────────────────┐ │
│ │ 学习上下文捕获 │ │
│ │ - 用户输入 │ │
│ │ - 中间推理步骤 │ │
│ │ - 生成的代码 │ │
│ │ - 执行结果 │ │
│ └───────────┬────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────┐ │
│ │ 学习提取器分析 │ │
│ │ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ │
│ │ │ 经验提取器 │ │ 模式提取器 │ │ 错误提取器 │ │ │
│ │ │ 成功模式 │ │ 通用模式 │ │ 失败教训 │ │ │
│ │ └─────┬──────┘ └─────┬──────┘ └─────┬──────┘ │ │
│ └────────┼───────────────┼───────────────┼─────────────────────┘ │
│ │ │ │ │
│ └───────────────┼───────────────┘ │
│ ▼ │
│ ┌────────────────┐ │
│ │ 持久化存储 │ ──▶ 供后续任务参考使用 │
│ └────────────────┘ │
│ │
└────────────────────────────────────────────────────────────────────────┘经验模块(Experience)
┌─────────────────────────────────────────────────────────────────────────┐
│ 经验模块工作示意 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 【场景1: 经验积累】 │
│ │
│ 用户: "查询订单状态" ──▶ Agent 成功执行 ──▶ ┌────────────────┐ │
│ │ 保存经验: │ │
│ │ - React决策经验 │ │
│ │ - Code经验 │ │
│ │ - 常识经验 │ │
│ └────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────┐ │
│ │ 经验库 │ │
│ └────────────────┘ │
│ │
│ 【场景2: 经验复用】 | │
│ │ │
│ 用户: "查询我的订单状态" ◀──── 匹配相似经验 ◀────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Agent 参考历史经验,更快决策+生成正确代码 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ 【场景3: 快速意图响应】 │
│ │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ 经验库 │ │
│ │ ┌─────────────────────┐ ┌────────────────────────────┐ │ │
│ │ │ 经验A (普通) │ │ 经验B (✓ 已配置快速意图) │ │ │
│ │ │ 无快速意图配置 │ │ 条件: 前缀匹配"查看*销量" │ │ │
│ │ │ → 注入prompt供llm参考│ │ 动作: 调用销量查询API │ │ │
│ │ └─────────────────────┘ └───────────┬────────────────┘ │ │
│ └─────────────────────────────────────────────┼───────────────────┘ │
│ │ 条件命中 │
│ ▼ │
│ 用户: "查看今日销量" ──▶ 匹配经验B快速意图 ──▶ 跳过LLM,直接执行 │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────┘fastIntentConfig 才能启用触发器模块(Trigger)
┌─────────────────────────────────────────────────────────────────────────┐
│ 触发器模块能力示意 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 【定时触发】 │
│ │
│ 用户: "每天早上9点给我发送销售日报" │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ Agent 创建 │ │ 调度器 │ │ 自动执行 │ │
│ │ Cron 触发器 │────▶│ 0 9 * * * │────▶│ 生成日报 │ │
│ │ (自我调度) │ │ │ │ 发送通知 │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
│ 【延迟触发】 │
│ │
│ 用户: "30分钟后提醒我开会" │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ Agent 创建 │ │ 30分钟后 │ │ 发送提醒 │ │
│ │ 一次性触发器 │────▶│ 触发 │────▶│ "该开会了" │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
│ 【回调触发】 │
│ │
│ 用户: "满足xx条件时帮我xx" │
│ │
│ 外部系统: 发送事件到 Webhook │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ 接收回调 │ │ 触发 Agent │ │ 处理事件 │ │
│ │ Webhook 事件 │────▶│ 执行任务 │────▶│ 返回响应 │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘TIME_CRON 触发器:支持 Cron 表达式定时触发任务TIME_ONCE 触发器:支持一次性延迟触发CALLBACK 触发器:支持回调事件触发Agent 可通过工具自主创建触发器,实现“自我调度”回复渠道模块(Reply Channel)
┌─────────────────────────────────────────────────────────────────────────┐
│ 回复渠道模块能力示意 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Agent 需要向用户回复消息 │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ 回复渠道路由 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ├──────────────┬──────────────┬──────────────┐ │
│ ▼ ▼ ▼ ▼ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ │
│ │ DEFAULT │ │ IDE_CARD │ │ IM_NOTIFY │ │ WEBHOOK │ │
│ │ 文本回复 │ │ 卡片展示 │ │ 消息推送 │ │ JSON推送 │ │
│ └─────┬──────┘ └─────┬──────┘ └─────┬──────┘ └─────┬──────┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 控制台 │ │ IDE │ │ IM │ │ 第三方 │ │
│ │ 终端回复 │ │ 富文本卡片 │ │ (可扩展) │ │ 系统 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ 【使用示例】 │
│ │
│ 用户: "分析完成后发送结果" │
│ │ │
│ ▼ │
│ Agent: send_message(text="分析结果...") │
│ │ │
│ ▼ │
│ 用户收到消息: "📊 分析结果: ..." │
│ │
└─────────────────────────────────────────────────────────────────────────┘IDE_TEXT(演示用)ReplyChannelDefinition SPI): 如 IDE_CARD、IM_NOTIFICATION(钉钉/飞书/企微)、WEBHOOK_JSON 等,需用户自行实现工具扩展模块(Dynamic Tools)
┌─────────────────────────────────────────────────────────────────────────┐
│ 工具扩展架构 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Agent 需要执行操作 │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────┐ │
│ │ CodeactTool 工具体系 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ├─────────────┬─────────────┬─────────────┬──────────────┐ │
│ ▼ ▼ ▼ ▼ ▼ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌───────┐ │
│ │ MCP │ │ HTTP │ │ Search │ │ Trigger │ │ 自定义 │ │
│ │ Tools │ │ API │ │ Tools │ │ Tools │ │ Tools │ │
│ │ │ │ Tools │ │ │ │ │ │ │ │
│ └─────┬──────┘ └─────┬──────┘ └─────┬──────┘ └─────┬──────┘ └───┬───┘ │
│ │ │ │ │ │ │
│ ▼ ▼ ▼ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────┐ │
│ │ 任意 MCP │ │ REST API │ │ 知识检索 │ │ 定时任务 │ │ ... │ │
│ │ Server │ │ OpenAPI │ │ 项目搜索 │ │ 事件回调 │ │ │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘CodeactTool 接口,轻松扩展新工具知识检索模块(Knowledge Search)
┌─────────────────────────────────────────────────────────────────────────┐
│ 多数据源检索架构 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ 用户问题: "如何配置数据库连接池?" │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ 统一检索接口 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ├────────────────┬────────────────┬────────────────┐ │
│ ▼ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌─────────┐ │
│ │ 知识库 │ │ 项目 │ │ Web │ │ 自定义 │ │
│ │ Provider │ │ Provider │ │ Provider │ │Provider │ │
│ │ (主要) │ │ (可选) │ │ (可选) │ │ (SPI) │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ └───┬─────┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌────────┐ │
│ │ FAQ / 文档 │ │ 源代码 │ │ 网络文章 │ │ ... │ │
│ │ 历史问答 │ │ 配置文件 │ │ 技术论坛 │ │ │ │
│ │ 团队笔记 │ │ 日志 │ │ │ │ │ │
│ └──────────────┘ └─────────────┘ └───────────────┘ └────────┘ │
│ │ │ │ │ │
│ └─────────────────┴─────────────────┴──────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────┐ │
│ │ 聚合排序 │ │
│ │ → 注入 Prompt │ │
│ └────────────────────────┘ │
│ │
└────────────────────────────────────────────────────────────────────────┘SearchProvider SPI,支持可插拔数据源SearchProvider 接口,接入任意数据源(数据库、向量库、API)spring:
ai:
alibaba:
codeact:
extension:
search:
enabled: true
knowledge-search-enabled: true # 知识库(默认 Mock 实现)
project-search-enabled: false # 项目代码(默认 Mock 实现)
web-search-enabled: false # Web 搜索(默认 Mock 实现)
default-top-k: 5
search-timeout-ms: 5000SearchProvider SPI 接入实际数据源。
需求:
目前看起来京造 M10 契合需求,有没有长期用户分享下体验如何,或者有没有更好的门锁推荐?
在运营拼团软件的过程中,我们常常面临着如何根据不同地区的用户需求,提供个性化和定制化服务的问题。根据技术和经验的累计,IP地址定位成为了一种高效的解决方案。今天,我想分享我如何利用IP归属地定位功能,提高平台的本地化和精准营销。 IP地址定位技术可以帮助平台通过用户的IP地址快速识别其地理位置。这样,平台就能根据用户所在的城市或地区,动态展示最相关的内容和服务。比如,我的平台可以根据用户的IP地址自动推送本地化的拼团活动、当地商家信息以及地区特定的优惠。 这大大减轻了我在广告投放上的精力和经费,让我能更专注地投入到选品和平台的维护上,为使用我平台的用户提供更多的福利和促销。 市面上有很多专业的非专业的IP归属地查询工具(为了我们的数据安全和操作便捷当然是要选择专业的平台),经过我的对比和筛选,各大主流IP服务平台的功能都大差不差,最后的决定因素当然就是价格,最终通过我“考验”的就是IP数据云,精准度相同的情况下性价比真的一绝!具体不再赘述,有需要的小伙伴可以去试用一下。 有了工具,接下来就是怎么通过使用查询工具,实现内容个性化和精准推送。 步骤一:通过后台/其他方式获取用户登录IP(要符合隐私规则,向用户提前告知哦) 步骤二:然后向API发送IP地址查询的请求 示例代码(Node.js后端): 步骤三:数据返回 步骤四:根据IP定位调整平台内容 有了这些数据,我们就可以为用户提供更人性化的服务: 根据城市、地区或国家信息,展示与用户位置相关的内容。例如: 如果有反欺诈需求,IP数据云的IP风险画像和IP代理识别API的风险评分和代理识别功能,可以帮你检测是否为可疑IP,避免诈骗或恶意行为。 以上就是我在使用了IP地址定位后的成果,它帮助我为我的用户提供更加精准和本地化的服务,提升了用户转化和忠诚度。当然工具的选择很重要,好的工具可以让我们事半功倍!一、IP地址定位的作用
举例:
二、如何使用IP地址定位进行差异化服务
const axios = require('axios');
// 用户的IP地址(假设你已经通过其他方式获得)
const userIp = '8.8.8.8'; // 替换为实际IP
const apiKey = 'your_api_key'; // 替换为你的API密钥
axios.get(`https://api.ipdatacloud.com/v2/query?ip=需要查询的ip&key=您申请的key`)
.then(response => {
console.log(response.data); // 输出IP的详细信息
})
.catch(error => {
console.error(error);
});
三、如何提升营销效果
1.显示本地化内容
2.优化广告投放
例如:对用户推送附近商家的拼团活动,或推送当地特有的商品。
3.防止欺诈行为
例如:若检测到是代理IP或VPN,平台可通过验证措施二次确认用户身份,降低欺诈风险。
从Kafka到AutoMQ:爱奇艺实时流数据架构演进 本文详细介绍了爱奇艺在处理大规模实时流数据时,从传统Kafka架构向AutoMQ演进的技术历程。为了解决私有云环境下集群扩缩容难、资源利用率低以及运维成本高等挑战,爱奇艺开发了Stream平台与Stream-SDK,实现了业务与底层存储的彻底解耦。随后,公司引入公有云服务并最终切换至基于存算分离架构的AutoMQ,利用其单副本存储和秒级弹性的特性,显著提升了系统的灵活性。这一系列的架构升级不仅优化了数据治理体系,还成功将运营成本降低了70%以上。目前,爱奇艺正持续扩大AutoMQ的应用规模,以进一步实现降本增效的长期目标。 Kafka因其高吞吐、低延时、可扩展的特性,在出现之后迅速成为流数据存储的标准组件,广泛应用于实时大数据场景。爱奇艺的流数据服务也主要基于Kafka构建,随着实时大数据应用越来越广泛,Kafka集群数量、规模越来越大,面临扩缩容繁琐、成本高、难治理等诸多问题与挑战。为解决这些问题,我们进行了Kafka服务化、上云、迁移AutoMQ等一系列探索。 本文将介绍爱奇艺Kafka从私有云迈向公有云、从Kafka到AutoMQ的探索与实践。 在爱奇艺,流数据的存储组件使用的是Kafka,计算组件主要使用的是Flink,流数据相关的典型数据通路如图1所示,主要包括如下环节: Kafka作为流数据的存储承担数据集成到大数据体系的数据总线、实时数仓存储、实时任务之间解耦等角色。 爱奇艺的流数据服务最初以Kafka集群为核心构建,提供集群生命周期管理、Topic管理、消费监控等基础能力。随着业务规模扩大、集群数量和数据量持续增长,逐渐暴露出以下问题: 为了解决上述问题,我们将流数据存储服务升级到了如图2所示的架构,由Stream平台、Stream-SDK、存储组件三部分构成。 先介绍下Stream平台,Stream-SDK和存储组件后面介绍。Stream平台由“集群管理”和“数据管理”两大模块组成。集群管理负责集群生命周期与底层资源的统一管理,侧重运维侧能力。数据管理是平台的核心,以“数据为中心”构建,面向数据开发人员提供统一的数据视图和管理能力,核心功能如下: Stream-SDK是平台提供的统一数据访问客户端,封装了底层原生客户端,兼容Kafka协议和RocketMQ。业务仅需配置“项目+队列”,即可完成数据读写,无需关注具体集群地址或认证方式,从而实现业务代码与底层集群的彻底解耦。 Stream-SDK的数据读写流程如图3所示,主要包括两个阶段: 基于业务提供的项目、队列和Token(用于鉴权),SDK调用Stream平台的配置API,获取队列对应的集群信息、Topic、认证参数等配置,并使用原生客户端执行读写。同时,SDK会通过该API上报客户端IP、消费组、应用名称等信息,平台据此实时构建读写血缘。 在运行期间,SDK每分钟与Stream平台进行心跳交互,实时感知队列关联的集群是否发生变更。一旦检测到变化,SDK会自动将读写流量切换至新集群,实现无感迁移。 借助Stream-SDK,集群的迁移成本大幅降低,也为后续从私有云迈向公有云、从Kafka切换到AutoMQ的架构演变做好了准备。 早期爱奇艺Kafka集群部署在私有云IDC,受制于IDC资源供给模式及Kafka架构固有特性,资源利用率难以保持在合理区间。自2023年起,平台逐步引入多家公有云Kafka,形成混合云架构,在资源弹性、运维效率和成本优化方面取得了显著成效。下文将介绍下上云过程。 
流数据存储服务:从管集群到管数据

Stream-SDK:统一的流数据读写客户端

Kafka混合多云建设
私有云Kafka
图4 Kafka 架构](https://image.automq.com/20260126bot/atub35.png)从私有云Kafka到公有云Kafka
从Kafka到AutoMQ

总结及规划
RT ,因为一些需求,一直有一台 Windows 虚拟机用来处理特定于 Win 环境的事情。
之前一直都是用 Windows 10 LTSC ,配合 2C4G ~ 4C8G 的资源。
近期尝试用了一下 Win11 ,发现日常用起来 Win11 Pro 居然还挺丝滑?没有我想象中的这么卡顿,把自动更新关了,目前看似乎用起来也不错。
我之前一直以为 Win10 LTSC 这样的精简版 Win10 怎么都比 Win11 要流畅,现在看来颠覆了一些我的认知,准备用一段时间看看。