基于MCP协议构建企业AI数据安全访问中间件:companyscope-mcp实践

news2026/5/12 4:29:03
1. 项目概述一个连接企业与AI的“翻译官”最近在折腾AI应用开发特别是想用Claude、ChatGPT这些大模型来处理公司内部数据时遇到了一个普遍痛点模型能力再强它也是个“外人”没法直接访问你公司的数据库、CRM系统或者内部文档库。你总不能把敏感的客户数据、财务信息一股脑儿全喂给模型吧这时候就需要一个安全、可控的“中间件”来充当AI模型和私有数据源之间的桥梁。这就是我最近深度研究并实践的项目——Stewyboy1990/companyscope-mcp。简单来说companysco-mcp是一个实现了Model Context Protocol (MCP)协议的服务器。你可以把它理解为一个“适配器”或“翻译官”。它的核心任务是让支持MCP协议的AI助手比如Claude Desktop能够安全、合规地查询和操作你指定的企业数据源例如公司内部的数据库、API接口甚至是本地文件系统。项目名里的“companyscope”直译就是“公司范围”清晰地表明了它的应用场景将AI的能力限定在你授权的、企业内部的数据边界之内。这个项目解决的核心问题正是当前企业级AI应用落地的关键障碍数据安全与可控访问。它没有尝试去重新发明轮子比如自己搞一套复杂的Agent框架而是巧妙地利用了Anthropic推出的MCP这一开放标准。MCP定义了一套AI工具与数据源之间通用的“对话语言”companyscope-mcp则负责将这套“语言”翻译成你自家数据源能听懂的“方言”比如SQL查询、REST API调用。对于开发者而言这意味着你无需为每个AI应用重复编写数据连接和权限校验代码只需配置好这个MCP服务器就能让多个AI助手获得一致、安全的数据访问能力。2. 核心架构与设计思路拆解要理解companyscope-mcp的价值得先弄明白MCP是什么以及这个项目是如何在此基础上构建的。2.1 Model Context Protocol (MCP) 精要解析MCP不是某个具体的软件而是一个协议规范你可以类比为HTTP协议之于网页浏览。它定义了AI应用客户端与数据/工具提供方服务器之间如何进行标准化通信。其核心思想是**“资源Resources”和“工具Tools”的抽象**。资源Resources代表静态或相对静态的数据比如一份项目报告、一个数据库表的结构定义Schema、一组API文档。AI客户端可以“读取”这些资源来获取背景信息。工具Tools代表可执行的操作比如“查询数据库”、“搜索文档”、“创建工单”。AI客户端可以“调用”这些工具并传入参数服务器执行后返回结果。companyscope-mcp就是一个MCP服务器实现。它内部封装了对特定数据源比如MySQL、PostgreSQL、本地文件目录的访问逻辑并将这些能力通过MCP协议暴露为标准的“资源”和“工具”。当Claude Desktop这类MCP客户端连接上它时就能自动发现这些能力并在对话中根据需要调用。2.2companyscope-mcp的设计哲学这个项目的设计体现了几个关键考量安全性优先所有数据连接配置如数据库密码、API密钥都留在MCP服务器端绝不会泄露给AI客户端。AI客户端拿到的只是工具调用的权限和结果从根本上杜绝了敏感信息暴露给第三方模型的风险。服务器部署在你完全掌控的环境内网、私有云数据不出域。协议标准化通过遵循MCP项目获得了与生态的天然兼容性。今天你可以用Claude Desktop连接它明天换一个同样支持MCP的AI工作台如Cline、Windsurf也能无缝使用。这避免了供应商锁定保护了投资。可扩展性项目的代码结构清晰地分离了MCP协议层和数据源适配层。如果你想增加对MongoDB、Elasticsearch或某个内部HTTP服务的支持理论上只需要实现对应的数据源驱动模块并将其注册到MCP服务器中即可核心框架无需大动。配置驱动它强调通过配置文件如config.yaml来声明数据源和暴露的工具而非硬编码。这降低了部署和管理的复杂度运维人员可以通过修改配置文件来调整AI可访问的数据范围无需重新编译代码。注意MCP协议本身仍在快速发展中companyscope-mcp作为社区项目其功能与官方MCP规范的跟进程度需要关注。在用于生产环境前务必测试其稳定性和与你所用AI客户端的兼容性。2.3 典型应用场景与用户画像这个项目主要服务于两类角色企业内部开发者/AI应用工程师他们需要快速构建安全可靠的AI数据助手原型或生产应用。使用companyscope-mcp可以省去从零搭建数据桥梁的麻烦专注于业务逻辑和提示词工程。数据分析师/业务人员他们并非专业程序员但希望用自然语言直接查询数据库、分析报表。通过配置好的companyscope-mcp和Claude Desktop他们可以用对话的方式完成复杂的数据探查比如“帮我找出上季度华东区销售额最高的前5个产品并对比一下它们的利润率”。一个具体场景假设你公司使用PostgreSQL存储订单数据有张orders表。传统方式需要写SQLSELECT product_id, SUM(amount) FROM orders WHERE regionEast AND quarterQ3 GROUP BY product_id ORDER BY SUM(amount) DESC LIMIT 5;。现在你配置companyscope-mcp连接该数据库并暴露一个名为query_database的工具。接下来你只需在Claude里输入“用query_database工具帮我查一下上季度华东区销售额最高的5个产品。” Claude会理解你的意图自动构造参数可能涉及时间转换调用工具并将返回的表格数据整理成清晰的回答。3. 环境准备与部署实操详解理论讲完我们进入实战环节。部署companyscope-mcp需要一些基础环境下面我会一步步拆解并说明每个环节的意图和避坑点。3.1 基础运行环境搭建项目基于Node.js运行因此第一步是确保你的机器上安装了合适版本的Node.js和包管理器npm或yarn。# 1. 检查Node.js版本推荐使用LTS版本如18.x, 20.x node --version # 应输出 v18.17.0 或更高 # 2. 如果未安装或版本过低建议使用nvmNode Version Manager进行安装和管理 # 安装nvm以Linux/macOS为例 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash # 重新加载shell配置或打开新终端 source ~/.bashrc # 或 ~/.zshrc # 安装指定版本的Node.js nvm install 18 nvm use 18 # 3. 检查npm版本 npm --version实操心得强烈推荐使用nvm管理Node.js版本。企业内不同项目可能依赖不同Node版本nvm可以让你轻松切换避免全局版本冲突。Windows用户可以使用nvm-windows。3.2 获取项目源码与初始化接下来我们从GitHub获取项目代码并进行初始化。# 1. 克隆项目仓库到本地 git clone https://github.com/Stewyboy1990/companyscope-mcp.git cd companyscope-mcp # 2. 安装项目依赖 npm install # 如果网络较慢可以尝试使用淘宝镜像 # npm install --registryhttps://registry.npmmirror.com安装过程可能会持续一两分钟取决于网络速度。完成后项目目录下会生成node_modules文件夹。3.3 核心配置文件解析与定制这是最关键的一步。companyscope-mcp的行为完全由配置文件决定。项目通常提供一个示例配置文件如config.example.yaml或config.example.json你需要复制并修改它。假设我们有一个config.example.yaml内容结构如下# companyscope-mcp 配置文件示例 server: port: 3000 # MCP服务器监听的端口 host: localhost # 绑定地址生产环境可改为 0.0.0.0 # 数据源定义 dataSources: - type: postgres # 数据源类型 name: company_orders_db # 数据源别名用于工具调用时引用 config: host: localhost port: 5432 database: order_system user: readonly_user # 重要使用权限最小化的账号 password: ${DB_PASSWORD} # 建议使用环境变量而非明文 ssl: false # 定义从此数据源暴露的工具 tools: - name: query_orders # 工具名称AI客户端将看到这个 description: 执行SQL查询订单数据库 # 可以在这里定义参数schema限制AI可查询的表或字段 # allowedTables: [orders, products] # allowedOperations: [SELECT] - type: filesystem name: internal_docs config: rootPath: /path/to/your/company/docs # 可以设置只读防止AI误修改 readOnly: true tools: - name: search_docs description: 在内部文档目录中搜索包含关键词的文件你需要根据实际情况修改数据源连接信息将host、database、user、password替换为你真实的数据源信息。密码安全绝对不要将密码明文写在配置文件中。如上例所示使用${DB_PASSWORD}这样的环境变量占位符。然后在启动服务器前在终端设置环境变量export DB_PASSWORDyour_real_passwordLinux/macOS或set DB_PASSWORDyour_real_passwordWindows CMD。工具定义为每个数据源定义清晰、功能单一的工具。description字段要写清楚这有助于AI理解工具的用途。你可以通过allowedTables等参数进一步限制AI的操作范围实现更细粒度的权限控制。文件路径对于filesystem类型确保rootPath指向的目录存在且服务器进程有读取权限。复制并重命名示例文件cp config.example.yaml config.yaml # 然后使用你喜欢的文本编辑器如VS Code, Vim, Nano编辑 config.yaml3.4 启动MCP服务器配置完成后就可以启动服务器了。项目通常会在package.json中定义启动脚本。# 方式一使用npm脚本启动如果package.json中定义了start脚本 npm start # 方式二直接运行主文件常见入口为 index.js 或 server.js node index.js --config ./config.yaml # 方式三开发模式支持文件变动自动重启如果配置了nodemon npm run dev启动成功后你应该能在终端看到类似这样的日志[INFO] MCP Server started on http://localhost:3000 [INFO] Loaded data source: company_orders_db (postgres) [INFO] Loaded data source: internal_docs (filesystem) [INFO] Available tools: query_orders, search_docs这表明服务器已在本地3000端口运行并加载了两个数据源暴露了两个工具。常见问题1启动报错 “Cannot find module ...”这通常是依赖未安装完整导致的。删除node_modules文件夹和package-lock.json文件重新运行npm install。rm -rf node_modules package-lock.json npm install常见问题2数据库连接失败检查配置文件中的连接参数主机名、端口、用户名、密码是否正确。确保数据库服务正在运行并且监听地址允许从MCP服务器所在机器连接比如PostgreSQL的pg_hba.conf配置。可以先用psql或MySQL客户端手动测试连接。4. 客户端连接与使用实战服务器跑起来了接下来就是让AI客户端这里以Claude Desktop为例连接它。4.1 配置Claude Desktop连接MCP服务器Claude Desktop支持通过配置文件添加自定义MCP服务器。找到Claude Desktop的配置目录macOS:~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:%APPDATA%\Claude\claude_desktop_config.jsonLinux:~/.config/Claude/claude_desktop_config.json编辑配置文件如果文件不存在就创建它。添加以下内容假设你的MCP服务器运行在本机3000端口{ mcpServers: { companyscope: { command: npx, args: [ -y, mcp-client-http-proxy, --server-url, http://localhost:3000 ] } } }配置解析companyscope这是你给这个服务器连接起的名字可以自定义。command: npx告诉Claude使用npx来运行一个命令。args这里的mcp-client-http-proxy是一个关键的桥接工具。因为Claude Desktop期望通过标准输入输出stdio与MCP服务器通信但我们的companyscope-mcp是一个HTTP服务器。这个桥接工具的作用就是启动一个本地进程它通过stdio与Claude通信同时将请求转发到我们HTTP服务器的http://localhost:3000。保存并重启Claude Desktop完全退出Claude Desktop应用再重新打开。4.2 在对话中验证与使用工具重启Claude后新建一个对话。如果配置成功Claude通常会在输入框上方或侧边栏提示“已连接至工具”或类似信息。你也可以直接询问它你你现在可以使用哪些工具Claude的回答可能类似于“我现在可以访问以下工具query_orders: 执行SQL查询订单数据库。search_docs: 在内部文档目录中搜索包含关键词的文件。 你可以告诉我你想做什么我会尝试使用合适的工具来帮助你。”现在你可以开始用自然语言下达指令了你请用query_orders工具查看一下最近一个月销售额超过10万的订单有哪些列出订单号、客户名和金额。Claude会理解你的请求并在后台执行以下动作解析你的意图确定需要使用query_orders工具。尝试构造一个合理的SQL查询。这里非常关键一个设计良好的MCP服务器或工具定义应该对AI构造的查询有一定约束或引导比如通过description和参数schema提示可用的表和字段。否则AI可能会生成语法错误或性能极差的SQL。通过MCP协议调用工具将构造的SQL或参数发送给companyscope-mcp服务器。服务器收到请求执行数据库查询会应用配置中的用户权限。服务器将查询结果可能是JSON或表格数据通过MCP协议返回给Claude。Claude将原始数据整理成人类可读的格式如表格、总结性语句呈现给你。实操心得第一次使用工具时建议从简单的查询开始例如“查询orders表的前10条记录”。这有助于验证整个链路是否通畅。同时观察Claude生成的SQL语句如果服务器日志或工具设计允许查看可以帮你优化工具的描述和参数限制引导AI生成更高效的查询。4.3 文件系统搜索示例对于文件系统工具使用方式类似你我想找一下关于“Q3财务预算”的文档请用search_docs工具帮我搜一下。Claude会调用search_docs工具可能传入关键词“Q3 财务 预算”。服务器端会在配置的rootPath下进行文件内容或文件名的搜索具体实现取决于companyscope-mcp中该工具的代码逻辑返回匹配的文件列表和摘要。Claude再将这些信息组织后回复你。5. 高级配置与安全加固指南将AI直接连到企业数据源安全是重中之重。基础的密码用环境变量只是第一步下面探讨更深入的配置和安全实践。5.1 细粒度的权限控制策略在config.yaml中定义工具时充分利用参数限制tools: - name: query_sales_data description: 查询销售数据表仅允许访问sales_records表且只能使用SELECT操作。可用的字段有id, date, region, product_id, amount, salesperson。 # 通过参数schema明确定义AI可以做什么 parameters: type: object properties: sql_query: type: string description: 必须是一个合法的SELECT语句且只能涉及sales_records表。 # 或者在服务器端代码中实现校验逻辑 # 例如解析SQL检查表名、操作类型是否在白名单内服务器端校验更可靠的方式是在MCP服务器的工具实现代码里加入校验层。当收到AI发来的SQL时先进行解析和检查拒绝任何尝试访问非授权表、执行DELETE、UPDATE、DROP等危险操作的请求。companyscope-mcp项目可能已经内置了部分基础校验但你需要根据代码审查其完整性必要时进行增强。5.2 网络与访问安全生产环境部署切勿在公网直接暴露companyscope-mcp的HTTP端口。应该部署在内网并通过反向代理如Nginx配置HTTPS、身份验证和IP白名单。# Nginx 示例配置片段 server { listen 443 ssl; server_name mcp.internal.yourcompany.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://localhost:3000; # 指向本地运行的MCP服务器 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; # 添加HTTP Basic认证 auth_basic Restricted MCP Access; auth_basic_user_file /etc/nginx/.htpasswd; # 允许的客户端IP段 allow 10.0.0.0/8; deny all; } }然后Claude Desktop的配置需要更新server-url为https://mcp.internal.yourcompany.com并可能需要配置代理或忽略SSL证书不推荐。使用SSH隧道如果MCP服务器部署在跳板机或隔离网络可以通过SSH隧道将端口映射到本地。ssh -L 3000:localhost:3000 userjumpbox-host这样你本地的3000端口就被隧道映射到了跳板机上的MCP服务器3000端口。Claude Desktop配置中的server-url保持http://localhost:3000即可。5.3 日志与审计启用并妥善保管MCP服务器的访问日志和查询日志。记录下每个工具的调用时间、调用参数可脱敏、执行结果状态成功/失败。这不仅是安全审计的需要也能帮助你分析AI的使用模式优化工具设计。你可以在companyscope-mcp的启动命令中增加日志级别或者修改其代码将日志写入文件或发送到日志聚合系统如ELK Stack。# 假设项目使用winston或类似日志库可以通过环境变量控制级别 LOG_LEVELdebug npm start6. 常见问题排查与性能调优在实际使用中你可能会遇到以下问题。6.1 连接与通信故障排查表问题现象可能原因排查步骤Claude提示“无法连接工具”或工具列表为空。1. MCP服务器未启动。2. Claude配置错误。3. 桥接工具mcp-client-http-proxy未安装或出错。1. 检查MCP服务器进程是否运行端口是否监听 (netstat -an | grep 3000或lsof -i:3000)。2. 检查Claude配置文件路径和内容是否正确JSON格式是否合法。3. 尝试在终端手动运行桥接命令npx -y mcp-client-http-proxy --server-url http://localhost:3000看是否有报错。工具调用超时或无响应。1. 数据库查询慢或网络延迟高。2. MCP服务器处理请求卡住。3. 返回数据量过大。1. 在服务器日志中查看工具调用耗时。优化数据库查询添加索引。2. 检查服务器CPU/内存使用情况。3. 在工具定义中限制返回行数例如在SQL中自动添加LIMIT 1000。AI生成的SQL语法错误或查询了不存在的表。1. 工具描述不够清晰。2. AI对数据库Schema理解有误。1. 优化工具description明确说明可用表和字段。考虑以“资源”形式向AI提供数据库表结构文档。2. 在服务器端增加更严格的SQL预检和重写逻辑。返回中文乱码。数据库连接字符集或HTTP响应头字符集设置不正确。确保数据库连接字符串中包含charsetutf8以MySQL为例。在MCP服务器HTTP响应中设置Content-Type: application/json; charsetutf-8。6.2 性能优化建议连接池管理对于数据库类数据源确保MCP服务器使用了连接池如pg-poolfor PostgreSQL,mysql2/promisewith pool。避免每次工具调用都建立新的数据库连接这能极大提升并发性能。查询优化与限制超时设置为每个工具调用设置执行超时例如30秒防止一个慢查询拖死整个服务器。行数限制在服务器端代码中对所有查询结果强制施加行数限制例如最多返回5000行或者在工具定义中让AI必须提供limit参数。索引建议分析AI经常查询的字段在数据库对应列上建立索引。缓存策略对于一些相对静态的“资源”如数据库Schema定义、产品目录可以在MCP服务器启动时加载并缓存避免每次AI需要背景信息时都去查询数据库。异步处理确保MCP服务器的工具处理逻辑是异步非阻塞的充分利用Node.js的异步特性避免因为一个同步IO操作阻塞其他请求。6.3 扩展开发添加新的数据源当你需要连接其他系统时可能需要扩展companyscope-mcp。假设要添加一个HTTP API数据源。理解项目结构查看项目源码通常会有src/data-sources/目录里面已有postgres.js、filesystem.js等模块。每个模块会导出一个类实现initialize(),getResources(),getTools()等方法。创建新模块新建一个http-api.js文件。在这个文件中你需要实现一个类其getTools()方法返回一个或多个工具定义。工具的执行函数中使用axios或node-fetch库去调用目标HTTP API。注册数据源在主配置文件config.yaml中添加一个新的dataSources条目type设置为对应的标识符如http-api并在服务器的初始化代码中将这个标识符与你新建的模块类关联起来。处理认证HTTP API通常需要API Key或OAuth令牌。这些敏感信息必须通过环境变量传入并在工具调用时添加到请求头中。这个过程需要对Node.js和MCP服务器框架有一定的理解但模式是固定的参考现有数据源代码可以大大降低难度。部署和试用companyscope-mcp一段时间后我最深的体会是它成功地将一个复杂的“AI赋能企业数据”问题分解成了两个相对清晰的子问题数据访问的安全标准化和自然语言交互的智能化。我们作为开发者只需要聚焦于第一个问题——如何通过MCP协议安全、可控地暴露数据。而第二个问题——如何理解用户意图并生成正确的工具调用——则交给了Claude这类已经非常成熟的大模型。这种分工带来了巨大的效率提升。以前需要自己训练模型或编写复杂解析逻辑的环节现在几乎省去了。但相应地也对我们的“接口设计”能力提出了更高要求。如何定义清晰、安全、高效的工具如何通过描述和少量示例引导AI正确使用成了新的关键技能。这有点像早期设计RESTful API时需要仔细斟酌每个端点的语义和参数。一个好的工具定义能让AI助手如虎添翼一个模糊或存在漏洞的定义则可能带来混乱或风险。最后一个小技巧在正式开放给团队使用前不妨自己先当一段时间“超级用户”用各种你能想到的、奇怪的、边缘的自然语言去测试你定义的工具。记录下AI误解或出错的情况不断迭代优化工具的description和参数限制。这个过程本身就是对业务数据和用户需求的一次深度梳理。

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