AgentQL MCP Server:让AI助手通过自然语言智能抓取网页数据

news2026/5/2 17:21:36
1. 项目概述当AI助手学会“看”网页如果你经常和Claude、Cursor这类AI助手打交道可能会遇到一个共同的痛点当你想让它帮你分析一个网页上的数据时比如整理某个电商网站的商品列表或者汇总一篇技术博客的关键观点它往往会告诉你“我无法直接访问互联网”或“请提供具体的文本内容”。这就像请了一位知识渊博的顾问但他却看不见你手头的资料沟通效率大打折扣。AgentQL MCP Server就是为了解决这个问题而生的。简单来说它是一个“桥梁”服务基于新兴的Model Context Protocol标准将AgentQL强大的网页数据提取能力无缝集成到你日常使用的AI工具中。MCP你可以理解为AI工具的“插件协议”它允许外部服务以标准化的方式为AI模型提供额外的工具和上下文。而AgentQL的核心能力是让AI能够“理解”网页的结构并像人类一样根据你的自然语言描述精准地抓取所需的结构化数据。想象一下你只需要对Claude说“帮我把GitHub Trending页面上今天最火的10个Python仓库信息整理成表格包括项目名、星标数、简介和链接。”接下来Claude会通过这个MCP服务器自动打开那个网页“看懂”页面布局提取出你要的10行数据并以整洁的Markdown表格的形式呈现给你。整个过程你无需编写任何爬虫代码也无需手动复制粘贴完全通过自然语言对话完成。这对于市场调研、竞品分析、信息聚合、研究跟踪等需要从网页获取结构化信息的场景无疑是一个效率倍增器。2. 核心原理与架构拆解要理解AgentQL MCP Server的价值我们需要拆解其背后的两个核心技术Model Context Protocol和AgentQL的数据提取引擎。2.1 Model Context ProtocolAI工具的“USB接口”MCP是由Anthropic主导推动的一个开放协议旨在为AI助手提供一个标准化的方式来扩展其能力。你可以把它类比为电脑的USB接口标准。在MCP出现之前每个AI应用如Claude Desktop、Cursor如果要接入外部工具如数据库、计算器、网页抓取都需要各自定义一套私有、不兼容的集成方式开发者和用户都面临巨大的适配成本。MCP定义了统一的“接口规范”。一方面AI应用只需要实现一次MCP客户端就能接入所有符合MCP标准的服务器工具。另一方面工具开发者只需要按照MCP协议开发一次服务器就能让所有支持MCP的AI应用使用。AgentQL MCP Server就是一个标准的MCP服务器实现它向AI应用宣告“我这里提供了一个叫做extract-web-data的工具可以按描述抓取网页数据。”这种架构带来了几个关键优势解耦与标准化工具开发和AI应用开发分离双方遵循同一协议即可互通。安全性工具运行在独立的进程中通过标准输入输出或SSE与AI应用通信避免了将不安全代码直接注入AI应用的风险。灵活性用户可以按需配置自己需要的MCP服务器打造个性化的AI助手工作流。2.2 AgentQL引擎让AI“看懂”网页的视觉与逻辑传统的网页抓取Web Scraping严重依赖HTML的DOM结构。开发者需要分析网页源码找到目标数据对应的HTML标签和CSS选择器如div.product-list h3.title。这种方式脆弱且低效一旦网站前端改版选择器就可能失效需要重新分析调试。AgentQL采取了截然不同的思路。它底层基于Playwright这样的现代浏览器自动化框架这意味着它能够加载一个完整的、执行了JavaScript的网页就像用户在真实浏览器中看到的一样。但它的核心突破在于结合了计算机视觉与大型语言模型对自然语言的理解能力。当你通过AI助手发出指令例如“提取这个页面上所有产品的名称、价格和用户评分”这个指令会被传递给AgentQL MCP Server。服务器会导航与渲染使用Playwright打开目标URL并等待页面完全加载。语义理解AgentQL引擎会解析你的自然语言“提示”理解“产品”、“名称”、“价格”、“评分”这些概念在当前网页上下文中的具体所指。智能定位它并非简单匹配HTML标签而是综合视觉布局、文本内容、语义关联等多种信息智能地定位到页面中符合描述的数据区域。结构化提取最后引擎将定位到的数据按照你要求的字段名称、价格、评分整理成结构化的格式如JSON或Markdown表格。这个过程的关键在于你不需要提供任何技术细节如XPath或CSS选择器。你只需要像告诉一个实习生那样用大白话描述你想要什么数据。AgentQL的模型负责完成从“理解意图”到“执行操作”的全部复杂工作。这使得非技术人员也能轻松进行复杂的数据提取同时也让技术人员从繁琐的选择器维护中解放出来。3. 环境准备与安装配置详解要让你的AI助手获得这个“超能力”你需要完成两步获取“钥匙”API Key和安装“插件”MCP Server。3.1 获取AgentQL API密钥AgentQL的服务并非完全免费开源其核心的智能提取能力需要调用云端API。因此第一步是前往其 开发者门户 注册账号并获取API密钥。注意通常这类服务会提供有限的免费额度供开发者体验和测试。注册后请务必在控制台查看你的用量配额和计费方式避免在不知情的情况下产生费用。将API密钥视为密码妥善保管不要泄露或提交到公开的代码仓库。3.2 全局安装MCP服务器包安装过程非常简单通过npmNode.js包管理器一行命令即可完成。确保你的系统已经安装了Node.js环境。npm install -g agentql-mcp这个-g参数代表全局安装意味着agentql-mcp这个命令可以在你系统的任何终端路径下直接执行。安装完成后你可以通过npx agentql-mcp来运行这个服务器。接下来就是将它配置到不同的AI应用里。3.3 在Claude Desktop中配置Claude Desktop是Anthropic官方的桌面客户端对MCP的支持非常原生和友好。打开配置在Claude Desktop应用中使用快捷键Cmd ,Mac或Ctrl ,Windows/Linux打开设置。这里有个容易混淆的点请务必点击界面左下角的“Settings”齿轮图标或者使用上述快捷键而不是去网页上登录的Claude账户设置。定位开发者选项在设置界面的左侧边栏找到并点击Developer选项。编辑配置文件点击Edit Config按钮系统会用默认的文本编辑器打开一个名为claude_desktop_config.json的JSON配置文件。这个文件存储了所有MCP服务器的配置。添加服务器配置在配置文件的JSON对象中找到或添加一个名为mcpServers的字段。它是一个对象里面可以包含多个服务器。我们将agentql服务器的配置添加进去。{ mcpServers: { agentql: { command: npx, args: [-y, agentql-mcp], env: { AGENTQL_API_KEY: 你的API密钥 } } } }配置参数解析command: “npx”: 指定运行命令为npx这是一个npm附带的工具用于执行Node.js包。args: [“-y”, “agentql-mcp”]:-y参数表示如果本地没有找到agentql-mcp包则自动同意安装它。这确保了环境的一致性。env: 这里设置环境变量。AGENTQL_API_KEY这个环境变量会被agentql-mcp进程读取用于认证API服务。请务必将你的API密钥替换成从Dev Portal获取的真实密钥。重启生效保存配置文件并完全关闭再重新打开Claude Desktop应用。重启后Claude就应该能识别到这个新工具了。3.4 在VS Code / Cursor / Windsurf中配置对于以VS Code为核心的代码编辑器包括原生VS Code、Cursor、以及Codeium的Windsurf配置原理类似但入口和配置文件位置略有不同。VS Code / Cursor 手动配置 最通用的方法是直接修改用户设置文件。在VS Code或Cursor中按下Ctrl Shift P或Cmd Shift P打开命令面板。输入并选择Preferences: Open User Settings (JSON)。在打开的settings.json文件中添加MCP配置节。{ // ... 你其他的用户设置 ... mcp: { inputs: [ { type: promptString, id: agentqlApiKey, description: 请输入你的AgentQL API密钥, password: true } ], servers: { agentql: { command: npx, args: [-y, agentql-mcp], env: { AGENTQL_API_KEY: ${input:agentqlApiKey} } } } } }这里使用了一个更安全的技巧inputs字段定义了一个输入项。当编辑器启动MCP服务器时会弹出一个密码输入框让你临时输入API密钥而不是将其明文保存在配置文件中。密钥通过“${input:agentqlApiKey}”这个变量注入到环境变量中。Windsurf 配置 Windsurf的配置通常位于一个独立的全局文件。打开命令面板输入Windsurf: MCP Configuration Panel打开图形界面添加。或者直接编辑文件~/.codeium/windsurf/mcp_config.jsonMac/Linux或%USERPROFILE%\.codeium\windsurf\mcp_config.jsonWindows。添加的配置内容与Claude Desktop的示例几乎完全相同。实操心得配置的优先级与冲突你可能会在多个地方用户设置、工作区设置.vscode/mcp.json配置MCP。一般来说工作区配置的优先级高于用户全局配置。这带来了灵活性比如你可以为某个特定项目配置专用的API密钥。但也要小心冲突如果同一个服务器名如agentql在不同位置被重复定义可能会导致不可预料的行为。通常建议先在用户设置中配置通用服务器仅在必要时为特定项目覆盖。4. 实战应用从自然语言到结构化数据配置完成后激动人心的时刻就到了让你的AI助手真正开始工作。我们通过几个由浅入深的实际案例来看看如何高效地使用这个工具。4.1 基础用例提取列表数据让我们从项目文档中的例子开始提取YouTube搜索结果。你的指令可以这样下达“使用工具从页面https://www.youtube.com/results?search_queryopenai中提取视频列表。每个视频需要包含以下字段标题、频道名称、观看次数、视频时长和视频链接。请确保排除广告内容并将结果整理成Markdown表格。”AI助手如Claude的处理流程理解指令Claude解析你的请求识别出需要调用工具、目标URL以及所需的数据结构。调用工具Claude通过MCP协议调用已配置的agentql服务器的extract-web-data工具并将你的自然语言描述作为prompt参数URL作为url参数传递过去。执行提取AgentQL MCP Server在后台启动浏览器访问该YouTube页面运行其智能引擎根据你的描述定位视频列表区域区分正常视频和广告并抓取指定的五个字段。返回结果服务器将抓取到的结构化数据通常是一个JSON数组返回给Claude。格式化呈现Claude接收到数据后按照你的要求将其渲染成一个美观的Markdown表格展示在对话中。你可能遇到的第一个问题AI助手回复“我无法浏览网页”或直接开始基于过时知识库编造答案。排查技巧这说明AI没有主动使用你配置的工具。你需要明确提示它使用工具。在指令开头或结尾加上“请使用可用的工具”、“请调用AgentQL工具”或“Use the web extraction tool”等提示语可以极大地提高工具调用的成功率。这是目前AI助手使用工具时一个常见的交互模式。4.2 进阶用例复杂页面与数据清洗很多实际页面比YouTube搜索结果复杂得多。例如你想监控某电商平台特定商品的价格和库存。指令示例“访问https://example-store.com/product/xyz提取商品的主要信息。我需要商品全称、当前售价只取数字不要货币符号、是否显示‘缺货’标签、商品规格选项如颜色、尺寸列表、以及‘顾客评价’板块的平均评分满分5分。如果评分元素不存在则该字段留空。”这个指令的挑战在于字段混合价格是数字文本需要清洗。条件状态“缺货”是一个布尔状态需要判断特定标签是否存在。列表数据规格选项是一个多值列表。可选字段评分可能不存在需要优雅处理。AgentQL的强大之处在于它能理解这些复杂语义。你不需要告诉它“找到 class 为price的 span 标签然后正则匹配数字”你只需要用业务语言描述“当前售价只取数字”。引擎会综合页面上的所有信息找到最符合“当前售价”语义的元素并尝试提取纯数字。4.3 高级技巧分页抓取与数据聚合单个页面往往不够。你可能需要抓取一个列表的所有分页或者从多个相关页面聚合信息。由于MCP工具一次调用通常处理一个URL要实现分页抓取你需要“教”AI助手一个工作流指令示例“我们的目标是分析GitHub上‘机器学习’主题下的热门仓库。首先请使用工具访问https://github.com/topics/machine-learning提取第一页上所有仓库的以下信息仓库名、所有者、星标数、简介和仓库链接。然后请你分析页面底部是否存在分页器并找出‘下一页’的链接。如果存在请用同样的方法继续提取第二页的数据。将两页的数据合并并按星标数从高到低排序生成最终的Markdown表格。”这个指令将任务分解成了多个步骤并引入了逻辑判断是否存在分页和循环操作继续提取下一页。AI助手需要依次执行多个工具调用并在中间进行数据分析和决策。这展示了如何将简单的数据提取工具组合成复杂的数据采集工作流。注意事项速率限制与道德考量虽然AgentQL很强大但请负责任地使用。频繁、快速地对同一个网站发起抓取请求可能会触发网站的防爬虫机制如IP封禁也是对对方服务器资源的消耗。在实操中建议添加延迟在指令中可建议“在每次页面请求间暂停3-5秒”。检查robots.txt尊重网站robots.txt文件的规定。明确用途确保你的数据抓取用于个人学习、研究或合法的商业分析不侵犯版权或服务条款。关注API成本AgentQL的API调用是计费的复杂页面或大量抓取会产生更多费用。5. 开发与调试指南如果你是一名开发者可能不满足于仅仅使用还想了解其原理甚至进行定制或调试。AgentQL MCP Server项目本身是开源的这提供了可能。5.1 本地开发环境搭建首先将项目代码克隆到本地git clone https://github.com/tinyfish-io/agentql-mcp.git cd agentql-mcp安装项目依赖npm install项目依赖主要包括构建MCP服务器所需的modelcontextprotocol/sdk实现网页交互的playwright以及TypeScript相关的开发依赖。5.2 构建与运行项目使用TypeScript编写需要编译成JavaScript才能运行。构建执行npm run build代码将被编译到dist目录。开发模式执行npm run watch这会启动一个监听进程。当你修改源代码src/目录下的文件时它会自动重新编译非常适合边开发边测试。要使用你自己编译的版本进行测试需要修改MCP客户端的配置将命令指向本地编译好的文件而不是全局的npx包。{ mcpServers: { agentql-dev: { command: node, args: [/你的本地路径/agentql-mcp/dist/index.js], env: { AGENTQL_API_KEY: YOUR_API_KEY } } } }注意这里我把服务器名改成了agentql-dev这是为了避免和你之前配置的正式版agentql服务器冲突。Claude如果发现两个同名工具行为可能不确定。5.3 调试使用MCP Inspector调试MCP服务器是一个挑战因为它的通信是通过标准输入输出进行的没有直观的日志输出。官方推荐的利器是MCP Inspector。你可以在AgentQL MCP项目目录下直接运行npm run inspector这个命令会启动Inspector工具并在终端输出一个本地URL通常是http://localhost:5173。在浏览器中打开这个URL你会看到一个调试界面。使用Inspector的典型工作流在Inspector界面中你需要配置连接到你的MCP服务器。对于本地开发的服务器配置方式类似于客户端配置指定命令和参数。连接成功后Inspector会显示服务器宣告的所有可用工具这里就是extract-web-data。你可以在Inspector界面中手动调用这个工具填入url和prompt参数然后执行。Inspector会清晰地展示出整个MCP协议的通信过程客户端发送的请求、服务器返回的响应、以及任何错误信息。所有数据都以结构化的JSON形式呈现这对于理解工具调用流程、排查参数错误或服务器逻辑问题至关重要。实操心得调试中的常见坑点环境变量未传递确保你的开发服务器配置中正确设置了AGENTQL_API_KEY环境变量否则服务器启动时会报认证错误。Playwright浏览器未安装AgentQL依赖Playwright而Playwright需要下载特定版本的浏览器。如果首次运行确保已经执行过npx playwright install。在开发环境中你可能需要手动安装或检查。超时问题网页加载或AgentQL引擎处理复杂页面可能耗时较长。如果Inspector或AI客户端报超时错误可能需要检查服务器日志或考虑在客户端配置中增加超时时间如果客户端支持。协议版本不匹配MCP协议仍在发展中。确保你使用的modelcontextprotocol/sdk版本与你的AI客户端兼容。通常跟随项目默认的依赖版本是最安全的选择。6. 生态展望与替代方案对比AgentQL MCP Server处于两个快速发展的生态的交汇点AI智能体工具平台和下一代网页数据提取技术。在MCP生态中它展示了如何将一个专业的、独立的功能智能网页抓取封装成标准化的工具无缝融入AI助手的工作流。未来我们可能会看到更多的MCP服务器出现例如连接数据库、调用内部API、管理日历邮件等AI助手将真正成为连接一切数字服务的智能中枢。在网页抓取领域它代表了从“基于规则”到“基于意图”的范式转变。传统的Scrapy、BeautifulSoup方案强大但需要高技术水平维护。无代码平台如ParseHub、Octoparse降低了门槛但灵活性仍有限。AgentQL这类AI驱动的方法在易用性和应对复杂、动态页面方面找到了一个新的平衡点。当然它并非万能钥匙。对于需要极高吞吐量、极低延迟的规模化爬虫任务传统定制化爬虫框架仍是更优选择。对于完全静态、结构极其简单的页面直接使用请求库加正则表达式可能更快更轻量。AgentQL的核心优势场景是“快速、灵活地从复杂现代网页中提取特定字段数据”尤其是当需求多变、页面结构时常调整时其用自然语言描述需求的能力将节省大量开发和维护时间。我个人在实际使用中的体会是AgentQL MCP Server最大的价值在于降低了从“产生数据需求”到“获得结构化数据”之间的认知摩擦和技术门槛。它让我在数据分析、信息收集的初期探索阶段效率提升了数倍。我不再需要打开开发者工具、分析网络请求、编写和调试XPath。我可以将全部精力集中在“我需要什么数据”和“用这些数据做什么分析”上而把“如何拿到数据”这个脏活累活交给AI和它的工具。随着MCP协议的普及和更多类似工具的出现这种“用自然语言指挥数字世界”的工作方式或许会成为我们未来人机交互的新常态。

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