DZone.com Feed 中文 关注 DZone是一个全面的在线平台,专注于技术和编程的多个方面。该网站提供了关于不同编程语言、技术、框架和工具的大量信息。该网站的一些主要特点和资源包括:关于技术领域最新趋势和更新的新闻和文章、学习不同编程技能的多种资源和教程、一个社区让用户可以与他人互动、分享经验和知识。此外,DZone还提供了技术专业人士的招聘信息,为对技术和编程感兴趣的人们提供了有用的资源。 DZone.com Feed dzone.com RSS feeds.dzone.com DZone.com Feed 中文 RSS thenote.app
遥测税:在日均 150 亿 + 事件规模下构建零分配事件可观测性架构 在我的职业生涯中,可观测性与监控系统在系统架构中始终扮演着至关重要的角色,无论系统每日处理的是百万级还是十亿级事件,它们都是保障系统稳定性、可用性和可扩展性的关键。我曾负责通信平台、企业合规管道以及高吞吐交易系统等领域的核心基础设施架构工作,反复见证到背景 instrumentation 在重负载生产环境下如何悄然成为性能瓶颈。遥测与可观测性本身也伴随着独特的挑战。在不降低实时业务应用性能、不增加请求延迟、不推高云成本的前提下进行遥测 instrumentation,往往在初期被搁置,但随着系统规模扩大,其重要性日益凸显。此外,在生产环境中解决这一问题,远比处理领域事件本身更为困难。 The Telemetry Tax: Architecting Zero-Allocation Event Observability at 15B+ Daily Event Scale dzone.com +1
静默容器死亡:永不超时的 TCP 拨号 一个 Pod 进入 CrashLoopBackOff 状态。你拉取日志,期望看到堆栈跟踪、panic 或错误字符串——任何能指引你方向的内容。然而,你只看到一行:纯文本正在加载配置... The Silent Container Death: A TCP Dial That Never Times Out dzone.com +1
“艾顿·塞纳的六度人脉:通过连接 75 年 F1 历史学习 Neo4j" 我最喜欢的 F1 赛车魅力之一,便是其背后的数据。F1 赛车是任何赛车系列中最为复杂和先进的车辆,它们收集海量的遥测数据。赛道在赛事期间也会采集数据,而赛车工程师则周复一周地进行分析。他们研究的内容涵盖天气、轮胎温度直至出弯速度等方方面面。数据以重大方式推动着这项运动的发展。在学习图数据库和 Neo4j 的过程中,我意识到它是解答我好奇之问的完美工具。我们大家都听说过“凯文·贝肯六度分隔”(Six Degrees of Kevin Bacon),即几乎任何一位演员都能通过六步关联追溯到电影《劲歌飞扬》(Footloose)中的那位明星。我不禁思考:这一概念能否应用于 F1 车手?相比之下,F1 车手的数据集规模远小于知名演员。 Six Degrees of Ayrton Senna: Learn Neo4j by Connecting 75 Years of Formula 1 dzone.com +1
AWS 7R 迁移策略:工程团队的决策框架” 大多数 AWS 迁移项目并非因技术复杂性而失败,而是由于团队将迁移视为单一活动,而非针对不同工作负载应用一系列独立策略。AWS 定义了七种迁移策略——即"7R"——用于确定每个应用程序如何迁移至云端。针对何种工作负载采用何种策略的决策,对项目成本、时间表和最终成果的影响,远大于此后所做出的任何架构选择。然而在实践中,大多数团队默认采用“全部直接迁移”(lift-and-shift)的方式,而未评估该方式是否适用。 AWS 7R Migration Strategies: A Decision Framework for Engineering Teams dzone.com +1
为何 Databricks 与 Snowflake 采用 Kafka 协议:摄入与架构 如今,兼容 Kafka 的摄入方式已无处不在,甚至出现在与运行 Kafka 无关的分析平台中。Databricks 在其 Zerobus 摄入服务中添加了兼容 Kafka 的 API。Snowflake 在 Summit 大会上更进一步,推出了 Datastream,这是一项原生的、完全兼容 Kafka 的流式服务。在这两种情况下,现有的 Kafka 生产者无需修改代码,仅需更改配置,即可直接向平台进行流式传输。这对生态系统而言是好消息。这也印证了我多年来一直强调的一点:Kafka API 已成为事件流转的既定事实标准,正如 Amazon S3 API 已成为对象存储的标准一样。 Why Databricks and Snowflake Speak the Kafka Protocol: Ingestion vs Architecture dzone.com +1
仅靠 Git Blame 已不足够:构建 AI 生成代码的可验证来源 AI 生成的软件需要一种超越瞬时交互的持久性来源记录(provenance)。现有的代码审查无法揭示生成模型、影响生成的提示词或执行上下文。来源记录通过将代码生成视为可追溯的供应链事件来弥合这一差距。这一概念与既有的标准相一致,例如用于建模来源记录的 W3C PROV,以及用于软件制品生产验证的 SLSA。一个关键原则是将作者身份与来源记录分离,因为来源记录描述的是起源,而非所有权。AI 生成内容的法律所有权由版权法和合同协议决定,而不仅仅取决于生成过程。美国版权办公室强调,版权保护需要显著的人类作者身份。来源记录作为归属和问责的证据,通过提供可验证的历史记录来支持审计和审查。最终,来源记录确保了 AI 软件开发生命周期中的透明度。 Git Blame Isn’t Enough: Building Verifiable Provenance for AI-Generated Code dzone.com +1
Meta 欲以人工智能运营您的企业——微软与 Salesforce 迎来新对手 Meta 多年来一直协助企业在 Facebook 和 Instagram 上进行广告投放,并通过 WhatsApp 与客户沟通。如今,它希望其人工智能更深入地融入这些企业。周一,Meta 推出了 Meta 企业平台(Meta Enterprise Platform),这是一个专注于将其 AI 模型、智能体、编码工具和基础设施转化为企业可自行部署的产品的新业务部门。 Meta Wants to Run Your Business With AI — Microsoft and Salesforce Have a New Rival dzone.com +1
超越 HTTP 交接:使用 Temporal Nexus 构建持久的代理间服务 Agent 系统正日益分解为专用服务:规划代理委托研究任务,研究代理调用检索与综合操作,合规代理在允许执行动作前验证结果。A2A 等开放标准规范了独立代理之间的通信,但传输互操作性仅是生产问题的一部分。请求可能在被接受后丢失,重试可能导致昂贵的重复工作,调用方可能在远程任务仍在进行时消失,多代理链也可能变得难以重构。Temporal Nexus 针对的是另一层问题。它通过持久化服务契约连接 Temporal 应用,使代理能力表现得不再像脆弱的 HTTP 交接,而更像可靠的分布式操作。 Beyond HTTP Handoffs: Build Durable Agent-to-Agent Services With Temporal Nexus dzone.com +1
利用大语言模型构建自愈 SQL 管道:验证、护栏与安全恢复 自愈合 SQL 流水线不应等同于自主生成 SQL 语句后由特权账户执行。在生产环境中,更安全的解释更为严格:语言模型提出修复方案,而确定性控制机制则判定该修复在语法上是否有效、语义上是否合理、操作上是否安全,以及是否具备执行资格。这一区分至关重要,因为同一机制在修正重命名列的同时,也可能意外生成 DELETE 语句、扩大连接范围,或扫描超出预期的数据集。结构化输出功能可将 LLM 的响应约束为预定义的模式,但模式合规并不等同于数据库正确性或授权合规。OpenAI 的结构化输出旨在使生成结果符合提供的 JSON Schema,但它并不验证 SQL 的语义或执行安全性。 Engineering Self-Healing SQL Pipelines With LLMs: Validation, Guardrails, and Safe Recovery dzone.com +1
OpenAI"o"泄露:在开发者日之前,我们已知的关于 ChatGPT 常驻助手的一切 关于未正式宣布的 OpenAI 助手"o"的提及已在 ChatGPT 中出现,表明该公司正在测试一种始终在线的助手,其可能具备某种邮件功能。OpenAI 尚未公布该产品,也未描述其功能集或确认发布日期。随着 DevDay 将于 9 月 29 日在旧金山举行,此次泄露引发了疑问:"o"是否会成为用户在离开 ChatGPT 后仍能持续处理任务的新面向消费者的功能层。 OpenAI ‘o’ Leak: What We Know About ChatGPT’s Always-On Assistant Before DevDay dzone.com +1
预测、重复、改进:确定性仿真测试详解 凌晨 2 点。手机震动,待命告警闪烁,你突然面对一个毫无来由的生产环境故障。追踪日志后得到一个线索:在预发环境中重新执行相同场景时,一切运行正常。没有任何质量门禁或 QA 流水线捕获该问题,混沌实验也无法复现,此刻你正追逐一个仅在系统承受真实世界压力时才显现的“幽灵”。分布式系统以这类“幽灵故障”著称——这些罕见的依赖时序的缺陷会不可预测地浮现,又迅速消失。它们正是令工程师彻夜难眠的可怕事件,因其无法复现而令人头疼。 Predict, Repeat, Improve: Deterministic Simulation Testing Explained dzone.com +1
检测与响应已履行职责,现在必须有人真正修复问题。 主机已被隔离。恶意进程已被终止。在攻击者再次利用之前,受损凭证已被撤销。检测与响应工作完全按预期自动、正确且迅速地执行。然而,后续情况通常不那么整洁。攻击者或许已离去,但他们利用的入口点仍可能留在那里,等待下一次尝试。Veracode 的《软件安全状态报告》提供了对该问题规模的概览。关键安全债务同比增长 20%,高风险漏洞(即同时被评定为严重且高度可利用的漏洞)增长了 36%。检测工作已取得进展,但快速发现问题与实施修复显然并非同一回事。 Detection and Response Did Its Job. Now Someone Has to Actually Fix It. dzone.com +1
深入探索 Microsoft Foundry 文档智能 SDK:从 PDF 到结构化数据 大多数“基于 PDF 的 RAG"流程中,都有一个鲜少被提及的步骤:必须将扫描的发票、多栏合同或拍摄的收据转换为模型能够真正推理的文本。在微软的栈中,这一步通常由文档智能 SDK(前身为表单识别器)完成。值得单独理解的是,不应将其视为在有趣部分开始之前发生的黑盒工具,而应基于其自身特性进行把握。本文是对该 SDK 的实战深度解析。并非对每个 Foundry Tools SDK 的概览——视觉、语音和内容安全各自都值得单独探讨,而是通过文档智能进行一次真正的构建:提取布局为干净的 Markdown 格式,从已知文档类型中提取结构化字段,在路由前对文档进行分类,并在您自己的标注数据上训练自定义提取模型。 A Deep Dive into the Microsoft Foundry Document Intelligence SDK: From PDF to Structured Data dzone.com +1
如何使用 Playwright TypeScript 测试 POST API 请求 测试 POST API 请求是现代 QA 和自动化工程师在与后端服务及微服务协作时的重要技能。在本文中,我们将探讨如何使用 Playwright 和 TypeScript 测试 POST API 请求,重点介绍使用不同方法发送请求体。到本文结束时,您将学会使用以下方法发送带有请求体的 POST API 请求: How to Test POST API Requests With Playwright TypeScript dzone.com +1
误将代码生成视为工程进展:AI 生产力迷思第一部分 几个月前,我们的一支团队在季度回顾中达成了一项里程碑:AI 采用率显著提升。生产力仪表盘显示,开发人员平均每轮迭代生成的代码量增加了 40%。技术负责人将此视为重大胜利。三周后,我参与了一次生产问题的电话会议。挑战在于,错误以三种不同的格式出现,具体取决于访问的是哪个端点。告警系统对一类它此前一直能够捕获的故障视而不见。 Mistaking Code Production for Engineering Progress: AI Productivity Myths Part 1 dzone.com +1
《Jakarta Batch 实战:面向企业工作负载的可靠分块处理》 批处理依然至关重要,因为许多业务操作并不适合交互式请求。诸如重新计算价格、对账交易、迁移记录、生成报告、处理发票、重新分类客户或在数百万条记录上应用规则等任务,往往需要耗费 considerable 时间。若将这些任务作为标准请求处理,会导致系统脆弱、用户等待时间增加、频繁超时、重试困难以及可能出现数据不一致等问题。批处理模型能够以可预测的方式处理大规模工作负载,并支持增量执行,同时提供对进度和恢复的控制。批处理并非将大规模操作作为单个循环处理,而是采用作业(jobs)、步骤(steps)、数据块(chunks)、检查点(checkpoints)、过滤机制以及可重启性等机制。这种方法将长运行数据任务与用户体验分离开来,同时提供结构化的执行模型。在本文中,我们将聚焦于 Jakarta Batch,并探讨其在现代企业应用中的持续相关性。 Jakarta Batch in Practice: Reliable Chunk-Oriented Processing for Enterprise Workloads dzone.com +1
《永不停止警告特工的警示》 我在寻找一种能够限制 DeepAgents 单次会话支出上限的机制,即那种能在代理陷入循环并耗尽预算之前强制停止的硬性支出上限。然而,实际存在的只是一个警告,而“警告”与“停止”之间的差距,反而成了更值得讲述的故事。目前已有的功能:一个没有约束力的数字deepagents-code 包含一个 CostTrackingMiddleware,负责追踪线程的累计支出。这是一个真实的、已检查点的美元金额,基于实际请求的 token 用量进行计价,而非估算值。在此基础上构建的另一项功能(此前已合并)会在累计总额超过配置的阈值(默认为 50 美元)时,触发一次一次性警告: The Warning That Never Stops the Agent dzone.com +1
Jakarta Faces Flow Scope:在无会话状态下管理多步骤用户体验 多步流程在用户体验(UX)中十分常见,包括用户引导、结账、账户设置、审批流程、配置向导以及管理任务等。这些流程要求用户在多个屏幕之间流转,同时保持工作状态的连续性。挑战在于如何在交互期间保持该状态活跃,但又不能超出必要范围:请求作用域(request scope)过短,而会话作用域(session scope)往往又长于业务流程的实际需求。Jakarta Faces 通过 @FlowScoped 处理这一问题,它依据流程的生命周期来管理状态,而非单个页面或整个会话。本文以客户细分应用为例,演示流程如何引导用户完成配置、预览和确认步骤,并在各步骤间保持状态一致。这种方法为向导式 UX 提供了更清晰的模型:作用域始于用户进入流程时,在导航过程中持续存在,并在用户退出时结束。 Jakarta Faces Flow Scope: Managing Multi-Step UX Without Session State dzone.com +1
AI 编程正从信任模型转向约束其能力范围” 近年来,关于 AI 辅助编程的讨论大多集中在模型上:哪个模型生成的代码质量最高?哪个模型能理解最大的代码库?哪个模型犯错的概率最低?哪个模型的上下文窗口最大?这些问题依然重要,但更有趣的事情正在发生。围绕编码代理的基础设施开始假设,模型不应是最终值得信任的组件。相反,人们正围绕模型构建日益复杂的系统,以控制其可访问的内容、可执行的操作、这些操作如何获得批准,以及其结果如何被验证。 AI Coding Is Moving From Trusting the Model to Constraining What It Can Do dzone.com +1
从巨型提示到按需技能:通过渐进式披露构建可扩展的 AI 代理 大型智能体提示通常始于一种实用捷径:将策略、领域规则、工具描述、示例、恢复程序及集成说明置于单一系统消息中,以确保所有能力随时可用。然而,一旦智能体积累了数十种工具和专用工作流,这种方案便无法扩展。工具定义和指令在每一轮对话中消耗上下文,无关材料会与任务相关材料竞争,而每一次集成都会扩大共享提示的范围,使其更难测试和版本管理。当前平台指南正日益趋向于另一种模式:首先暴露紧凑的能力元数据,仅在确认相关性后加载详细指令,并在受控的工具或沙箱边界内执行专用逻辑。Anthropic 将此称为智能体技能的渐进式披露,而 OpenAI 则同时支持技能与延迟工具发现。 From Giant Prompts to On-Demand Skills: Build an Extensible AI Agent With Progressive Disclosure dzone.com +1
超越截图:构建可复现的生产环境诊断,以解决难以复现的缺陷 生产环境中的 Bug 往往伴随的证据不足。截图仅捕捉最终视觉状态,崩溃报告仅标识失败的堆栈,支持工单仅描述看似发生的情况,三者均无法可靠还原导致失败的事件序列。现代应用是异步系统,由导航、网络响应、功能开关、后台任务、本地持久化以及不断变化的 UI 状态所驱动。因此,一份有用的生产 Bug 报告不能仅包含最终帧,而需要一段有界且符合隐私安全的执行历史,以重构通往失败的路径。可复现 Bug 报告的基础是语义事件流。连续视频录制成本高、难以检索,且很可能捕获与诊断无关的信息。结构化事件体量更小,并能直接描述有意义的状态转换。导航变更、按钮操作、状态突变、网络结果、功能开关评估、生命周期转换以及持久化失败等,均可采用统一的事件模型。 Beyond Screenshots: Building Replayable Production Diagnostics for Hard-to-Reproduce Bugs dzone.com +1
“请求超时但支付成功:构建可重试的移动 API" 移动网络以不可靠著称。一个常见场景是:用户在应用中点击“立即支付”,支付请求已到达服务器并被处理,但网络响应未能传回手机。客户端误认为请求失败而重试,导致重复扣款。这正是幂等性所解决的问题。幂等性意味着重复执行同一操作不会产生额外效果,第二次尝试应识别其为重复请求并执行新操作。在实践中,移动工程师必须将支付或订单 API 设计为幂等的,通过在请求中附加唯一操作标识符并在后端进行去重来实现。采用此方法,即使网络丢包或用户双击按钮,用户也仅会被扣款一次。 The Request Timed Out, But the Payment Succeeded: Building Retry-Safe Mobile APIs dzone.com +1
代理在运行中改变了计划:调和人工智能决策与已完成的时间活动 AI 代理很少能完全按照最初提出的长期计划执行。工具结果会暴露缺失的事实,外部系统会发生变化,策略会通过人工输入而更新,模型也可能发现先前的假设是错误的。ReAct 风格的代理正是围绕推理、行动、观察与计划更新的这种交错过程而设计的,而非基于一个不可变的计划。工程上的难点始于这些行动会产生持久的副作用。在 Temporal 中,已完成的 Activity 并非一个可以从修订后的计划中编辑掉的意图;其完成状态和结果已成为工作流事件历史的一部分。因此,重新规划必须协调新的决策与已经发生的过去。 The Agent Changed Its Plan Mid-Run: Reconciling AI Decisions With Completed Temporal Activities dzone.com +1
使用 Neo4j 构建产品推荐引擎——无需机器学习库 当许多开发者想到推荐引擎时,他们首先想到的是机器学习:协同过滤模型、矩阵分解、嵌入向量以及训练管道。令许多人惊讶的是,仅凭图数据库和若干 Cypher 查询,即可构建一个真正实用的推荐系统。无需 scikit-learn,无需 TensorFlow,也无需模型训练。只需让数据的自然结构发挥作用。在本文中,我们将基于 Neo4j Aura 构建一个产品推荐引擎,使用两个 Jupyter Notebook 实现。第一个 Notebook 生成逼真的合成数据集并将其加载到 Aura 中;第二个 Notebook 直接在 Cypher 中执行四个推荐查询,并使用 Plotly 可视化结果。所有操作均在本地 Python 虚拟环境中运行,针对免费的云端 Neo4j 实例。 Building a Product Recommendation Engine With Neo4j — No ML Library Required dzone.com +1
为何应急响应需要记忆,而不仅仅是智能 每一次生产事故都始于一个简单的提问:‘这之前发生过吗?’我早已数不清加入过多少次事故复盘会议,在最初的几分钟内,这个问题就会被提出。在有人提议重启服务或回滚部署之前,总有人开始着手排查:他们查阅过往故障的 Slack 聊天记录,浏览旧版事故复盘报告,对比类似事故的监控面板,或深入运行手册,以确认其他团队是否已经解决了同样的问题。 Why Incident Response Needs Memory, Not Just Intelligence dzone.com +1
停止为模型支付费用,去执行你早已做出的决策 如果您的团队分发 AI 开发技能(例如作为 Claude Code 或 Cursor 插件,或共享规则文件),您就拥有了一个技能目录。该目录涵盖以下内容:如何构建服务 提交前必须通过哪些检查 应使用哪个内部库,而非自行实现得益于渐进式披露,技能加载成本很低。只有名称和一行描述会出现在上下文中,直到描述与当前工作匹配。因此,当 token 消耗上升时,直观的判断是上下文膨胀,而明显的调节杠杆是优化描述,使其触发频率更低。 Stop Paying a Model to Make Decisions You Already Made dzone.com +1
超越批次:构建面向实时决策的企业系统 批处理问题批处理本身并非固有劣势。当业务需要即时决策,而系统架构却设计为延迟提供该信息时,它便成为问题。设想一个企业系统正在处理数百万客户交互。交易在一天内分散落地到多个系统中。每隔数小时,一个定时作业会提取数据、进行转换、更新另一个系统,并最终使其在下游可用。这种方式运行良好——直到业务提出:“为什么我们不能在事件发生的当下就做出反应?” Beyond Batch: Engineering Enterprise Systems for Real-Time Decisioning dzone.com +1
提示缓存无法在第一次调用时节省成本 我寻找一种清晰的方式来展示提示缓存实际上为智能体节省了多少,而首先发现的一个事实是:如果你只关注‘高达 90% 的节省’这一标题,很容易忽略它。缓存首次对话的第一轮所花费的成本,高于不缓存该轮的成本。此时尚无可读取的缓存,因此你需要为内容支付输入费用,并额外承担 25% 的写入缓存溢价,却一无所获。节省效果从第二轮开始显现,前提是已有内容可供读取。该功能在 deepagents 中的位置Deep Agents 在其默认中间件栈中集成了来自 langchain-anthropic 的 AnthropicPromptCachingMiddleware。它并非通过猜测来决定缓存内容,而是在每次模型调用中精确标记两项内容: Prompt Caching Doesn't Save Money on Turn One dzone.com +1
软件质量习惯与人工智能 软件质量关乎习惯。我们发布的软件质量取决于我们习惯的质量。没有人会故意发布充满缺陷的版本,因为他们并不想要低质量;他们之所以发布,很可能是因为那些本可预防缺陷的小小日常行为——也就是那些小习惯——悄无声息地不再发生了。一次跳过的测试,一次未经阅读就批准的 PR,一次“稍后再修”的妥协,日积月累便酿成恶果。本文将对这些习惯(无论大小)做一个简要介绍。它阐述了小习惯如何随时间演变为大习惯,以及良好习惯与不良习惯如何产生复利效应。此外,我还探讨了一个我认为被我们低估的具体风险:当人工智能被缺乏理解与判断地使用时,它不仅无法帮助我们建立高质量的软件习惯,甚至可能主动侵蚀我们已有的良好习惯。 Software Quality Habits and AI dzone.com +1
您的团队能否列出其已使用 AI 运行的工作? AI 工作流清单是理解团队实际如何使用 AI 的关键工具。尽管个人可能清楚自己的 AI 快捷方式,但这容易营造出一种全面掌握的错觉。当被要求整合这些个人实践时,团队往往会意识到其集体理解的碎片化程度。该清单作为一份集中列表,记录每一项重复出现的 AI 任务。随后,每项任务被归类为临时类别。这种分类有助于团队为做出明智的 AI 委托决策做好准备。作者广泛使用 AI 处理各类任务,将其视为生产工具,但强调 AI 并非人类批判性思维的替代品。最终,AI 工作流清单旨在超越模糊的理解,转化为关于 AI 整合的具体、可操作的洞察。 Can Your Team Name the Work It Already Runs With AI? dzone.com +1
构建实用的云原生黄金路径:基于 Kubernetes 的服务交付、自助服务与开发者友好默认值指南 编者按:以下文章专为 DZone 2026 趋势报告《云原生基础:Kubernetes、平台工程与大规模分布式运维》撰写并发表。我曾合作过的每一个工程组织最终都会面临同样的问题:各团队发布服务的方式各不相同。有的团队使用 Helm,有的编写原始清单(raw manifests),还有的会构建自定义 Bash 脚本。随着这些不同方法的不断累积,支持性的部署步骤往往分散在多个 Wiki 页面中,而这些页面很快就会过时。新工程师在入职的前两周,不得不从旧仓库中复制配置值,并祈祷它们仍然有效。 Building a Practical Cloud-Native Golden Path: A Guide to Kubernetes-Based Service Delivery, Self-Service, and Developer-Friendly Defaults dzone.com +1
一个智能体,两个运行时:定义时序与 LangGraph 之间的状态所有权 将 Temporal 与 LangGraph 结合提出了一个具有欺骗性的简单问题:哪个运行时拥有代理的状态?两者都保留执行进度,但保留的进度类型不同。Temporal 从事件历史中重构工作流状态,并在重放期间复用已记录的活动结果。LangGraph 则将线程作用域内的图状态作为检查点持久化,并从超步边界处恢复。将这些机制视为可互换的会导致恢复语义模糊。因此,生产环境集成需要明确界定业务进度、代理工作状态以及两者之间交接的权限。部署语言、存储后端、模型提供商和托管拓扑仍为未明确假设。当前的 Temporal LangGraph 集成缩小了该问题的范围。其公开预览版的 Python 插件可将 LangGraph 节点作为 Temporal 活动或确定性工作流代码运行,同时由 Temporal 提供持久性;文档建议使用内存中的 LangGraph 检查点器,而非单独的 PostgreSQL 或 Redis 检查点器。Continue-As-New 可将缓存的任务结果带入下一个工作流运行。 One Agent, Two Runtimes: Defining State Ownership Between Temporal and LangGraph dzone.com +1
会员聚焦:Mayowa Fajobi 很高兴能透过他们精彩的文章之外,进一步了解我们 DZone 的贡献者们。而假装感到惊讶的是,开发者们确实在电脑工作之外拥有自己的生活。从构建开源项目到与家人共度美好时光,DZone 社区不仅汇聚了领域专家,更充满了拥有动人故事的充满热情的个体。其中一位便是我们本周的“成员 spotlight"。Mayowa Fajobi 或许是 DZone 上较新的面孔,但他已在平台工程、AI 驱动解决方案及开源战略等技术领域成为一位成熟的领导者。但请不要只听我一面之词!进一步了解 Mayowa 的背景,以及将他带到今天这一成就的职业旅程。 Member Spotlight: Mayowa Fajobi dzone.com +1
在不构建领域对象的情况下测试业务程序 对业务逻辑进行单元测试通常只需要 surprisingly 少量的业务数据。假设我们要测试一个程序,该程序加载订单、计算其总额,并在金额超过限制时拒绝该订单。我们要验证的决策很简单: Testing Business Programs Without Constructing Domain Objects dzone.com +1
使用 Playwright TypeScript 验证 API 测试中的响应数据 API 测试自动化的最重要部分之一是验证响应体,以确保数据完整性。此步骤在功能 API 测试中起着关键作用,因为它有助于确认 API 是否以预期格式返回了正确的数据。响应体验证并不局限于特定的请求类型;它同样适用于 POST、GET、PUT 和 PATCH API。相同的验证方法可用于任何 API 响应,以验证服务返回的数据。 How to Verify Response Data in API Testing With Playwright TypeScript dzone.com +1
锁定企业:AI 集成的数据安全防护模式 每一家企业关于人工智能的讨论,最终都会抵达同一个令人不安的问题:一旦数据离开我们的边界,会发生什么?无论您是将大语言模型接入理赔处理流程,为内部知识检索部署检索增强生成(RAG)系统,还是允许代理工作流对生产系统执行自主操作,答案都将决定您的 AI 举措是转化为竞争优势,还是演变为一桩等待爆发的合规事件。本文阐述了一种分层、纵深防御的方法,用于在 AI 全生命周期中保障企业数据安全——涵盖数据分类与访问控制、传输与存储、供应商合同、提示词卫生、架构模式以及合规映射。本文面向已超越“是否应采用 AI"的讨论、正身处“如何在大规模场景下安全落地”现实中的架构师、技术负责人及工程管理者。 Locking Down the Enterprise: Data Security Patterns for AI Integrations dzone.com +1
多智能体系统如何取代大多数人工机器学习验证决策——Karpathy 循环方法 一个欺诈团伙于晚上 11 点激活。您的检测模型开始漏掉本应在三个月前就能识别的交易。到了周三上午,监控仪表盘已全面告警。挑战者模型已准备就绪:上周完成训练,部署在预发环境,只待绿灯放行。然而,它直到周五才会上线。 How Multi-Agent Systems can replace most of Manual ML Validation decisions - The Karpathy Loop Approach dzone.com +1
构建一个将生产故障转化为回归测试的 AI 代理 生产故障通常包含足以解释问题成因的证据,但缺乏将其转化为可执行测试所需的结构。追踪信息可能暴露失败的请求路径,日志可能包含异常,而下游跨度(spans)可能揭示触发缺陷的依赖响应。关键的工程步骤是将这些证据转化为确定性回归测试,而非另一份事故总结。近期的故障复现系统遵循同一原则:有效的复现脚本应在存在缺陷的版本中因报告的原因而失败,并在缺陷修复后变为通过的证据。Issue2Test 和 ReProAgent 均采用执行反馈机制,而非将测试生成视为单一的“提示 - 响应”操作。 Building an AI Agent That Converts Production Failures Into Regression Tests dzone.com +1
使用 Python 跨 AI 问答引擎追踪品牌可见性 “搜索可见性”在过去十五年里仅指一件事:URL 在十条蓝色链接列表中的位置。这一模式正悄然瓦解。越来越多的用户从由 ChatGPT、Perplexity、Gemini 或 Google 的 AI 概览生成的合成段落中直接获得答案,而不再点击跳转至任何来源。对于开发者和技术营销人员而言,问题在于这一表层在很大程度上对现有工具不可见。Google Search Console 不会报告 ChatGPT 是否提及了某个品牌;排名追踪器也无法知晓 Perplexity 是引用了哪一个域名而非另一个。如果您需要这些数据,就必须自行收集。 Track Brand Visibility Across AI Answer Engines with Python dzone.com +1
当你的聊天机器人能够凭对话技巧进入评分引擎时 设想一种简洁的架构:候选人回答面试问题,模型从每个回答中提取特征并更新实时评估。在问题之间,候选人可以询问职位详情、团队结构、福利政策以及后续流程。这使得体验更具人性化。因此,将这些提问路由到正在执行面试的同一对话模型,因为它已掌握全部上下文。一个模型、一个上下文窗口、一条流水线。直接部署。现在回溯你刚刚构建的系统。评分逻辑与问答逻辑共享状态,共享上下文窗口,甚至可能共享提示词。驱动候选人评分的特征,与生成关于育儿假等友好回复的特征,在同一位置计算。在“这段文本是关于候选人的证据”与“这段文本是客户服务回复”之间,不存在任何壁垒。你并未设计一个漏洞;你构建了一个本就不应存在隔离的系统。 When Your Chatbot Can Talk Its Way Into the Scoring Engine dzone.com +1
云复杂性是运营模式问题:为何仅靠基础设施成熟度无法解决规模、可靠性与团队摩擦 编者按:以下文章专为 DZone 2026 趋势报告撰写并发表,题为《云原生基础:Kubernetes、平台工程与大规模分布式运维》。在运营共享 Kubernetes 环境数年后,重心转移的趋势已愈发清晰。集群 provisioning、容器调度和升级已成为常规操作,但发布仍因所有权、访问权限、遥测和成本分摊等问题而停滞不前。 Cloud Complexity Is an Operating Model Problem: Why Infrastructure Maturity Alone Can’t Solve Scale, Reliability, and Team Friction dzone.com +1
使用 ONNX Runtime 将大语言模型集成到 Swift iOS 应用中 人工智能已成为现代软件开发中最具影响力的技术之一。从聊天机器人和推荐系统,到情感分析和智能搜索,机器学习模型如今已成为许多移动应用中的必备功能。多年来,将人工智能集成到 iOS 应用中几乎总是意味着将用户数据发送至云服务。OpenAI、Anthropic Claude 和 Google Gemini 等 API 使开发者能够在无需担忧基础设施或硬件限制的情况下,利用最先进的语言模型。尽管这种方法简单易行,但也引入了若干挑战,包括网络延迟、API 成本、对互联网的依赖以及隐私问题。 Integrating LLMs into iOS Applications With Swift Using ONNX Runtime dzone.com +1
软件团队的企业管理 AI 治理检查清单 大多数 AI 治理框架是面向高管、合规官和风险委员会编写的。它们产出政策,政策又衍生出文档,而这些文档往往停留在 SharePoint 中,与此同时,工程团队却在缺乏任何治理基础设施的情况下发布 AI 功能。这并非愤世嫉俗,而是既有的模式。2024 年麦肯锡的一项调查显示,72% 的组织已在至少一个业务职能中采用 AI,但仅有不到 10% 的组织建立了成熟的治理体系 [1]。这一差距并非意图上的失败,而是运营化上的失败。治理框架未能转化为验收标准、代码审查清单或部署门禁,因此无法落地实施。 An Enterprise AI Governance Checklist for Software Teams dzone.com +1
当配置管理演变为运营负担时 绿色的 Ansible 运行可能掩盖了没有明确责任人的操作。任务已完成,所有目标均报告成功,所需变更已生效。然而,无人能确信地指出:当前由哪个系统拥有资源状态、监控服务、控制凭证,或决定下一步操作是否安全。 When Configuration Management Becomes an Operational Liability dzone.com +1
仅靠 RAG 已不足够:企业知识图谱在 AI 系统中的崛起 检索增强生成(RAG)已成为将大语言模型锚定在企业数据中的标准范式。典型的实现方式是将文档转换为嵌入向量,存储于向量数据库中,针对查询检索最相似的片段,并将其加入模型提示。这种方法在文档检索、政策搜索、支持内容查询等以语义相似度为主要需求的任务中表现良好。然而,企业知识极少以孤立的段落形式组织,而是分散于各类应用、数据库、API、文档、所有权层级、产品目录及运营记录之中。一旦问题涉及关系、溯源、时间或需要多步推理,仅靠向量检索便显得不可靠。因此,企业人工智能的下一阶段发展,依赖于将 RAG 与企业知识图谱相结合。 RAG Is Not Enough: The Rise of Enterprise Knowledge Graphs for AI Systems dzone.com +1
Anthropic 建立生物实验室,以测试 Claude 在现实世界中的能力 Anthropic 多年来一直警示日益强大的 AI 所带来的风险。如今,它正在测试这些系统在真实生物实验室中的表现。Claude 的开发者已在旧金山湾区建立了一个湿实验室,能够开展实体生物学实验,从而将其生命科学工作从基于计算机的研究扩展至物理实验。Anthropic 生命科学负责人 Eric Kauderer-Abrams 向路透社证实了该设施的存在,并表示公司部分实验由内部进行,而其他实验则依赖外部合作伙伴。 Anthropic Builds Biology Lab to Test What Claude Can Do in the Real World dzone.com +1
SpaceXAI 推出 Grok 4.7:低价高耗 Grok 4.7 承诺在基础价格不变的情况下实现更强的 AI 编码性能,但高昂的 token 消耗可能会削弱这些节省。SpaceXAI 于 9 月 21 日发布 Grok 4.7,作为其最新的面向编码和专业知识工作的模型。据该公司称,该模型采用了比 Grok 4.6 更大的基础模型,并经过了更长的强化学习训练,专注于耗时数小时才能完成的困难任务。 SpaceXAI Launches Grok 4.7: Low Prices, Heavy Token Use dzone.com +1
使用 Python 库降低 LLM API 成本的 6 种技巧 在深入探讨解决方案之前,了解问题的规模大有裨益。考虑一个常见的生产场景:一个客户支持机器人,每天处理 10,000 条消息,每条消息包含 2,000 个 token 的系统提示和 200 个 token 的用户消息。 6 Techniques To Reduce LLM API Costs With the Python Library dzone.com +1
超越代码检查:为何我们转向语义契约以支持无障碍与本地化 我记得在一次重大发布前三天坐在作战室里。我们信心满满:静态无障碍(a11y)检查器已通过,而我们的本地化(l10n)单元测试——仅执行简单字符串比对——也返回了绿色结果。然而,一名测试用户报告称,"primary_submit_action"按钮在物理上无法点击,因为我们的本地化文件导致按钮标签变长,将触控目标推到了屏幕之外。我们的测试之所以没有失败,是因为它们并未查看屏幕,而是检查文本文件。那一刻我意识到,我们对脆弱的字符串比对和基础静态检查的依赖在规模化时已遭遇瓶颈。我们需要一种新方法,不仅验证标签是否存在,更要确认布局与用户之间的语义契约。 Beyond Linting: Why We Switched To Semantic Contracts for A11y and Localization dzone.com +1
停止为审计做准备——构建能够自我审计的管道 我读过的每一个成功构建持续合规的工程团队,都报告了相同的三项成果:审计准备工作从数周缩短至数小时;证据请求通过查询即可响应,无需临时慌乱;合规团队不再成为所有人避之不及的部门。到 2026 年,实现这一目标的架构已不再处于实验阶段。每个组件均为生产级,大多开源,且其模式已在足够多的公开工程博客中有所记载,你可以直接复用而无需重复造轮子。本文将深入剖析该架构的实际构成、每一层的功能,以及每一层所带来的具体收益。 Stop Preparing for Audits — Build the Pipeline That Audits Itself dzone.com +1