osModa:基于NixOS与AI智能体的下一代服务器操作系统

news2026/5/12 20:22:27
1. 项目概述为AI智能体而生的操作系统如果你和我一样长期在服务器运维和AI应用部署的一线摸爬滚打那你一定对这样的场景深有体会凌晨三点手机突然响起刺耳的告警你睡眼惺忪地爬起来SSH连上服务器在一堆日志里试图定位那个导致服务宕机的元凶。或者当你雄心勃勃地构建了一个AI智能体却发现让它“活”起来需要一整套复杂的基础设施——密钥管理、健康监控、崩溃恢复、跨服务器通信——这些脏活累活最终都落回了你自己肩上。我们总在谈论AI的“智能”却很少思考它应该“生活”在什么样的环境里。现有的AI框架给了我们一个会思考的大脑却没给它一个可靠的家。这就是osModa试图回答的根本问题。它不是一个运行在Ubuntu或Debian之上的应用程序而是一个完整的、原子化的NixOS发行版其核心设计理念是服务器本身应该具备一个AI大脑。这个大脑能监控系统状态能自动修复问题能安全地部署变更甚至能向你解释它做了什么以及为什么这么做——而你不再需要手动SSH登录进去。当我第一次深入它的架构时那种“本该如此”的感觉非常强烈。它用10个用Rust编写的守护进程、91个结构化的工具构建了一个模块化的智能体运行时环境。你可以随时在Claude Code默认和OpenClaw等运行时之间热切换无需重启或重建系统。所有操作都被记录在防篡改的审计日志中每一次系统变更都通过NixOS的原子回滚机制受到保护服务器之间通过后量子加密的Mesh网络进行通信甚至系统还能通过观察智能体的行为自我学习并生成新的技能。简单来说osModa重新定义了“服务器操作系统”的边界。它不再是一个被动的、需要你不断输入命令的执行环境而是一个主动的、具备认知和行动能力的协作伙伴。对于独立开发者、小团队或是任何正在构建“AI劳动力”的人来说这意味着一场运维范式的根本转变。你的服务器从需要照看的“婴儿”变成了能分担工作的“同事”。2. 核心架构与设计哲学拆解2.1 为什么是NixOS原子性作为安全基石在深入那些炫酷的AI功能之前我们必须先理解osModa选择NixOS作为基石的深层原因。这绝非偶然而是整个系统安全模型的根基。传统Linux发行版如Ubuntu、CentOS的包管理和系统状态是“可变”的。当你apt install nginx时文件被分散写入/etc、/usr/bin、/lib等目录。升级或卸载可能产生残留配置修改可能无法追溯系统状态是一个随时间漂移的“黑箱”。回滚通常意味着复杂的备份恢复和祈祷。NixOS则采用了完全不同的哲学。它将整个系统配置包括每一个软件包、每一个服务配置、甚至内核参数声明在一个单一的、纯函数式的配置文件中通常是configuration.nix。当你运行nixos-rebuild switch时Nix会计算出一个全新的、完整的系统“世代”Generation将其构建在/nix/store的独立路径下然后通过切换系统Profile来原子性地激活它。旧的世代完好无损地保留着。这对AI拥有root权限意味着什么在传统系统上给AI root权限无异于玩火。一个错误的rm -rf或配置错误可能导致系统无法启动。但在NixOS上任何由AI通过SafeSwitch发起的配置变更都会产生一个新的系统世代。如果健康检查失败例如Nginx在变更后无法启动SafeSwitch会自动触发回滚到上一个已知良好的世代。这个过程是原子的、瞬间完成的。AI的“破坏力”被系统固有的回滚能力所约束。这从根本上改变了安全模型从“千方百计限制AI能做什么”往往防不胜防转变为“确保AI做的任何事情都是可审计、可逆转的”。osModa的审计日志会记录“AI在世代#105部署了Nginx”如果出了问题回滚到世代#104即可系统状态完全恢复。2.2 模块化运行时告别供应商锁定AI领域日新月异今天的主流模型明天可能就被超越。一个将自己与单一AI提供商深度绑定的操作系统是没有前途的。osModa的网关osmoda-gateway设计非常巧妙它本身是一个TypeScript服务但核心的“思考”能力由可插拔的运行时驱动提供。目前官方支持两个驱动Claude Code驱动默认选项。它本质上是一个封装会为每个会话启动Anthropic官方的claude命令行工具。这带来了巨大优势直接支持Claude Pro订阅的OAuth令牌认证性价比高也支持Console的API密钥按量付费。智能体通过MCP协议与91个工具交互。OpenClaw驱动一个较旧的、仅支持API密钥的引擎。它直接启动openclaw二进制文件。关键在于切换运行时不需要重装系统甚至不需要重启服务。所有智能体配置定义在/var/lib/osmoda/config/agents.json中。当你通过Web仪表板或API将一个智能体的运行时从claude-code改为openclaw并保存时网关服务会收到SIGHUP信号重新加载配置。正在进行的会话会继续在旧的驱动上完成而下一个新消息就会使用新的驱动。这实现了真正的运行时无感切换。更长远地看src/drivers/目录的结构意味着未来可以集成任何遵循类似模式的AI后端——比如本地的Llama.cpp、Groq的API或是未来的新模型。你只需要实现一个驱动处理会话管理和与osmoda-mcp-bridge的通信即可。这种设计保证了系统在快速演进的AI生态中的长期生命力。2.3 信任模型的三层隔离赋予AI强大能力的同时必须有一套清晰的边界。osModa设计了三个信任层级Tier 0系统核心osmoda-gateway agentd这就是AI智能体本身拥有完整的root级系统访问权限。它通过91个结构化工具与系统交互。这是信任的根基其行为通过审计日志、原子回滚和操作审批来约束而非权限限制。Tier 1已批准的应用运行在沙盒中只有明确声明的能力Capabilities。例如一个被批准的数据处理工具可能只能访问/var/data目录并且网络访问受限。Tier 2不受信任的工具最大程度的隔离。通常在一个无网络、文件系统访问极少的容器如bubblewrap中运行。用于执行来源未知或风险较高的代码。目前Tier 1和Tier 2的沙盒强制隔离仍在完善中但架构已经预留。关键在于低层级无法通过设计向高层级提权。一个Tier 2的工具不可能突然获得root权限这从机制上遏制了风险扩散。3. 核心组件深度解析与实操要点3.1 十大守护进程各司其职的神经系统osModa的十个Rust守护进程通过Unix域套接字通信构成了系统的“神经系统”。理解它们你就理解了整个系统如何运作。1. agentd系统桥梁与审计核心这是AI与操作系统对话的核心接口。它不直接执行Shell命令而是暴露了91个结构化的工具调用Tool Calls。例如当AI需要检查系统健康时它调用system_health工具该工具会收集CPU、内存、磁盘、负载等信息并返回结构化的JSON而不是一串需要解析的文本。这消除了传统AI操作中脆弱的Shell输出解析问题。实操心得agentd维护的哈希链式审计日志是其王牌功能。每一个改变系统状态的事件如文件写入、服务重启都会产生一条记录该记录的ID、时间戳、类型、执行者、载荷会和前一条记录的哈希值一起计算出一个新的SHA-256哈希并作为下一条记录的prev_hash。这意味着任何对历史日志的篡改都会导致后续所有哈希值不匹配使用agentctl verify-ledger命令可以快速验证日志的完整性。在生产环境中定期备份这个SQLite数据库并离线验证是极其重要的安全实践。2. osmoda-watch安全卫士与自动飞行员这是实现“自愈”的关键。它包含两大功能SafeSwitch安全切换这是所有部署操作的必经之路。当AI或用户发起一个系统变更如修改Nix配置时SafeSwitch会启动一个临时会话应用变更然后进入一个“观察期”。在此期间它会执行预定义的健康检查如服务端口是否监听、HTTP端点是否返回200。如果所有检查通过变更被“提交”系统进入新世代。如果任何检查失败变更被自动“回滚”。这实现了蓝绿部署的原子性。Watcher监视器你可以定义自动化的监视任务例如“监控Nginx服务如果宕机先尝试重启若重启失败则触发回滚并通知我”。这相当于设置了一个7x24小时在线的初级运维工程师。3. osmoda-teachd系统的学习与进化引擎这是osModa最令人兴奋的部分之一。它让系统从“自动化”走向“自治化”。它包含三个核心循环OBSERVE观察每30秒收集系统指标CPU、内存、进程数等。LEARN学习每5分钟分析观察数据检测模式。例如它可能发现“每当数据库连接数超过500CPU使用率会在3分钟后飙升”。SKILLGEN技能生成每6小时分析agentd记录的AI工具调用序列。如果它发现AI反复执行“检测高内存进程 - 检查日志 - 重启某服务”这一固定模式它会自动生成一个SKILL.md文件将这个模式定义为一个可复用的“技能”。之后系统可以自动或在征求同意后执行这个技能。4. osmoda-mesh服务器间的加密“悄悄话”多个osModa服务器之间可以建立点对点的加密通信网络。它使用Noise_XX协议进行初始密钥交换并集成了后量子加密算法ML-KEM-768以应对未来量子计算机的威胁。服务器间可以通过邀请码配对之后就能安全地交换消息、同步状态或协调操作如跨服务器滚动更新。所有通信端到端加密网关也无法解密。5. osmoda-voice完全本地的语音接口基于whisper.cpp和piper提供离线的语音转文本和文本转语音功能。这意味着你可以通过语音与你的服务器对话而音频数据无需离开你的机器彻底解决了隐私顾虑。6. osmoda-mcpdMCP服务器生命周期管理MCPModel Context Protocol是一种让AI模型安全、结构化地使用工具的标准协议。osmoda-mcpd负责管理所有MCP服务器包括那91个系统工具对应的服务器的启动、停止和重启。通过NixOS配置你可以轻松地添加第三方MCP服务器如数据库客户端、云服务API瞬间将其变为AI可用的能力。7. osmoda-egress出站流量守门员为运行在沙盒Tier 1/2中的工具提供HTTP代理服务并可以基于能力令牌Capability Token设置域名白名单。例如一个只被允许访问api.github.com的工具即使其代码试图连接malicious.com请求也会被egress代理拒绝。8. osmoda-keyd加密钱包守护进程可选为需要执行区块链交易的AI工作负载提供安全的密钥管理。支持以太坊和Solana链。私钥使用AES-256-GCM加密存储并且所有交易必须通过策略检查如每日限额、目标地址白名单。该守护进程运行在独立的网络命名空间中PrivateNetworktrue确保私钥永远不会意外泄漏到外部网络。9. osmoda-routines后台自动化引擎类似于超级cron。它不仅可以基于时间调度任务还可以基于事件如文件变化、HTTP webhook触发。AI或用户可以通过工具定义例行任务例如“每天凌晨2点执行日志清理和备份”或者“当/var/www目录有新的Git提交时自动触发SafeSwitch部署”。10. agentctl命令行控制工具虽然不是一个常驻守护进程但它是管理员与系统交互的重要工具特别是用于验证审计日志的完整性。3.2 91个结构化工具AI的“瑞士军刀”这91个工具是AI与物理世界交互的手和眼。它们被精心设计成类型安全、目的明确的操作。以下是一些关键分类的示例类别工具示例功能描述系统信息system_health,system_query,system_discover获取结构化系统状态发现服务、端口。文件操作file_read,file_write,directory_list安全的文件读写避免直接Shell注入。进程与服务service_status,journal_logs管理系统服务查询Journal日志。安全部署safe_switch_begin,safe_switch_commit,safe_switch_rollback发起、提交或回滚一个SafeSwitch会话。自动化watcher_add,routine_add,routine_trigger添加监视器或例行任务手动触发任务。学习与优化teach_knowledge_create,teach_optimize_suggest手动注入知识获取优化建议。审批流程approval_request,approval_approve对高风险操作发起审批批准请求。集群协调fleet_propose,fleet_vote在服务器集群中发起提案并进行投票。安全逃生safety_rollback,safety_panic最高优先级命令绕过AI直接强制回滚或停止所有服务。注意事项shell_exec工具虽然存在但内部包含了17个危险命令的模式拦截列表如rm -rf /、dd、mkfs等。这是最后一道防线但绝非主要安全手段。真正的安全依赖于结构化工具、审计和回滚。应鼓励AI尽可能使用如file_write这样的专用工具而非通用的shell_exec。3.3 19个系统技能开箱即用的智能模式技能是预定义的行为模式模板AI可以调用它们来完成复杂任务。这类似于给AI一本“运维手册”。例如自愈检测到服务失败 - 诊断根本原因 - 尝试修复 - 记录结果。安全加固持续运行CIS安全基准扫描并自动修复发现的中低风险项。自然语言配置用户说“为example.com启用带SSL的Nginx”技能会引导AI生成正确的NixOS配置并触发SafeSwitch部署。预测性资源基于历史数据预测磁盘、内存或CPU将在何时耗尽并提前告警或扩容。漂移检测发现那些未通过NixOS声明、而是手动修改的系统状态“配置漂移”并报告或修复。群体预测在进行重大基础设施变更前模拟6-8个专家角色的辩论进行多视角风险评估。甚至可以进行大规模50-200个角色的社会模拟预测变更在复杂系统中的可能影响。这些技能极大地降低了AI执行复杂运维任务的门槛使其行为更可预测、更符合最佳实践。4. 从零部署到深度使用完整实操指南4.1 环境准备与安装决策osModa的安装路径主要有两条选择取决于你的控制欲和风险承受能力。路径一NixOS Flake推荐用于可控环境这是最优雅、最符合NixOS哲学的方式。你需要在已有的NixOS系统上通过Flake引用osModa模块。编辑你的Nix配置文件如/etc/nixos/configuration.nix或flake.nix。# 在你的 flake.nix 的 inputs 部分添加 inputs.os-moda.url github:bolivian-peru/os-moda; inputs.os-moda.inputs.nixpkgs.follows nixpkgs; # 可选锁定nixpkgs版本一致 # 在你的系统配置中导入模块并启用服务 { inputs, ... }: { imports [ inputs.os-moda.nixosModules.default ]; services.osmoda.enable true; # 可选配置远程访问、通信渠道等 services.osmoda.remoteAccess.tailscale.enable true; services.osmoda.channels.telegram.enable true; }运行sudo nixos-rebuild switch。Nix会下载、编译所有组件并启动服务。这种方式让你完全掌控系统的构建过程易于回滚和版本管理。路径二一键安装脚本快速体验用于临时或测试服务器这是为Ubuntu/Debian等传统系统提供的快速入门方式但请注意这是一个破坏性操作。它会将你的现有系统转换为NixOS。curl -fsSL https://raw.githubusercontent.com/bolivian-peru/os-moda/main/scripts/install.sh | sudo bash重要警告仅在全新或可丢弃的服务器上使用此方法它会覆盖现有的系统。对于生产环境或有重要数据的机器请务必使用NixOS Flake方式或先在虚拟机中测试。安装时预配置你可以在安装命令中直接提供AI凭证和模型省去后续配置。# 使用Claude Pro订阅OAuth令牌性价比高 curl -fsSL https://raw.githubusercontent.com/bolivian-peru/os-moda/main/scripts/install.sh | sudo bash -s -- \ --runtime claude-code \ --default-model claude-3-5-sonnet-20241022 \ --credential My Claude Pro|anthropic|oauth|$(echo -n sk-ant-oat01-... | base64) # 使用Anthropic Console API密钥按量付费 curl -fsSL https://raw.githubusercontent.com/bolivian-peru/os-moda/main/scripts/install.sh | sudo bash -s -- \ --runtime claude-code \ --credential Anthropic Console|anthropic|api_key|$(echo -n sk-ant-api03-... | base64)4.2 初始配置与第一次对话安装完成后系统已经运行。你需要为AI“注入灵魂”——即配置API凭证。访问管理界面本地如果安装了Web UI通常可通过https://你的服务器IP:18789访问具体端口请查看服务配置。云端托管如果你使用spawn.os.moda服务部署会获得一个专属的仪表板URL。添加凭证在仪表板的Engine标签页下找到Credentials区域。点击添加填写Label: 一个易记的名称如“My Claude”。Provider: 选择anthropic。Type: 根据你的密钥类型选择oauth(Claude Pro) 或api_key(Console)。Secret: 粘贴你的密钥。系统会立即用Base64编码并加密存储。你可以点击Test按钮发送一个1个token的测试请求来验证连通性。配置智能体在Agents区域配置你的智能体例如名为osmoda的默认Web智能体。Runtime: 选择claude-code。Credential: 选择你刚添加的凭证。Model: 选择模型如claude-3-5-sonnet-20241022均衡或claude-3-opus-20240229更强更贵。Channel: 选择web。开始对话切换到Chat标签页。现在你可以像与一个资深运维专家对话一样向你的服务器提问了。尝试第一个命令“检查系统健康状况”。AI会调用system_health工具并返回一个结构化的JSON摘要。4.3 实战演练让AI部署一个Web服务让我们完成一个真实的任务体验osModa的工作流。假设我们要部署一个简单的Node.js应用监听3000端口并用Nginx做反向代理和SSL。对话示例你“我想部署一个Node.js应用代码在/home/user/myapp目录它运行在3000端口。请为它配置Nginx反向代理并设置一个域名app.mydomain.com。暂时不需要SSL证书。”AI的思考与行动理解意图AI会解析你的需求将其分解为几个步骤检查应用目录、确保Node.js环境、配置系统服务、配置Nginx。安全检查与审批修改系统服务systemd和Nginx配置属于高风险操作。AI可能会先发起一个approval_request在仪表板中等待你的批准。你批准后它才会继续。启动SafeSwitchAI调用safe_switch_begin开始一个部署会话并设置一个TTL生存时间和健康检查规则例如检查3000端口和80端口是否可访问。生成NixOS配置AI会使用file_write工具在/etc/nixos/configuration.nix或一个独立的模块文件中写入类似下面的配置# 启用Nginx services.nginx.enable true; services.nginx.virtualHosts.app.mydomain.com { locations./ { proxyPass http://localhost:3000; proxyWebsockets true; }; }; # 定义你的Node.js应用为系统服务 systemd.services.my-node-app { wantedBy [ multi-user.target ]; after [ network.target ]; serviceConfig { ExecStart ${pkgs.nodejs}/bin/node /home/user/myapp/index.js; WorkingDirectory /home/user/myapp; Restart always; User myappuser; }; }; users.users.myappuser { isSystemUser true; group myappuser; };应用配置AI调用safe_switch_commit假设健康检查通过触发nixos-rebuild switch。NixOS会原子性地切换到新世代。验证与报告AI会调用system_health或safe_switch_status来确认服务已正常运行然后向你汇报结果并在审计日志中生成完整的操作记录。整个过程中你无需触碰命令行。如果Nginx配置有误导致服务启动失败SafeSwitch的健康检查会失败并自动触发回滚到上一个稳定世代。你早上醒来只会看到一条消息“已成功部署Node.js应用到app.mydomain.com”。或者“部署失败已自动回滚。失败原因是Nginx配置第X行有语法错误。”4.4 高级功能配置远程访问与通信集成无SSH远程访问你不再需要打开SSH端口或配置复杂的VPN。Cloudflare Tunnel在NixOS配置中启用services.osmoda.remoteAccess.cloudflare.enable true;osModa会自动创建一个临时的Cloudflare Tunnel为你生成一个安全的、可公开访问的URL。无需Cloudflare账户。Tailscale如果你更喜欢VPN启用Tailscale并配置认证密钥文件服务器就会加入你的Tailscale网络。多通道通信除了Web界面你还可以通过其他方式与服务器交互。Telegram Bot配置Bot Token后你可以直接在Telegram里与你的服务器AI对话。这对于移动办公或快速查询特别方便。services.osmoda.channels.telegram.enable true; services.osmoda.channels.telegram.botTokenFile /var/lib/osmoda/secrets/telegram-bot-token;API访问所有守护进程都通过Unix Socket或HTTP端口暴露了RESTful API你可以用curl或任何HTTP客户端编程交互。5. 生产环境考量、故障排查与经验分享5.1 安全模型再审视与权限边界尽管osModa设计了多层防护但将root权限交给AI始终需要清醒的认识。以下是关键的安全边界原子回滚是最后防线它能救你于错误的配置变更但救不了你于数据丢失。如果AI执行了rm -rf /home/important-data回滚系统配置无法恢复这些数据。因此关键数据必须另有备份策略。审计日志是调查依据所有操作都被记录。定期审查/var/lib/osmoda/state/agentd.db审计数据库或使用agentctl工具查看日志是了解AI行为、排查异常的必要习惯。审批流程是关键控制点对于file_write到系统目录、service_restart核心服务、shell_exec等高风险操作务必启用审批流程。不要让AI在无人值守时拥有“自动批准”的权限。网络隔离考虑将osModa服务器部署在内网通过跳板机访问。或者严格使用其自带的egress代理和防火墙规则限制AI可能发起的出站连接。5.2 性能与资源监控osModa的守护进程本身是轻量级的Rust程序但AI模型的推理尤其是Claude Opus是资源消耗大户。内存确保服务器有足够内存建议4GB以上。Claude Code运行时和模型会占用可观的内存。API成本如果使用按token付费的API如Anthropic Console需密切关注用量。可以在AI的上下文中设置预算提醒或使用osmoda-routines定期调用API查询用量。监控osModa自身使用AI自身的system_health工具来监控它所在的服务器。可以设置一个watcher当osModa相关服务如agentd异常时尝试重启或通知你。5.3 常见问题与排查技巧以下是我在测试和使用中遇到的一些典型问题及解决方法问题现象可能原因排查步骤AI无响应或返回错误1. API凭证无效或过期。2. 网络问题导致无法连接AI服务商。3.osmoda-gateway服务异常。1. 在仪表板Credentials页面点击Test验证凭证。2. 检查服务器网络curl -v https://api.anthropic.com。3. 检查服务状态sudo systemctl status osmoda-gateway查看日志sudo journalctl -u osmoda-gateway -f。SafeSwitch部署失败自动回滚1. 生成的NixOS配置有语法错误。2. 健康检查条件太严格或错误。3. 依赖的服务未就绪。1. 查看safe_switch会话的详细日志sudo journalctl -u osmoda-watch。2. 检查AI生成的Nix配置内容是否正确。3. 手动执行健康检查命令确认其本身能成功。审计日志验证失败数据库文件损坏或曾被人为修改。1. 立即停止服务备份当前数据库。2. 从最近的备份恢复审计数据库。3. 检查系统完整性排查是否被入侵。这是一个严重警报。Mesh网络无法连接1. 防火墙阻止了18800端口。2. 邀请码过期或错误。3. 服务器时间不同步。1. 检查双方服务器的防火墙规则NixOS配置中的networking.firewall。2. 重新生成并发送邀请码。3. 使用chronyd或systemd-timesyncd确保时间同步。teachd没有自动生成技能1. 观察数据不足。2. SKILLGEN循环未运行或出错。3. 技能检测置信度阈值过高。1. 让系统运行更长时间执行更多样化的操作。2. 检查teachd服务状态和日志sudo journalctl -u osmoda-teachd。3. 可以尝试手动调用teach_skill_detect工具触发检测。5.4 备份与灾难恢复策略osModa的核心状态存储在几个位置备份它们至关重要NixOS系统世代/nix/var/nix/profiles/system-*-link指向各个世代。定期清理旧世代但务必保留最近几个稳定的。osModa状态目录通常是/var/lib/osmoda/state/。这里包含审计数据库、内存存储、钱包数据如果启用等。必须定期备份。NixOS配置文件你的configuration.nix和hardware-configuration.nix等。这些应该用版本控制系统如Git管理。加密凭证/var/lib/osmoda/config/credentials.json.enc。备份此文件以及用于加密的密钥如果由你管理。恢复流程在新机器上安装NixOS和osModa后1) 恢复你的NixOS配置文件2) 恢复/var/lib/osmoda/state/目录3) 恢复加密凭证文件。然后运行nixos-rebuild switch你的AI运维伙伴就应该“复活”了并拥有全部记忆和历史。osModa代表了一种未来运维的愿景基础设施即代码IaC的终极形态可能是“基础设施即对话”。它降低了高级自动化的门槛将重复性的、模式化的运维工作委托给一个永不疲倦、持续学习的智能体。当然它仍处于公开测试阶段并不适合所有场景尤其是对稳定性要求极高的核心生产环境。但对于个人项目、初创公司、或作为现有运维体系的智能辅助层它已经展现出惊人的潜力。最重要的不是替代人类而是将人类从繁琐的重复劳动中解放出来去处理更复杂、更需要创造力的挑战。开始尝试与你的服务器对话吧你会发现管理基础设施可以换一种更自然的方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2607108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…