今日已更新 233 条资讯 | 累计 20205 条内容
关于我们

标签:#ens

找到 1398 篇相关文章

开源项目

🔥 BigBodyCobain / Shadowbroker - Open-source intelligence for the global theater. Track every

GitHub热门项目 | Open-source intelligence for the global theater. Track everything from the corporate/private jets of the wealthy, and spy satellites, to seismic events in one unified interface. Hook an AI agent up to have it parse through data and find previously unseen correlations. The knowledge is available to all but rarely aggregated in the open, until now. | Stars: 9,650 | 30 stars today | 语言: Python

2026-07-09 原文 →
AI 资讯

OpenSuperWhisper 评测:macOS 上最被低估的开源语音转文字工具?

OpenSuperWhisper 评测:macOS 上最被低估的开源语音转文字工具? 30秒结论 :OpenSuperWhisper 是一个基于 OpenAI Whisper 模型的 macOS 原生听写(dictation)应用。如果你受够了 macOS 自带听写的间歇性抽风,或者不想每月交钱给 Otter.ai,这个免费开源项目值得一试。 但别期待开箱即用 ——你需要自己配置模型、处理依赖,而且目前只支持 macOS。 适合人群:macOS 重度用户、需要离线语音转文字、对隐私敏感、愿意折腾配置的开发者。 不适合:Windows/Linux 用户、不想碰终端的人、需要实时流式转写(目前不支持)。 核心功能:代码实操 1. 安装部署 # 克隆仓库 git clone https://github.com/Starmel/OpenSuperWhisper.git cd OpenSuperWhisper # 安装依赖(需要 Python 3.10+) pip install -r requirements.txt # 直接运行 python app.py 坑点1 : requirements.txt 里没写版本号,我踩了 numpy 版本冲突的坑。建议手动指定: pip install numpy == 1.26.0 torch == 2.1.0 whisper == 20231117 坑点2 :macOS 14 Sonoma 上需要手动授权麦克风权限。第一次运行会 crash,因为没处理 PermissionError 。workaround:在 System Settings > Privacy & Security > Microphone 里手动勾上终端或 Python 的权限。 2. 基本使用 启动后会在菜单栏出现一个小图标(类似 macOS 原生听写)。快捷键是 Option + Space (可自定义)。 核心逻辑:按下快捷键 → 录音 → 松开 → 调用 Whisper 转写 → 结果写入当前光标位置。 代码层面 ,核心函数在 whisper_handler.py 里: # 简化版核心逻辑 import whisper import sounddevice as sd import numpy as np class WhisperHandler : def __init__ ( self , model_size = " base " ): self . model = whisper . load_model ( model_size ) self . sample_rate = 16000 def transcribe_from_mic ( self , duration = 5 ): # 录音 recording = sd . rec ( int ( duration * self . sample_rate ), samplerate = self . sample_rate , channels = 1 ) sd . wait () audio = recording . flatten (). astype ( np . float32 ) # 转写 result = self . model . transcribe ( audio , language = " zh " ) return result [ " text " ] 实测 :默认 model_size="base" 时,中文准确率约 85%。换成 "large-v3" 能到 92%,但首次加载要 2GB 内存,转写一条 10 秒语音需要 8-12 秒(M1 Pro 芯片)。 3. 自定义快捷键 config.yaml 里可以改: hotkey : modifier : " option" key : " space" model : size : " base" # 可选: tiny, base, small, medium, large-v3 device : " cpu" # 或 "mps" (Apple Silicon) output : paste_delay : 0.3 # 转写后粘贴延迟,防止焦点丢失 注意 : device: "mps" 在 macOS 14.2 上会报 MPS backend not available 。需要安装 PyTorch 的 MPS 版本: pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu 性能测试 测试环境:MacBook Pro M1 Pro (

2026-07-09 原文 →
开发者

4 Cool Open-Source Hardware Projects to Spark Your Next Build

