AI 资讯
So I Made an Easy Cloud Coding Agent as an API
I got tired of watching coding agents spin up from scratch every single time I sent them a prompt. Cold starts, re-cloning massive monorepos, pasting the previous context into a synthetic prompt block — it worked, but it felt fundamentally wrong for agents that are supposed to think in conversations. So we shipped persistent sessions for the Critique Coding Agent API . Here's what changed, why the harness matters, and why you should never run a coding agent without a review skill. The Problem: Agents That Forget When we first released the Coding Agent API, follow-ups were honest but clunky: every follow-up was a brand-new job. The previous output was replayed as plain text into a fresh sandbox. It was the right MVP. It billed predictably. It never pretended a dead sandbox was alive. But it was the wrong long-term shape. If your internal bot fixes a migration, then wants a follow-up test, then wants a small doc tweak — you don't want three cold starts. You want: One repository checkout One OpenCode session A control plane that understands turns What Changed: Persistent Sessions After the first turn completes, the run now enters idle status. The E2B sandbox and OpenCode server stay up until sessionExpiresAt or until you explicitly POST endSession: true . The next prompt you send is delivered as a real message in that same session — not a synthetic "prior run output" block in a brand-new sandbox. Before (Chained MVP): Turn 1 completes → Sandbox killed → Turn 2 = new job + pasted prior summary Now (Persistent): Turn 1 completes → idle → Sandbox warm → Turn 2 = message into same OpenCode session Same run.id . Same checkout. Same context. Just the next turn. How It Works Under the Hood On the first turn, Critique: Creates an E2B sandbox from the OpenCode template Clones your repository at the requested ref Bootstraps tooling and starts opencode serve on localhost inside the VM Opens an OpenCode session Instead of killing that sandbox after completion, we now store session
AI 资讯
The Macro Failure of "One-Size-Fits-None" Reporting: Why Healthcare Providers Fail to Act on Patient Feedback - Part I
Every month, healthcare jurisdictions pool millions of dollars into collecting Patient-Reported Experience Measures (PREMs). Millions of text files and survey comments flood central data lakes, yet front-line nursing staff and clinical leads rarely see any change. Why? Because the current system suffers from a classic structural failure: jurisdictional data is too generic to drive local quality improvement. When high-level governance reporting irons out localized friction, it masks the acute pain points felt at the hospital floor or ward level. Based on real-world semantic data and deployment insights from Clinical Excellence Healthcare Provider (Q1 2026), let's unpack the core stakeholder pain points, system challenges, and friction points across today's healthcare operations. The Core Pain Points from Patients (The Consumer Stakeholders) When analyzing massive text datasets via automated inference engines (such as The Clinician’s Q Engine), positive remarks tend to highlight compassionate, respectful staff interactions. However, statistical variance confirms that negative nuances are easily lost in aggregated data. At the patient level, the loudest, most persistent pain points center around operational communication gaps: The Distress of "The Waiting Room Silence": In Emergency Departments (ED), wait times are a known hurdle. Yet, semantic tracking shows that long waits are exacerbated by an institutional lack of communication. As one patient shared: "I waited over [time] and nobody told us what was happening... the care was good once I was seen, but the silence made it frightening." Uncertainty breeds distress, turning a capacity challenge into an experience failure. The Discharge Disconnect: Leaving the hospital is a critical care transition, yet it remains highly fragmented. Patients frequently express confusion regarding medication updates, warning signs to watch for, and who to contact if they become unwell post-discharge. They leave feeling medically cleared
AI 资讯
One Schema to Rule Them All: The Config v2 Rewrite
This is part sixteen in a series about managing the growing pile of skills, scripts, and context that AI coding agents depend on. The 0.8.0 release notes cover the storage and pipeline changes that shipped alongside this rewrite; Part thirteen covers how the new profiles.improve config drives the improve pipeline. Config files are where projects go to accumulate technical debt quietly. Each new feature gets a new key. Each new key gets a new parser. Each parser has slightly different error handling, slightly different defaults, and slightly different ideas about what "invalid" means. Nobody notices until a user files an issue that says "I had a typo in my config and akm just silently used defaults for three weeks." That was the state of akm's config layer going into 0.8.0. What the Old Shape Looked Like The v1 config had three top-level blocks that grew independently over two years: llm.* for LLM connection settings, agent.* for agent process settings, and llm.features.* boolean flags gating per-feature LLM calls. The features block was nested under llm for historical reasons even though many features used the agent, not the LLM. The agent's per-process map lived under agent.processes , while LLM-gated features used llm.features.index.metadata_enhance style dotted paths. Each block had its own parser function. parseLlmConfig , parseEmbeddingConfig , parseIndexConfig , and a dozen more. The comment at the top of the new config-schema.ts is blunt about it: the Zod schema "replaces the ~1.4k LOC of legacy per-shape parsers." The problems that accumulated in that ~1.4k LOC: Unknown keys were silently accepted. If you wrote llm.temperaure (typo), the parser ignored it and fell back to the default temperature. No warning. You tuned a key that did nothing. Bad JSON was masked. The config loader caught JSON parse errors and fell back to DEFAULT_CONFIG — the compiled-in defaults. Your entire config file could be corrupt and akm would start without complaint, using defaults a
AI 资讯
The Proposal Queue Safety Net
This is part fifteen in a series about managing the growing pile of skills, scripts, and context that AI coding agents depend on. Part ten introduced the improve pipeline and how it generates proposals. Part twelve covered belief-aware memory, which feeds directly into the confidence scores covered here. The fundamental problem with agent-generated stash updates is trust. You want to capture what the agent learned — the debugging insight from last Tuesday's session, the architectural pattern it derived from reviewing twenty PRs — without blindly writing unreviewed content into the knowledge base your other agents depend on. One bad promotion and you've contaminated search results with a hallucinated fact that will keep showing up until someone notices. akm's proposal queue is the answer to that problem. Introduced in 0.7.0 and extended in 0.8.0, it separates generation from promotion. Every agent-driven change writes to a durable queue first. Nothing reaches your live stash until you explicitly accept it. The queue is the safety net. How the Queue Works When akm improve or akm propose runs, the output goes to the proposal queue — not to your stash. Proposals live outside the asset tree. They never appear in akm search results and never get indexed alongside your real assets. The quality: "proposed" marker ensures this at the database level: proposed assets are excluded from default search and only surface through the akm proposal * commands or an explicit --include-proposed flag. This means an agent can generate dozens of proposals in a single akm improve run and none of them affect your live stash until you decide they should. Multiple proposals for the same ref coexist without filesystem collisions. You can review them at your own pace, reject the bad ones, and accept the rest in whatever order makes sense. The complete review workflow: akm proposal list # see what's pending akm proposal show < id > # render the full proposal content akm proposal diff < id > # dif
AI 资讯
How to upgrade an Enterprise Grade Kubernetes Cluster with Zero Downtime.
Introduction One of the common tasks performed by DevOps Engineers is upgrade of their organization's Kubernetes Cluster at least once every 3 months as Kubernetes release newer version while maintaining on the last 3 released versions. For instance, if the newest version is v1.34, the supported versions would be v1.34, v1.33 & v1.32. Hence, the need to understand how this upgrade process can be achieved with zero downtime. Prerequisites: Cordon your Nodes: This simply means making your nodes unschedulable. No new deployments would be scheduled on the node. Review and understand the change logs in the release notes - Ensure that the change logs or updated components won't affect your production environment. Kubernetes upgrade are irreversible - You can't downgrade your cluster after an upgrade. A fresh installation would be required in the event of an issue with the upgraded version. Hence Lower Level Environment Test (Unit, Staging or Pre-Production) - Given that Kubernetes upgrades are irreversible, always test the newer version and allow monitoring for about 2-weeks before production cluster upgrade. Control Plane & Nodes should be on the same versions. Cluster Auto-Scaler: If you are using this feature within your Kubernetes environment, ensure that it is on the same or compatible version with your control plane to avoid issues during the cluster upgrade. IP Addresses: Make available at least 5 IP addresses within the cluster subnet. Kubelet: This component should also match the version of your control plane before the upgrade. What are the actual upgrade processes Control Plane Upgrade: If using the Managed Kubernetes Cluster (EKS, AKS, GKS), the Cloud Company will take care of managing the control plane. However, upgrade of the cluster doesn't happen automatically. Hence, you will be required to action this via the CLI, UI or EKSCLI etc. Node Group or Data Plane Upgrade: Managed Node Groups - This is easier because you can use the rollout deployment approach,
AI 资讯
Your Agent Has a Memory That Runs While You Sleep
This post is part of the akm-knowledge series. Part ten introduced the improve pipeline — what each phase does and how to schedule it. This post goes deeper on what continuous operation looks like in practice: the hardware numbers, the reliability bugs we hit at 48 runs per day, and the observability layer we built to keep watch. Most people think of AI agent memory as something that happens during a session. You talk to your agent, it learns things, maybe you save a few notes, the session ends. The next session starts cold. akm improve is built around a different model: a continuous background process that runs on your own hardware, against local models, and quietly curates your agent's knowledge base while you work on other things. No cloud API required. No per-token billing for the maintenance pass. A GPU you already own, a model you already have downloaded, running on a schedule. This post covers what 24 hours of autonomous operation actually looks like, how consumer-grade GPUs handle the load, the reliability work that makes continuous operation viable, and the observability layer that lets you know it's working without watching logs. What akm improve Does in 24 Hours akm improve is a multi-phase pipeline. The core pass — consolidation — loads your memory pool, groups related memories into chunks, sends each chunk to a local LLM for a consolidation plan (merge similar memories, promote high-signal ones to your stash, delete redundant ones, surface contradictions), and then executes those plans. After consolidation, memory inference runs a lightweight factual extraction pass, and graph extraction updates the entity-relation index. The pipeline is scheduled to run automatically. Here is what one 24-hour window produced: Metric Value Runs completed 48 / 48 — zero failures Memories processed 14,189 Promoted to stash 1,361 Merged (deduplication) 49 (64 secondaries absorbed) Contradictions surfaced 211 Deleted (redundant) 31 Memory inference yield 69.3% — 115 new ato
AI 资讯
From 30 Minutes to 8: How LLM-Mode Reflect Works
This is part thirteen in a series about managing the growing pile of skills, scripts, and context that AI coding agents depend on. Part ten covered the full improve pipeline — all five phases and how they connect. Part fourteen covers what 48 runs per day looks like in practice, including hardware benchmarks and the reliability bugs that surface at that frequency. The reflect pass inside akm improve has three execution modes. Most installs are still running the slowest one. Agent mode — the original — spawns an opencode or claude subprocess for each reflect call. The subprocess starts cold, acquires a session, assembles context, makes its LLM call, and exits. That cold-start overhead is real: each call takes approximately 30 seconds on a quiet machine. Run akm improve against a 69-ref stash and the reflect phase alone costs about 35 minutes. SDK mode eliminated the subprocess. The reflect call runs in-process, cutting per-call latency to 10–15 seconds. A 69-ref run drops to 12–17 minutes — better, but still bounded by round-trip overhead that the reflect task does not actually need. LLM mode removes the round trip entirely. The context for reflect is statically pre-assembled — no live tool calls, no file reads, no external context needed. A direct HTTP call to the LLM endpoint is sufficient, and it costs 6–10 seconds per call. A 69-ref run completes in 8–10 minutes. Mode Per-call latency 69-ref run agent (CLI subprocess) ~30s ~35 min sdk (in-process) ~10–15s ~12–17 min llm (direct HTTP) ~6–10s ~8–10 min The 3–4× end-to-end improvement is from eliminating overhead that was never necessary for what reflect does. Why Reflect Does Not Need an Agent The reflect pass takes a stash asset, examines its current content, and proposes a refined version. The inputs are fixed before the pass starts: the asset text, its metadata, and the improvement prompt. Nothing changes mid-call. No files need to be opened. No search queries need to fire. No external context needs to be pulled
AI 资讯
Belief-Aware Memory: Teaching Your Agent When Not to Write
A self-improving memory loop sounds like a clear win until you watch it rewrite something correct with something outdated. The agent remembered a fact. You verified it. A later consolidation pass ran against a stale context window, decided the memory was imprecise, and replaced it with a weaker version. The original was better. You lost ground. This is the failure mode that belief-aware memory was built to prevent. Not "agents write wrong things" — that's a model quality problem. The specific failure is: the improve loop, running unsupervised, overwrites correct content it should have left alone. A loop that can degrade its own best work is worse than no loop at all. akm 0.8.0 ships captureMode and beliefState as first-class frontmatter fields on memory assets. Together they tell the consolidation pass what each memory is, what the agent believes about it, and whether it is eligible to be rewritten. The Two Capture Modes Every memory asset now carries a captureMode field. It has two values. hot means the memory was written or explicitly confirmed by a human. The improve loop treats hot memories as read-only. No consolidation plan, no merge proposal, no rewrite. If every memory in a chunk is captureMode: hot , the consolidation pass skips the LLM call for that chunk entirely — the chunk is counted as judgedNoAction before a single token is spent. This is the all-hot chunk early-exit. background means the memory was generated by an agent — promoted during a prior consolidation run, written by an inference pass, produced by akm remember without explicit human review. Background memories are eligible for improvement. The consolidation pass can propose merges, rewrites, deletions, or upgrades. When no captureMode is set, the memory is treated as eligible for consolidation. Memories that existed before 0.8.0 are treated this way on first encounter. --- captureMode : hot beliefState : asserted description : Primary LM Studio endpoint moved to Shredder (192.168.0.99:1234) -
AI 资讯
Task Assets: Agent Workflows That Run While You Sleep
This is part eleven in a series about managing the growing pile of skills, scripts, and context that AI coding agents depend on. Part nine covered workflow assets and resumable procedures. Part ten introduced the improve pipeline that continuously curates your stash. Earlier parts addressed teams, distributed stashes, and community knowledge. Most automation with AI agents is reactive. You open a session, give the agent a task, wait for the result, close the session. The agent's clock runs when you run it. Task assets flip that model. A task is a YAML file in your stash that defines a workflow — what to run, when to run it, what environment it needs, and how long it's allowed to take. Once registered, the task runs on schedule without your involvement. The OS scheduler calls akm tasks run <id> , which executes the task and writes the result to state.db . You find out what happened when you check akm health or look at the log. This is the piece of akm 0.8.0 that makes continuous operation possible. The improve loop runs twice an hour because a task asset says it does. The hourly Discord health report fires because a task asset says it does. Neither requires an open terminal. The Task Asset Format Task assets live at <stash>/tasks/<id>.yml . The filename is the task ID. A minimal task looks like this: schedule : 0 * * * * command : akm improve --auto-accept 90 enabled : true That's enough to install a cron entry and run akm improve at the top of every hour. The full schema adds metadata and per-task timeout control: schedule : " 7,37 * * * *" command : akm improve --auto-accept 90 --timeout-ms 1620000 enabled : true timeoutMs : 1800000 name : akm-improve description : Run the improve pass at :07 and :37 — reflect, distill, consolidate, lint, and eval. when_to_use : Twice per hour; leaves ~23 minutes of idle headroom between completions. tags : - improve - maintenance The fields that matter most: Field Required Purpose schedule yes Standard cron expression. Maps to cro
AI 资讯
The Improvement Loop: How akm Keeps Your Agent Sharp
This is part ten in a series about managing the growing pile of skills, scripts, and context that AI coding agents depend on. Part nine covered workflow assets, vault assets, and the writable git stash. Part eight tackled multi-wiki support for structured research. Earlier parts addressed teams, distributed stashes, feedback scoring, and community knowledge. This one is about entropy. You ship a feature. Your agent writes several memories during the session — partial findings, a workaround, a note about the build step that kept failing. Those memories are accurate when written. Three sprints later, the workaround is no longer needed, two of the memories say slightly different things about the same subsystem, and the note about the build step refers to a CI config that was replaced. None of this is catastrophic. But it accumulates. After six months, a significant fraction of your stash is stale, redundant, or quietly wrong. You could audit it manually. In practice, you won't — the stash is too large, the relevance of any given memory is hard to assess without the context where it was created, and the judgment calls (merge these two? promote this? delete that?) are exactly the kind of work that's tedious for a human and tractable for an LLM. akm improve is the answer to that problem. It is a multi-phase pipeline that reads your stash, evaluates asset quality, consolidates scattered memories, extracts structured facts, and maps entity relationships — on a schedule, without manual intervention, producing proposals you can review before anything changes. The Five Phases akm improve is not a single LLM call. It is a sequenced pipeline where each phase produces inputs for the next. Reflect evaluates asset quality. For each asset in scope, the reflect pass reviews the content against usage signals — search hits, retrieval counts, feedback — and produces a quality assessment. Low-quality assets are flagged as candidates for improvement. Since 0.8.0, reflect can run as a dire
开发者
Nintendo confirms it will sell a new Switch 2 with replaceable battery in the EU
Nintendo is planning to launch versions of Switch 2 hardware in the EU that will let users easily replace the battery. To meet its obligations from a new EU regulation that's set to go into effect on February 18th, 2027, Nintendo says on its website that it is "implementing measures to comply with these requirements […]
AI 资讯
Biodefense in the Intelligence Age
An action plan for AI-powered biological resilience
AI 资讯
Lovable signs multiyear deal with Google Cloud to up usage 5x, source says
Lovable and Google signed an expanded multiyear deal that involves a 5x expansion of Lovable's footprint on Google Cloud, and expanded access to Anthropic Claude.
AI 资讯
What the ChatGPT for Sheets data-exfiltration bug teaches about AI security
A security firm called PromptArmor published a writeup on May 27, 2026 showing that ChatGPT for Google Sheets, an OpenAI extension with more than 185,000 downloads, could be made to steal a user's spreadsheets through a single ordinary-looking request. Four days later, on May 31, OpenAI shipped a fix. The short version is that one benign question, typed by a real user into a sheet that contained hidden instructions, was enough to drain twelve linked workbooks out of that user's account and replace the assistant with a fake phishing chatbot. I want to walk through how this worked, because the mechanism matters far more than the headline, and because the same shape of problem is going to keep showing up everywhere we bolt an AI assistant onto data we did not write ourselves. What happened The attack is a textbook indirect prompt injection. The user does nothing wrong. They import a sheet, or pull in data through a connector, and somewhere in that data sits a block of text the attacker controls. In the PromptArmor demonstration the malicious instructions were written in white text on a white background, invisible to a human skimming the sheet but fully readable to the model parsing the cells. When the user later asks the assistant a normal question, the model reads the whole context, including those hidden instructions, and treats them as if they came from the user. The injected text tells the assistant to fetch and run an external script. That script runs with the permissions the extension already holds, which means it can read the current workbook, find URLs to other workbooks linked inside it, and walk outward from there. PromptArmor reported it exfiltrating twelve workbooks in total from a single trigger, then dropping a fake chat interface on top to harvest whatever the user typed next. The detail that should bother you most is this line from their report: the attack succeeds even when the user has explicitly disabled automatic edits. The human-in-the-loop approva
AI 资讯
Mutagen 0.4.0 Released: Service Extraction, Bug Crunches, and Fixed Persona Drift
Mutagen 0.4.0 addresses the friction points that plague agentic workflows: context bloat, brittle persona transitions, and the lack of a deterministic path from design document to deployed artifact. We aren't trying to make prompts smarter; we are making the harness that executes them more precise. This release introduces a Rust-based service extraction layer that decouples static dependency mapping from generative reasoning, implements an adversarial verification pipeline to gate deployment, and enforces strict stage transitions to prevent the agent personas we rely on from drifting into one another's scopes. The Service Extraction Layer: Decoupling Logic from LLM Context The primary bottleneck in current agentic stacks is token consumption. When a model attempts to reason about a codebase that spans multiple dependencies, it often spends its context window parsing file headers and resolving imports before it can actually write logic. This approach treats static infrastructure as if it were part of the reasoning problem. Mutagen 0.4.0 changes this by introducing a dedicated Rust layer designed to extract service definitions directly from your codebase without polluting the primary agent context. Instead of asking an LLM to map dependencies, the harness queries the local file system and executes static analysis routines. It isolates business logic execution from the generative reasoning loop used by Claude and Codex. This separation allows the model to focus on how to solve a problem rather than where the pieces are located. In practice, this means offloading static infrastructure queries to the harness rather than the LLM. The result is reduced latency and significantly lower token costs for complex applications. You get a dependency map that is as reliable as a compiler's parse tree, not a probabilistic guess from a prompt. // Example: Service extraction logic isolated from the reasoning loop fn extract_services_from_codebase () -> HashMap < String , Vec < Depende
AI 资讯
TryParse Looks Like a Small Utility Method — Until You Realize It Prevents Entire Classes of Production Failures
Why Senior .NET Engineers Rarely Trust User Input Most beginner C## developers discover TryParse() while learning console applications. It usually appears during a simple exercise: Console . Write ( "Enter quantity: " ); string ? input = Console . ReadLine (); if ( int . TryParse ( input , out int quantity )) { Console . WriteLine ( $"Quantity: { quantity } " ); } At first glance, it looks like a convenience method. A safer version of Parse() . A small utility. Nothing particularly interesting. But experienced .NET engineers see something completely different. They see one of the earliest examples of defensive programming. Because software engineering is not about handling perfect input. It is about surviving imperfect input. And in production systems, imperfect input is the rule—not the exception. TL;DR TryParse() is not just a conversion method. It introduces some of the most important concepts in professional software development: Defensive programming Input validation Runtime safety Exception avoidance Financial precision Domain modeling Reliability engineering Understanding why TryParse() exists is often more valuable than learning how to use it. Every Value in C## Starts With a Type One of the first concepts developers learn is that every variable has a type. int quantity = 10 ; decimal price = 25.99M ; string productName = "Laptop" ; bool isAvailable = true ; Simple. Yet this idea is foundational. Because types are not just containers. They are contracts. Each type defines: Valid values Memory layout Available operations Precision guarantees Runtime behavior When you choose a type, you are making an architectural decision. Why decimal Exists Many developers ask: Why not use double for money? Because financial systems require precision. Consider: double a = 0.1 ; double b = 0.2 ; Console . WriteLine ( a + b ); Expected: 0.3 Reality: 0.30000000000000004 The issue comes from binary floating-point representation. For scientific calculations, this is acceptable. F
AI 资讯
AI 数据中心网络演进中铜(Copper)与板载共封装光学(CPO - Co-Packaged Optics)
这视频由知名半导体分析机构 SemiAnalysis 发布,围绕 AI 数据中心网络演进中铜(Copper)与板载共封装光学(CPO - Co-Packaged Optics)的竞争和未来进行了极其硬核且详细的深度拆解。 视频的核心逻辑可分为以下几个关键板块: 一、 背景:铜的物理极限与三大网络层级 1. 铜的物理极限 视频开篇强调,半导体一直依赖铜(如芯片金属层、主板走线、NVL72机架的背板总线)。但当单通道传输速率达到 200 Gbits/second (每路) 及以上时,铜的传输距离极限被死死卡在 2米以内 [ 00:55 ]。超过这个距离,现代 AI 服务器的庞大带宽需求就只能依赖光纤和激光 [ 01:01 ]。 2. AI 数据中心的三大网络层级 [ 01:43 ] 前端网络(Front-end Network): 负责基础的数据加载、SSH 访问和用户请求,带宽要求最低 [ 01:51 ]。 纵向扩展网络(Scale-up Network): 连接单机架内的所有计算和网络托盘(如英伟达的 NVLink),让多张 GPU 能以极高带宽、极低延迟像“单张 GPU”一样协同工作 [ 02:07 ]。其带宽需求是 Scale-out 的 10 倍 [ 03:47 ]。 横向扩展网络(Scale-out Network): 负责机架与机架之间、甚至整个数据中心范围内的服务器互联 [ 03:00 ]。其带宽需求是前端网络的 8 到 10 倍 [ 03:47 ]。 二、 传统可插拔光模块(Pluggable Transceivers)的致命痛点 在需要跨机架的 Scale-out 网络中,目前行业标配是可插拔光模块(如 OSFP、QSFP-DD) [ 04:29 ]。 视频拆解了它的四大组成部分: 物理接口、DSP(数字信号处理器)、TOSA(激光发射组件)、ROSA(光接收组件) [ 05:03 ]。 视频提出了一个颠覆直觉的事实: 耗电和延迟的元凶根本不是激光器(仅占15%功耗),而是 DSP。 [ 06:06 ] 功耗: DSP 消耗了光模块高达 60% 以上 的电能 [ 06:21 ]。 延迟: 信号从电转换到光通常会带来 150 到 200 纳秒的延迟,其中 90% 以上由 DSP 造成 [ 06:28 ]。 为什么必须要 DSP? 因为 GPU 或交换机生成的电信号,在穿过芯片封装、主板走线到达机架边缘的光模块(约 30 厘米距离)时,信号已经严重衰减和失真,必须通过 DSP 进行放大和“清洗” [ 07:17 ]。而 CPO 的核心存在意义,就是将光学引擎无限靠近源头,彻底消灭 DSP [ 06:57 ]。 三、 从 LPO 到 CPO 的技术演进路径 为了干掉 DSP,行业尝试了多种方案: LPO(线性可插拔光模块): 做法很大胆,直接拿掉可插拔模块里的 DSP,强行把失真的电信号转成光信号发出去。虽然有用,但极大牺牲了传输距离 [ 08:25 ]。 OBO(板载光学): 把光模块从机架边缘移到主板上更靠近芯片的位置。但由于距离还不够近,没能彻底干掉 DSP,同时还丢掉了可插拔的便利性,宣告失败 [ 09:06 ]。 NPO(近封装光学): 将光学引擎移至与 ASIC(交换机芯片/GPU)极近的特殊高特性基板上,是目前正在落地的折中方案 [ 09:38 ]。 CPO(共封装光学): 终极形态,将光学引擎与芯片直接封装在同一个 Package 上 [ 10:01 ]。 视频中拆解的 CPO 三大阶梯(Tiers): 第一阶梯(最低限度): 光学引擎与交换机芯片在同一封装基板上,通过铜走线连接。虽干掉了 DSP,但仍需要 SerDes 进行并行/串行信号转换 [ 10:31 ]。 第二阶梯(中介层集成): 芯片与光学引擎坐落在同一个硅基或有机中介层(Interposer)上,互连密度大幅提升, 彻底不再需要 SerDes ,实现完全的并行集成 [ 11:01 ]。 终极 Boss 级: 利用混合键合(Hybrid Bonding)等 3D 堆叠技术(2.5D 如台积电的 COW-AMH),将光学引擎直接叠在芯片上方或下方,实现极致的低功耗 [ 11:31 ]。 四、 CPO 的商业落地博弈:Scale-out 网络 CPO 的首个落地目标是替代 Scale-out 网络中的传统光模块 [ 12:46 ]。然而,行业对此产生了严重分歧: 传统可插拔的优势: 坏了极易更换(运维成本低);标准统一、供应商极多,大厂拥有极强的 价格控制权 且能避免 供应商锁定(Vendor Lock-in) [ 13:29 ]。 CPO 的软肋: 它是封装级别的。如果你买英伟达或博通的 CPO 芯片,你就必须绑定购买他们的整套光学方案;一
AI 资讯
Gemma 4 12B Multimodal, AI Copilot Selection, & AI-Optimized Documentation Strategies
Gemma 4 12B Multimodal, AI Copilot Selection, & AI-Optimized Documentation Strategies Today's Highlights Today's top stories delve into a new foundational multimodal AI model, strategic selection of AI copilots for productivity, and practical techniques for creating documentation suitable for both human readers and AI assistants. These insights are crucial for developers building and deploying advanced AI solutions in real-world workflows. Gemma 4 12B: A unified, encoder-free multimodal model (Hacker News) Source: https://blog.google/innovation-and-ai/technology/developers-tools/introducing-gemma-4-12b/ Google has announced Gemma 4 12B, marking a significant step forward in multimodal AI. This model distinguishes itself with a "unified, encoder-free" architecture, simplifying the process of handling diverse data types such as text and images without the need for separate encoding layers. This architectural innovation promises more efficient training, reduced inference costs, and improved coherence in understanding and generating content across different modalities. For developers, Gemma 4 12B provides a robust and flexible foundation for building sophisticated AI applications. It enables the creation of intelligent systems that can process and respond to complex queries involving various input formats, from intelligent search and content generation to advanced human-computer interaction. This streamlined approach to multimodal processing is critical for developing next-generation AI tools and frameworks. Comment: An encoder-free, unified multimodal architecture for Gemma 4 12B is a big deal for reducing complexity and improving cross-modal understanding. This model could significantly simplify building AI applications that need to process and generate content across text and images efficiently. Presentation: Choosing Your AI Copilot: Maximizing Developer Productivity (InfoQ) Source: https://www.infoq.com/presentations/choosing-ai-copilot/?utm_campaign=infoq_content&
AI 资讯
Google ordered to put clearer links in AI search and let UK publishers opt out
Google must change AI Overviews after claiming users don't want "lots of sources."
AI 资讯
Alphabet’s record-breaking $85B raise for Google’s AI business is a helluva good signal
If Alphabet's record-breaking $85 billion stock sale signals investor appetite for AI-related offerings, we can see that investors are ready to chow.