MongoDB Agent Skills:基于MCP协议构建AI与数据库的安全交互桥梁

news2026/4/27 8:51:31
1. 项目概述当AI智能体学会“读写”数据库如果你正在尝试构建一个能真正理解并操作数据的AI智能体比如让它帮你分析销售趋势、自动整理用户反馈或者从海量文档中提取关键信息那么你很可能已经遇到了一个核心瓶颈如何让AI安全、高效地访问和操作你的数据库这正是MongoDB Agent Skills项目要解决的痛点。简单来说这是一个由MongoDB官方推出的“技能包”它让Claude、Cursor、Gemini等主流AI助手和开发工具能够通过一个名为MCPModel Context Protocol的标准协议直接与MongoDB数据库进行对话。你可以把它想象成给AI装上了一双能“读写”数据库的手和一双能“看懂”数据结构的眼睛。过去你需要写一堆API接口或者复杂的提示词来教AI处理数据现在通过配置好的技能AI能直接理解你的数据库结构执行查询、插入、聚合分析等操作并把结果以自然语言或结构化数据的形式反馈给你。这个项目主要面向两类人一是正在探索AI原生应用AI Native Application的开发者尤其是那些希望将AI深度集成到数据处理流程中的团队二是数据分析师、产品经理等非技术角色他们可以通过更自然的对话方式让AI助手代为完成复杂的数据查询和初步分析大幅降低数据获取的门槛。接下来我将结合自己搭建和调试这类AI-数据库桥梁的经验为你拆解从安装配置到实战避坑的完整路径。2. 核心思路与架构选型解析2.1 为什么是MCP协议而不是直接调用API在深入安装步骤之前理解背后的技术选型至关重要。你可能会问为什么非要通过MCPModel Context Protocol这个中间层直接让AI模型调用MongoDB的驱动或者REST API不行吗这里涉及到安全性、标准化和开发效率三个核心考量。首先安全性是首要红线。让AI模型直接持有数据库连接字符串或API密钥是极其危险的行为。一次错误的提示词泄露或者模型在复杂推理中意外输出了敏感信息都可能导致数据库完全暴露。MCP协议充当了一个安全的“代理”或“网关”。AI模型如Claude并不直接连接数据库而是向一个独立的MCP Server在这个项目中是mongodb-mcp-server发送标准化请求。这个Server负责实际的数据连接、查询执行和结果返回。这意味着数据库凭证只存在于MCP Server的配置中与AI模型运行环境完全隔离从根本上切断了凭证泄露的风险路径。其次标准化带来了互操作性。MCP是由Anthropic主导推动的一个开放协议旨在为AI模型提供一个统一的方式来访问工具、数据和计算资源。选择基于MCP构建意味着MongoDB Agent Skills不仅能用于Claude也能无缝适配任何支持MCP协议的客户端比如Cursor编辑器、Gemini CLI甚至是未来新出现的AI平台。这避免了为每个AI平台单独开发适配器的重复劳动对于生态建设而言是更优的选择。从开发者角度看你只需要维护一套MCP Server的配置就能让多个AI工具获得相同的数据访问能力。最后它抽象了复杂性提升了开发体验。MCP协议定义了一套清晰的资源Resources和工具Tools模型。MongoDB MCP Server将数据库的集合Collections、查询能力如find,aggregate包装成标准的“工具”。对于AI模型来说它不需要理解MongoDB查询语法的细节只需要知道“有一个工具可以执行查询”然后通过自然语言描述意图由MCP Server将其转换为正确的MongoDB查询语句。这大大降低了编写提示词Prompt的复杂度让开发者可以更专注于定义任务本身而不是繁琐的查询语句拼接。2.2 技能Skills与MCP服务器的分工与协作官方文档里提到了两个核心概念Agent Skills和MCP Server。理解它们的分工能帮助你在后续配置和故障排查时思路更清晰。Agent Skills本质上是给AI客户端如Claude Desktop App使用的“说明书”或“插件包”。它主要包含两部分信息一是告诉客户端“去哪里找MCP Server”即连接信息二是一些预定义的提示词模板或上下文用于引导AI模型更好地利用MongoDB的能力。当你通过npx skills add mongodb/agent-skills或从市场安装插件时主要就是在配置这部分。它让AI知道“哦用户给我装了一个叫MongoDB的技能我知道该怎么调用它背后的服务了”。而MongoDB MCP Server(mongodb-mcp-server) 才是真正的“实干家”。它是一个长期运行的后台服务进程独立于你的AI应用。它的职责包括管理与MongoDB数据库的实际连接处理认证、维持连接池、管理超时。协议转换接收来自AI客户端通过MCP协议发送的标准化请求通常是JSON-RPC格式将其翻译成具体的MongoDB驱动调用。执行与返回执行查询、插入等操作并将结果封装成MCP协议规定的格式返回给客户端。暴露数据模式Schema向客户端动态提供数据库集合的结构信息帮助AI模型理解有哪些字段、什么类型从而生成更准确的查询。这种分离的架构好处明显MCP Server可以单独部署、升级和监控不影响AI客户端同时一个MCP Server可以同时为多个AI客户端提供服务。在实际部署中我通常会将MCP Server部署在一台内网服务器或安全的云环境而AI客户端如开发者的Cursor则通过网络连接到它。3. 多平台安装配置实战与细节要点官方文档给出了多种安装路径但不同方式背后的原理和适合场景不同。我会为你拆解每种方法的关键步骤和隐藏细节。3.1 通过官方市场安装Claude, Cursor最快捷的体验路径对于Claude和Cursor用户从它们的应用市场安装是最直接的方式。以Claude Desktop为例在聊天窗口输入/plugin install mongodb后会发生以下几件事插件元数据获取Claude客户端会从它的插件市场拉取mongodb插件的描述信息。这个信息里包含了MCP Server的配置模板和必要的技能定义。触发MCP Server安装引导安装过程中最关键的一步是它会提示你运行npx mongodb-mcp-server1 setup。这个命令的作用是在本地初始化并配置MCP Server。它会在你的用户目录下如~/.mongodb-mcp-server创建配置文件并引导你输入MongoDB的连接字符串。凭证配置的安全考量在输入连接字符串时强烈建议使用MongoDB Atlas提供的“SRV连接字符串”它通常以mongodbsrv://开头。这种连接方式自动处理了副本集和负载均衡更可靠。更重要的是务必创建一个专属的、权限最小化的数据库用户。不要使用拥有root或dbAdmin权限的账户。理想情况下为AI代理创建一个新用户只授予它需要读写的特定数据库的readWrite角色。这是实践“最小权限原则”的关键。完成与验证按照引导完成配置后运行/reload-plugins。此时Claude客户端会启动本地的MongoDB MCP Server进程并与之建立连接。你可以在Claude中尝试问“列出我数据库中所有集合的名字”如果配置成功Claude会调用MCP工具并返回结果。注意很多人在这一步失败是因为网络策略问题。MongoDB Atlas默认只允许特定IP访问。你需要确保运行Claude的机器的公网IP被添加到Atlas项目的IP访问白名单中。如果是本地开发可以暂时设置为“允许所有IP”0.0.0.0/0但上线前务必修正。Cursor IDE的安装过程类似通过/add-plugin mongodb命令。Cursor的优势在于它深度集成了AI到编码环境安装此插件后你可以在编写Node.js或Python代码时直接让AI助手查询数据库来获取字段样例或数据结构辅助开发体验非常流畅。3.2 通过Vercel Skills目录与CLI安装面向项目与团队的标准流程https://skills.sh/提供的skillsCLI工具代表了一种更工程化、可复现的安装方式特别适合团队协作或需要将AI技能作为项目依赖管理的场景。它的核心思想是声明式配置。你可以在项目的根目录下创建一个skills.json或skills.toml文件里面列出项目所需的所有技能及其来源。然后通过CLI一键安装。详细操作步骤与原理初始化技能配置在项目根目录运行npx skills init。这会创建一个skills.json文件。你可以手动编辑它添加mongodb/agent-skills作为依赖。执行添加命令运行npx skills add mongodb/agent-skills。这个命令会从GitHub仓库拉取技能包到本地缓存通常在~/.skills目录下。解析技能包中的定义识别出它依赖一个名为mongodb-mcp-server的MCP Server。提示你运行npx mongodb-mcp-server1 setup来完成服务器端的配置。这一步与市场安装是相同的因为核心的MCP Server是同一个。技能文件的链接skillsCLI 更关键的一步是将技能包中的上下文文件通常是skills/目录下的.txt或.md文件软链接symlink到你AI助手的上下文目录。例如对于Claude可能是~/Library/Application Support/Claude/claude_desktop_config/skills/。这样AI助手在启动时就能自动加载这些预定义的提示词和工具说明无需每次手动配置。这种方式的优势在于版本可控技能包像npm包一样有版本号可以锁定特定版本确保团队所有成员使用相同的AI能力。一键恢复新成员加入项目只需运行npx skills install就能同步所有AI技能配置。组合技能你可以轻松组合多个技能比如同时安装MongoDB技能和文件系统操作技能让AI助手能力更强。3.3 本地从仓库安装深度定制与开发的必经之路对于想要深入研究技能内部机制或需要进行二次开发的开发者从GitHub仓库直接克隆是最佳选择。git clone https://github.com/mongodb/agent-skills.git cd agent-skills克隆后你会看到项目结构大致如下agent-skills/ ├── skills/ # 核心技能定义文件 │ ├── claude/ # Claude专用的技能上下文 │ ├── cursor/ # Cursor专用的技能上下文 │ └── ... # 其他平台 ├── server/ # MCP服务器的相关代码可能是指向另一个repo的引用或示例 └── README.md关键操作在于“技能文件的部署”文档中说“Copy theskills/directory to the location where your coding agent reads its skills”。这个路径因平台而异Claude Desktop(macOS):~/Library/Application Support/Claude/claude_desktop_config/skills/Cursor: 通常在其设置或插件管理界面有指定“上下文文件”目录。其他支持MCP的客户端需要查阅其文档找到MCP配置或技能加载的路径。你需要做的是将skills/claude/下的所有文件或整个skills/目录复制或链接到上述对应路径。这样Claude启动时就会加载这些自定义的技能描述。为什么需要这一步因为这些.txt或.md文件里包含了精心设计的系统提示词System Prompt和工具描述。它们教会AI模型如何更智能地使用MongoDB工具。例如里面可能写道“当用户想查找数据时你可以使用query_documents工具并尝试让用户提供集合名称和查询条件。” 这比让模型凭空猜测要高效准确得多。完成文件复制后同样需要运行npx mongodb-mcp-server1 setup来配置和启动MCP服务器。这种方式给了你完全的控制权你可以修改skills/目录下的文件定制AI的行为比如增加针对你业务数据库的特定查询范例。4. MongoDB MCP Server 配置详解与安全实践无论通过哪种方式安装最终都会落到配置mongodb-mcp-server这个核心组件上。npx mongodb-mcp-server1 setup是一个交互式引导命令它会帮你生成配置文件。但理解配置文件的细节对于调试和生产部署至关重要。4.1 核心配置项解读运行setup后配置文件通常生成在~/.mongodb-mcp-server/config.json。一个典型的配置如下{ mcpServers: { mongodb: { command: node, args: [ /path/to/global/npm/node_modules/mongodb-mcp-server/build/index.js ], env: { MONGODB_URI: mongodbsrv://username:passwordcluster0.mongodb.net/myDatabase?retryWritestruewmajority, ALLOWED_DATABASES: myDatabase,analytics, QUERY_TIMEOUT_MS: 30000 } } } }MONGODB_URI: 这是最重要的配置。格式必须正确。如果你使用Atlas务必从控制台复制完整的SRV连接串。安全提示配置文件是明文存储的。虽然它在你的本地用户目录但仍建议使用环境变量来传递密码而不是直接写在配置里。可以将配置改为MONGODB_URI: ${MONGODB_URI_FROM_ENV}然后在启动前设置环境变量。或者利用MongoDB Atlas的“短期凭证”或“IAM角色”等更安全的认证方式如果MCP Server支持。ALLOWED_DATABASES:这是一个关键的安全和权限控制项。它限定了MCP Server可以访问的数据库列表用逗号分隔。即使连接字符串中的用户有权限访问其他库这个设置也会在协议层进行过滤。务必根据AI代理的实际需要将其设置为最小集合。例如如果AI只处理user_feedback库的数据就只填这个避免AI因提示词误导而意外查询或修改生产核心库。QUERY_TIMEOUT_MS: 查询超时时间。对于聚合查询或全表扫描如果AI请求了一个过于宽泛的查询这个超时设置可以防止请求长时间挂起耗尽资源。默认30秒对于大多数简单查询足够对于复杂分析场景可以酌情增加。4.2 生产环境部署考量在本地开发时MCP Server通常作为前台进程随AI客户端启动。但在生产环境或团队共享环境中你可能需要将其作为后台服务如systemd服务或Docker容器独立部署。Docker部署示例# 使用官方Node镜像 FROM node:18-alpine # 安装 mongodb-mcp-server RUN npm install -g mongodb-mcp-server1 # 创建非root用户运行 RUN addgroup -g 1001 -S mcpuser adduser -u 1001 -S mcpuser -G mcpuser USER mcpuser # 通过环境变量注入配置更安全 ENV MONGODB_URImongodbsrv://... ENV ALLOWED_DATABASESappDB EXPOSE 3000 # MCP Server默认端口按需映射 CMD [mongodb-mcp-server, start]然后在AI客户端的配置中不再使用本地命令启动而是配置为通过网络Socket连接mcpServers: { mongodb: { url: tcp://your-mcp-server-host:3000 } }这种方式将MCP Server部署在受控的内网环境所有AI客户端通过网络连接实现了集中化的管理和安全控制。5. 实战应用场景与提示词工程技巧安装配置只是开始真正发挥价值在于如何用好它。下面结合几个典型场景分享我的实操心得和提示词技巧。5.1 场景一让AI成为你的实时数据探查助手假设你是一个产品经理想快速了解过去一周用户的活跃情况。传统的做法是找工程师写查询或者自己挣扎于SQL/MongoDB语法。现在你可以直接问Claude“连接到我们的‘analytics’数据库查看‘user_sessions’集合统计过去7天按‘login_date’字段每天的独立用户数并按日期倒序排列只给我前10条结果。”AI背后的思考与操作链理解意图AI识别出这是一个数据查询请求涉及“连接数据库”、“指定集合”、“时间过滤”、“聚合统计”、“排序”和“限制结果”。调用工具AI会使用MCP Server提供的工具可能是aggregate_documents。它会构建一个类似以下的MongoDB聚合管道虽然你看不到这个细节[ { $match: { login_date: { $gte: ISODate(2024-05-20) } } }, { $group: { _id: $login_date, uniqueUsers: { $addToSet: $user_id } } }, { $project: { date: $_id, count: { $size: $uniqueUsers } } }, { $sort: { date: -1 } }, { $limit: 10 } ]返回结果MCP Server执行查询将结果返回给AIAI再组织成自然语言或表格形式回复你。提示词技巧明确集合和字段名尽可能提供准确的集合名称和字段名。如果不确定可以先让AI“列出analytics数据库中的所有集合及其前3个文档的样例”来探查数据结构。指定时间范围使用“过去7天”、“上个月”、“2024年1月1日至今”等明确表述。AI会尝试将其转换为$gte等查询操作符。控制输出量务必加上“只显示前10条”、“总结成3个要点”等限制避免AI返回海量数据导致响应缓慢或上下文溢出。5.2 场景二辅助开发生成测试数据或查询代码作为开发者在编写一个用户注册功能时需要测试MongoDB插入操作。你可以让Cursor中的AI助手帮忙“我想向‘users’集合插入一条测试用户数据包含‘email’唯一、‘name’、‘createdAt’字段。请生成对应的Node.js使用Mongoose和Python使用PyMongo的插入代码片段。”AI的操作它会利用MCP技能首先可能去查询‘users’集合的现有文档结构了解字段类型。然后结合它的编程知识生成符合语法的代码。它甚至能提醒你“注意在Mongoose中需要先定义Schema或者使用strict: false选项在PyMongo中createdAt字段建议使用datetime.utcnow()。”实操心得结合上下文在Cursor中如果你已经打开了相关的user.model.js文件AI的代码生成会更加精准因为它能参考你已有的Schema定义。请求验证可以要求AI先执行一次“无害”的查询来验证连接和数据结构比如“先查一下users集合里现在有多少条记录”确认无误后再进行插入操作。5.3 场景三基于数据的分析与报告生成这是最能体现价值的地方。你可以让AI进行多步骤、复杂的分析。“分析‘orders’集合和‘products’集合。首先计算过去一个月每个产品的总销售额需要关联‘order_items’数组和‘products’表。然后找出销售额Top 5的产品类别。最后用一段话总结销售趋势。”这个请求挑战性很大它涉及多集合关联$lookup、嵌套数组展开$unwind、分组聚合$group和排序。一个训练良好的AI结合MCP提供的数据库模式信息有可能构建出正确的聚合管道。即使不能一步到位你也可以分步引导“先帮我写一个查询关联orders和products表展开order_items。”“在上一个查询基础上按product_id分组计算销售额总和。”“最后关联产品类别表按类别汇总销售额并排序。”关键点AI的强大之处在于它能将你的自然语言意图分解为一系列可执行的数据库操作。即使它某一步的查询语法有误你也可以根据错误信息进行修正这是一个交互式学习的过程。6. 常见问题、故障排查与性能优化在实际使用中你肯定会遇到各种问题。下面是我踩过坑后总结的排查清单。6.1 连接与认证失败问题现象可能原因排查步骤与解决方案AI提示“无法连接到MongoDB”或“认证失败”。1.连接字符串错误密码包含特殊字符未转义或URI格式不对。2.IP未在白名单运行AI客户端的机器IP不在Atlas白名单中。3.网络问题公司防火墙或代理阻挡了到MongoDB Atlas端口27017的连接。4.用户权限不足指定的用户没有目标数据库的读写权限。1.检查URI使用mongosh或Compass用同一URI连接测试快速验证。2.检查Atlas IP白名单登录Atlas控制台确保0.0.0.0/0临时或你的公网IP已添加。3.网络诊断尝试telnet cluster0.mongodb.net 27017或SRV指向的端口看是否通。4.验证权限用该用户登录手动执行一个简单的find()操作看是否成功。MCP Server进程启动后立刻退出。1.Node.js版本不兼容。2.配置文件语法错误。3.环境变量缺失。1.查看日志运行mongodb-mcp-server start --verbose查看详细错误输出。2.检查Node版本要求Node.js 18运行node -v确认。3.验证配置文件使用JSON验证工具检查config.json格式。6.2 查询执行错误或结果不符预期问题现象可能原因排查步骤与解决方案AI返回“查询执行错误”并附有MongoDB错误信息。1.查询语法AI生成有误AI误解了你的意图生成了错误的查询语句。2.字段名或类型不匹配你描述的字段名与实际集合中的字段名不一致或尝试对字符串字段进行数值比较。1.简化问题让AI先执行一个最简单的查询如“返回orders集合的第一条记录”确认基础连接和权限没问题。2.探查数据结构让AI“描述一下orders集合的文档结构”获取准确的字段名和类型。3.分步引导将复杂查询拆解成多个简单步骤逐步构建。查询超时Timeout。1.查询没有索引AI生成了一个需要全表扫描的查询数据量太大。2.聚合管道过于复杂。3.网络延迟高。1.优化查询在提示词中明确限制结果数量$limit。2.增加超时适当增加配置文件中的QUERY_TIMEOUT_MS值如改为60000。3.考虑索引对于高频查询的字段在数据库端建立索引。可以告诉AI“请建议一个优化此查询的索引”。6.3 性能优化与安全加固建议为AI查询创建只读副本如果AI主要是数据分析角色强烈建议在MongoDB Atlas中配置一个只读副本节点让MCP Server连接这个副本。这样可以将分析查询的负载与主业务隔离避免影响线上事务性能。实施查询配额与限流在生产环境需要考虑恶意或错误的提示词导致大量查询。可以在MCP Server层面如果支持或通过数据库用户权限设置每分钟最大查询次数、最大返回文档数等限制。审计与日志确保MongoDB Atlas的审计日志是开启的。同时可以配置MCP Server将接收到的所有查询请求和执行的语句记录到日志文件中便于事后审查和优化。定期轮换凭证像对待任何应用凭证一样定期更新MongoDB数据库用户的密码。提示词沙盒化在提供给AI的上下文技能描述中可以加入一些安全约束例如“除非用户明确要求否则默认查询必须包含{ isTest: { $ne: true } }条件以排除测试数据。” 或者 “禁止执行db.dropDatabase()或db.collection.drop()等危险操作。” 这需要在自定义技能文件中实现。7. 进阶自定义技能与扩展可能性当你熟悉了基本使用后可能会不满足于官方提供的通用技能。这时你可以探索自定义技能让AI更贴合你的业务。自定义技能的核心是修改skills/目录下的上下文文件。这些文件本质上是“系统提示词”的扩展。例如你可以在skills/claude/mongodb_context.md文件中添加## 关于订单数据的特别说明 - 我们公司的主要业务是电商订单状态有pending, paid, shipped, completed, cancelled。 - 查询销售额时请只考虑状态为 completed 的订单。 - 用户表users中的 region 字段代表用户所在地区包括north, south, east, west。这样当Claude处理与订单和用户相关的问题时就会自带这些业务知识生成更准确的查询。更进一步你可以基于MCP协议开发自己的自定义工具Tools。MongoDB MCP Server提供的是通用的CRUD工具。如果你有更复杂的业务逻辑比如“计算用户生命周期价值LTV”这个计算涉及多个集合和复杂公式你可以编写一个自定义的MCP Server暴露一个名为calculate_user_ltv的工具。AI客户端通过技能配置连接到你的自定义Server就可以调用这个专用工具了。这为将企业内部API、微服务暴露给AI打开了大门。最后一个重要的体会是AI代理不是魔法它的能力上限取决于你提供的数据结构和上下文质量。花时间优化你的数据库模式为关键字段添加清晰的注释甚至维护一个数据字典文档并让AI学习这些“前戏”能极大提升后续人机协作的效率和准确性。将MongoDB Agent Skills集成到你的工作流中不是一个一蹴而就的开关而是一个逐步磨合、相互适应的过程但一旦跑顺它带来的效率提升将是革命性的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2558955.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;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…