tags: hardware, iot, opensource, electronics As software developers, many of us reach a point where writing code inside a virtual environment isn't quite enough—we want to manipulate the physical world. Whether it's blinking an LED via an ESP32, visualizing audio frequencies on a desk display, or building custom bench tools, hardware hacking is easily one of the most rewarding rabbit holes to fall down. At NextPCB , we’ve spent the past few years supporting the open-source hardware community by sponsoring independent creators, makers, and embedded engineers to help turn their digital schematics into real, physical circuit boards. If you’re looking for inspiration for your next weekend project, here are four curated roundups of real-world projects featuring open-source files, schematics, and design breakdowns. 1. Retro Tech & Nostalgic Geek Culture Builds 🎮 There’s something uniquely satisfying about recreating classic tech using modern hardware components. From custom hand-held arcade consoles to retro synth modules and glowing mechanical displays, retro builds combine aesthetic nostalgia with serious embedded engineering. These projects aren't just for show—they showcase clever power management, compact multi-layer PCB routing, and custom display interfaces. 👉 Check out the project breakdowns & schematics: 8 Retro Geek Culture PCB Projects: Open-Source Gerbers & Schematics 2. Smart Audio & Interactive Visual Displays 🎵 Audio reactive electronics bridge the gap between digital signal processing (DSP) and hardware UI/UX. Think custom spectrum analyzers, RGB LED matrix drivers, and tactile smart knobs that update in real-time. Building custom audio hardware requires paying extra attention to noise isolation, clean power delivery, and signal integrity—making these projects fantastic learning material for intermediate hardware devs. 👉 Explore the audio & display designs: Smart Audio & Interactive Display PCBs: Open-Source Design Guide 3. DIY Power & Precision Lab Equipm

2026-07-09 原文 →
AI 资讯

10 Minimalist Extensions for VS Code / Cursor to Maximize Focus

We have all been there: you open your editor to write a simple feature, and within ten minutes, your screen is a chaotic mess. You are drowning in squiggly red lines, bright rainbow bracket lines, a crowded sidebar, Git blame popups blocking your text, and terminal notifications screaming for attention. Modern IDEs like VS Code and Cursor are incredibly powerful, but out of the box, they are built to distract you. If you want to achieve true flow state, you need to strip away the noise. Here are 10 minimalist extensions built for both VS Code and Cursor that are explicitly engineered to eliminate clutter, reduce cognitive load, and help you focus on the only thing that matters: the code. Interface and Zen Mode Cleansers 1. Zen Mode (Built-in, but needs tweaking) The Vibe: Complete visual isolation. What it does: While not an external extension, true minimalism starts here. Hitting Cmd+K Z (or Ctrl+K Z) instantly hides the activity bar, status bar, sidebar, and editor tabs, leaving you with nothing but your code centered on the screen. The Focus Trick: Go into your settings and toggle zenMode.hideLineNumbers to true to get rid of the left-hand numbering margin entirely for deep reading sessions. 2. APC Customize UI++ The Vibe: Pixel-perfect control over editor bloat. What it does: If you love the layout of hyper-minimalist editors like Zed but want to keep the power of Cursor or VS Code, this is your holy grail. It allows you to shrink font sizes of the UI independently from your code, hide specific layout borders, trim the massive top title bars, and customize panel padding to give your code room to breathe. 3. Customize UI / Active Bar Hidden The Vibe: Moving target elements out of sight. What it does: The left-hand Activity Bar (with the extensions, search, and source control icons) is a constant source of colorful badge notifications. Use this to hide it entirely. You can easily trigger those panels via keyboard shortcuts (Cmd+Shift+E for explorer, Cmd+Shift+F fo

2026-07-09 原文 →
AI 资讯

用 FROST 五维元模型构建可治理的多 Agent 系统:从零到一的代码教程

用 FROST 五维元模型构建可治理的多 Agent 系统:从零到一的代码教程 作者 :FROST Team 日期 :2026-07-09 主题 :代码教程 | 周四轮换 项目 :FROST + FROST-SOP 前言 2026 年,Agent 框架百花齐放——LangChain、CrewAI、AutoGen 各有各的好。但它们都有一个共同的盲区: 治理能力 。 当你的 Agent 系统从 1 个变成 10 个,从跑 Demo 变成跑生产,你会发现: 谁有权做什么?没有答案 这个决策是谁做的?无法追溯 Agent 越权了怎么办?事后才能发现 FROST(Fractal Runtime of Orchestrated Skills & Tasks)的 五维元模型 就是为解决这些问题而设计的。 今天这篇教程,我们用代码从零构建一个完整的多 Agent 治理系统。 FROST (教学框架)提供理论基础 → Gitee 仓库 FROST-SOP (工程平台)提供工程落地 → Gitee 仓库 一、五维元模型是什么? FROST V4.0 引入了五个核心维度,每个维度解决 Agent 治理的一个关键问题: 维度 模块 解决的问题 类比 武器 Armory Agent 有哪些能力? 武器库清单 任务 TaskRegistry 工作如何编排? 作战计划 事件 EventCatalog 发生了什么? 战场态势 平台 PlatformRegistry 外部资源在哪? 后勤补给 规则 RuleRegistry 什么能做/不能做? 交战规则 五个维度 各自独立又相互咬合 ——就像五角星的五个角,缺一个就不完整。 二、环境搭建 # 克隆 FROST 教学框架 git clone https://gitee.com/liao_liang_7514/frost.git cd frost # 安装依赖 pip install -r requirements.txt # 验证环境 python -m pytest test_core.py -v FROST 的设计哲学是 零外部依赖 ——核心只需要 Python 标准库。五维元模型的模块也遵循这个原则。 三、维度一:Armory(武器注册表) Armory 管理 Agent 所有能力的元数据。不是简单的方法注册,而是带元信息的 能力目录 。 from core.armory import Armory , SkillMetadata # 创建武器库 armory = Armory () # 注册一个技能(带完整元数据) armory . register ( SkillMetadata ( name = " summarize_text " , category = " nlp " , description = " 将长文本压缩为摘要 " , input_schema = { " text " : " string " , " max_length " : " int " }, output_schema = { " summary " : " string " }, cost_estimate = 0.002 , # 每次调用预估成本 latency_ms = 500 , # 预估延迟 tags = [ " summarization " , " compression " ] ) ) armory . register ( SkillMetadata ( name = " search_web " , category = " retrieval " , description = " 联网搜索获取最新信息 " , input_schema = { " query " : " string " , " top_k " : " int " }, output_schema = { " results " : " list[dict] " }, cost_estimate = 0.01 , latency_ms = 2000 , tags = [ " search " , " real-time " ] ) ) # 发现可用技能 nlp_skills = armory . discover ( category = " nlp " ) print ( f " NLP 技能: { [ s . name for s in nlp_skills ] } " ) # 输出: NLP 技能: ['summarize_text'] # 按标签发现 search_skills = armory . discover ( tags = [ " real-time " ]) print ( f " 实时技能: { [ s

2026-07-09 原文 →
AI 资讯

Crushing 5GB of XML: Building a Blazing Fast Apple Health Parser with Rust and ClickHouse

We’ve all been there. You click "Export Health Data" on your iPhone, wait ten minutes, and receive a massive, bloated export.xml file. If you've tracked your fitness for years, this file can easily exceed 5GB. Try opening that in Python’s ElementTree or even pandas , and your RAM will cry for mercy. This is a classic Data Engineering challenge: transforming high-volume, semi-structured XML into actionable insights without waiting an eternity. In this tutorial, we are going to build a high-performance parser using Rust performance techniques, Rayon for parallelism, and ClickHouse for lightning-fast OLAP queries. By leveraging Rust's zero-cost abstractions, we'll turn a 20-minute Python slog into a sub-30-second sprint. 🚀 The High-Level Architecture Handling 5GB of XML requires a streaming approach. We cannot load the whole file into memory. We will stream the XML, parse segments in parallel, and ship them to ClickHouse using Protocol Buffers for maximum serialization efficiency. graph TD A[Apple Health export.xml] --> B[Streaming XML Reader] B --> C{Chunking Logic} C -->|Batch 1| D[Rayon Worker 1] C -->|Batch 2| E[Rayon Worker 2] C -->|Batch N| F[Rayon Worker N] D & E & F --> G[Protobuf Serialization] G --> H[(ClickHouse DB)] H --> I[Grafana / SQL Insights] Prerequisites To follow along, you'll need: Rust (Stable) Tech Stack : quick-xml (for streaming), serde (serialization), rayon (data parallelism), and clickhouse-rs . A running ClickHouse instance. 1. Defining the Data Schema Apple Health data (specifically Record types) consists of types, dates, and values. Since we want high performance, we'll use Protocol Buffers to define our intermediate format, ensuring minimal overhead when moving data through the pipeline. // Simplified representation of a Health Record use serde ::{ Deserialize , Serialize }; #[derive(Debug, Serialize, Deserialize, Clone)] pub struct HealthRecord { #[serde(rename = "@type" )] pub record_type : String , #[serde(rename = "@startDate" )] pub

2026-07-09 原文 →
AI 资讯

I replaced the chat window for my local AI agent with a face

I run a local LLM agent (Hermes) on my own machine. The problem was never the model — it was the interface . I had a Telegram tab open all day just to talk to it: type a command, wait, read a wall of text back, scroll. It felt like texting a very capable stranger. So I built Ghost Vessel — a monitor-resident, video-call-style avatar that fronts the agent. The name is the whole idea: the ghost is your agent, the vessel is the body it borrows. It's not a waifu toy; it's a real agent client that happens to have a face. Here's what actually turned out to be interesting to build. The reply is a script, not a string The core idea is an output contract . Instead of treating the agent's reply as text to print, I split every reply into three planes: dialogue → spoken via local TTS data → code, logs, files → rendered as chat cards, never read aloud action → emotion beats that drive the avatar Emotion beats are inline tags the model emits in-band with its answer: [working] — the avatar puts on glasses and takes notes while a task runs [confirm] deploy to prod? — pops a human-in-the-loop approve/cancel, and the agent blocks on your keypress [happy] / [concerned] / … — fine-grained facial expressions So "run the build, and if it passes, deploy" becomes a little performance : it looks busy while working, shows you the log as a card, then leans in and asks before the irreversible step. The text you'd have skim-read becomes something you glance at. No runtime GPU for the avatar The obvious way to animate a face is live inference. I didn't want that — the GPU is busy running the actual model. Instead the avatar is ~30 pre-rendered clips , and the emotion beats just select and blend between them (blink-aligned seamless idle loops, a head-pose "settle gate" so an expression only reveals when the head is frontal). The avatar's runtime cost is basically video playback. Your GPU stays 100% on your LLM. The tradeoff: no real-time lip-sync. I decided a believable talking mouth loop + expre

2026-07-09 原文 →
AI 资讯

I built a free tool to scan your package.json for API deprecations

While researching API changes I noticed something — Google Maps removed DirectionsService on May 1 2026 with no soft fallback. Calls just throw runtime errors after the deadline. Most developers won't know until something breaks. So I built DepRadar — paste your package.json, it checks your exact stack against known deprecations and shows only the ones affecting you, with severity, sunset dates, and migration links. Currently tracks 13 real deprecations across: Google Maps (DirectionsService, DistanceMatrixService removed) OpenAI (Realtime API Beta sunset) AWS SDK v2 (maintenance mode) Microsoft Actionable Messages (retired) moment.js, request package And more Free → depradar.netlify.app Open source → github.com/Ahmed889-code/depradar What deprecations am I missing from your stack?

2026-07-09 原文 →
AI 资讯

The Evolving Agent: How Jean2 Learns Across Sessions

I've been coding with AI agents for about two years. Every major one. Cursor, Copilot, Codex, OpenCode. They're good at generating code. They all share one problem. They forget everything. You finish a session, close the window, and the agent resets. Next time you open it, you're starting from zero. "We use pnpm, not npm." "The database is SQLite, not Postgres." "Don't touch the migrations folder." You repeat yourself. Every. Single. Time. Some tools added memory features. Usually as an afterthought. A pinned file. A custom instruction. A context window that grows until it hits a wall and everything old gets silently dropped. I didn't want a bigger context window. I wanted an agent that accumulates knowledge the way a colleague does. Not by being retrained. By taking notes, writing down what it learned, and reading those notes next time. That's what Jean2 can do. Not through fine-tuning. Not through vector embeddings. Through files on disk that the agent reads and writes itself. But here's the thing: none of this is on by default. By default, Jean2 is as bare as Codex or OpenCode. A blank prompt. No memory. No skills. No session search. You opt in to each layer in workspace settings . That's the point. You build the agent you want, layer by layer. The Four Layers If you turn them on, Jean2's agent has four knowledge layers that persist across sessions. They're not features bolted on top. They're part of the system prompt that gets composed every time a session starts. 1. Workspace Memory Turn on workspace memory in workspace settings , and the workspace gets two files: MEMORY.md for shared knowledge and USER.md for your personal preferences within that workspace. Both live at <workspace>/.jean2/ . The concept is simple. Shared knowledge that's useful for any agent working in that workspace. "We use pnpm." "The database is SQLite." "Don't touch the migrations folder." Whatever agent you bring in, coding specialist, reviewer, docs writer, they all get the same context

2026-07-09 原文 →
AI 资讯

Best Free Local AI Agent Setup for Mac Mini M4 16GB

OwO What's this? 💨✨ A tiny but mighty Mac mini M4 🍎⚡ with 16GB RAM, lots of local AI models 🤖🧠, and a BIG question… 🫣❓ -- an intro by Gemma 4. I have a Mac mini M4 with 16 GB of RAM, a pile of local models, and a very specific dream: Can I run a useful local AI agent that actually does things, but still feels nice to talk to? Not just "can it chat." Not just "can it write a haiku about Kubernetes." I mean: can it inspect the machine, patch files, search current information, use tools, avoid infinite loops, and still keep the cute assistant vibe? That last part turned out to matter more than I expected. My first round of testing was mostly about models. I compared gemma4:latest and ornith:9b inside OpenClaw, my local agent harness. Ornith won because it acted more like an agent. But after another day of testing, the story changed. The model still matters. Ornith is still the local model winner for me. But the harness matters just as much. And right now, my favorite setup is: Ornith + Hermes Agent The Original Question The original question was simple: Can a free local model behave like a useful agent on a small Mac? The machine is modest by AI workstation standards: Mac mini M4 16 GB RAM local model inference local agent harness Telegram or chat-style interface real files, real commands, real web/API checks This was never meant to be a scientific benchmark. No leaderboard. No synthetic score. No fake "reasoning" tasks. I tested practical things I actually care about: Find junk on disk and suggest what is safe to clean. Patch a Python script that fetches Bybit futures data. Search current web/API information and answer a crypto API question. My first conclusion was: Ornith beat Gemma. That is still true. But it was incomplete. The Thing I Missed: Gemma Had the Kawaii Soul ✨ I focused too much on tool use. That was fair, because agents need to act. But I missed something important: Gemma was much better at keeping the kawaii writing style ✨🌸. Gemma's messages were genu

2026-07-09 原文 →