首页/新闻资讯/正文详情

腾讯开源3.6K星项目:搭建全家共享AI平台,统一管理大模型API

发布时间:2026/9/25 4:38:21 来源:云帆数科 栏目:资讯中心
腾讯开源3.6K星项目:搭建全家共享AI平台,统一管理大模型API
最近几个月我身边越来越多朋友开始找我吐槽同一个问题AI助手越买越多ChatGPT订一份、Claude订一份、国产的几个AI会员又各来一份每月账单叠加起来比视频平台全家桶还贵。更离谱的是家里每个人、团队里每个成员的账号都是各管各的密码一堆、额度分散、使用率还极不均衡。直到我关注到腾讯开源的这款3.6K星标全家共享平台才彻底把这些麻烦理清楚。这是一个能帮你把各家大模型API统一接入、统一分配、统一计费的私有化共享网关适合想在家庭或小团队里共用AI能力、又不想继续为每个成员单独掏会员费的人。这篇文章不聊虚的就把我实际搭建和使用的整个过程拆开讲清楚。从项目核心功能、部署步骤、踩坑记录到进阶玩法基本覆盖了你从零开始搭建一套“全家共享AI平台”所需的全部关键信息。1. 为什么需要“全家共享”的AI入口1.1 订阅AI助手的钱到底花在哪了先帮大家算一笔账。假设一个三口之家或者五个人的小团队每个人都需要经常用AI来写东西、查资料、写代码或者做表格。如果每个人都单独订一个ChatGPT Plus一个月就是20美元再配上一个国产AI的会员又是几十块人民币偶尔用到Claude处理长文档又是一份订阅。两三个人这么叠下来一个月的AI开销轻松上百元甚至更多。但问题是这些订阅并不是每个人都用满了。真实情况往往是家里的程序员天天用其他成员可能一周才打开几次团队里A成员重度依赖某个模型B成员却几乎只用另一个工具。固定订阅的模式没法按实际使用量来分配成本要么浪费要么不够用。而且账号分散在各人的手机上管理者根本不知道“全家到底花了多少”“哪个人用得最多”“哪个模型实际在产生价值”。这种信息黑箱长期下来其实挺影响决策的。1.2 共享平台的本质在模型和用户之间加了一层控制闸门要解决上面的问题核心思路不是在“订阅”层面做文章而是把“模型API调用”和“最终用户”之间加一层统一控制的网关。这层网关负责把所有上游大模型API不管是OpenAI、Claude、国内模型还是本地模型汇聚成一个统一入口然后向下给家庭成员或团队成员发放独立的访问凭证。每个成员拿着自己的凭证在任意支持OpenAI接口协议的客户端软件里填入这个统一入口地址就能开始使用。管理员可以在后台看到每个成员的调用量、生成的token数、估算费用还能按需设置额度上限。这就等于把过去“一个人一个会员”的模式改成了“一家人共用一个私有化AI中台”成本从“按人头固定收”变成“按实际消耗分配”。用个更生活化的比喻以前的订阅制就像每家每户各接一条自来水管道用不用都得交钱共享平台的模式则是小区建了一个总水塔各家各户装水表用多少算多少管理员还能随时查看和调节每家的用水额度。对于家庭和小团队来说这个逻辑显然更实用。1.3 腾讯开源背景与3.6K星标的分量既然决定要自建这样一个平台项目选型就很重要。我一开始也考虑过市面上的商业化“AI中台”产品但要么收费不透明要么把数据放在别人服务器上始终觉得不方便。直到看到这个腾讯开源项目拿下3.6K星标社区讨论热度也不低才真正入了坑。3.6K星标在AI基础设施类项目里算是不错的成绩说明它经过了不少人的实际检验坑相对少。腾讯开源背景带来的好处也直观代码规范、文档结构完整、发版节奏稳定不会像某些个人开源项目一样半路停更。更重要的是它支持纯私有化部署所有配置和日志都存在自己服务器上。这一点对家庭用户来说也许无所谓但对小团队而言意味着内部数据、提示词、文档语料都不用经过第三方平台隐私边界更清晰。2. 核心功能拆解一个共享AI平台的关键模块2.1 渠道管理一个后台接住所有上游模型这个平台最底层的能力是“渠道管理”。简单说就是把你的各种模型API密钥集中放进后台统一维护。你不必在每家模型服务商的网站之间来回切换也不用担心某个API key被哪个客户端写死导致没法统一更换。我实测下来渠道管理最实用的点有两个。第一是多渠道自动容灾。比如你配置了OpenAI和Claude两个上游渠道当OpenAI的接口报错或限流时网关可以自动把请求转发到备用渠道终端用户基本无感知。第二是模型映射。你可以把不同服务商的模型统一改成自己人好记的名字比如把上游的“gpt-4o”映射成“写作专用”把“claude-sonnet”映射成“长文分析”这样家里人使用的时候不需要关心底层模型叫什么只管选“今天要用哪个场景”。这里有个选型细节值得注意不同上游服务商的计费方式差异很大有的按token计费有的按请求次数计费还有的按图像输入张数计费。在配置渠道时平台会要求你准确填写模型类型和计量方式这直接影响后面的成本核算准不准。第一次配置时别嫌麻烦认真填好每项参数后面看账单会轻松很多。2.2 令牌机制给每个成员发一张“门禁卡”令牌Token是共享平台里最核心的授权方式。它的逻辑类似于管理员创建一个令牌设置这个令牌的额度上限、有效期、允许访问的模型范围然后把它发给指定的家庭成员或团队成员。用户在自己的客户端里填入这个令牌就能调用网关上配置好的所有模型。这种方式比直接把上游API key发给每个人安全得多因为上游key一旦泄露别人就能随便调用你的模型额度产生高额费用。而令牌是网关自己生成的你可以随时单独停用一个令牌不影响其他人。我实际使用中还有一个很推荐的细节为每个人单独建令牌、单独设额度。比如给家里孩子用的令牌只开放基础问答模型每天限制5万token既够用又不会因为好奇乱调大模型把开销拉上去。2.3 计费与限额用数据而不是感觉来决定充多少共享平台的另一个价值是让AI费用变得“可视化”。后台会实时统计每个令牌产生的请求数、token数、估算费用并提供图表展示。你可以一眼看出来家里目前是写代码的人消耗最大还是写文档的人消耗最大一周之内哪类模型占用了70%以上的算力预算。基于这些数据分配额度就有依据了。我给团队成员分配额度时通常先按过去两天的用量放大1.5倍作为初始上限跑一周再看实际消耗灵活调整。对于限额超出的成员平台会自动拒绝请求不会出现“一不小心调用超预算”的情况。这个机制对控制AI成本特别有效因为大模型API的账单往往是阶梯式的看似每次调用只花几分钱积累起来却很快没有限额控制很容易失控。2.4 日志审计出了问题能精确回溯到“谁在什么时候干了什么”运营一套多人共用的AI平台日志能力不是可选项而是刚需。平台会把每一次请求的令牌归属、调用模型、输入输出token数、耗时、是否成功等信息完整记录。当某个家庭成员反馈“AI突然不好用了”管理员查一下日志马上能定位是上游服务故障、额度耗尽还是配置变更导致的效率高很多。日志的另一层作用是隐私保护。因为所有数据都存在你自己的服务器上你可以定制清理策略比如定时删除超过30天的请求体内容只保留统计信息。对于有小团队协作场景的朋友这一点非常重要——员工或家人提问的内容不应该默认上传到第三方日志平台自建网关在这方面天然可控。3. 动手部署从零搭建一套可用的共享平台3.1 部署前的环境准备这个平台本质是一组后端服务对环境的要求不算高。我实测在一台2核4G内存的旧电脑上就能跑稳如果你手头有NAS、软路由或者闲置笔记本都可以利用起来。如果都没有买一台轻量云服务器也可以但要注意管理后台和数据都在云端安全策略要格外谨慎。软件层面需要提前装好Docker和Docker Compose这是目前跑这类服务最省心的方式。还需要准备至少一个上游模型API的key比如OpenAI的、国内大模型的或者本地模型的都行。如果你想同时接多家那就把各家的key都备好。Windows用户建议直接用Docker DesktopLinux用户装好Docker Engine即可。提示部署之前先确认机器的端口88xx或80端口没有被占用。这类平台默认会用3000或80端口跑Web服务8080端口跑API具体看项目文档提前规划好能少踩很多坑。3.2 用Docker Compose一步启动核心服务以这类开源平台最常见的部署方式为例核心是准备一个docker-compose.yml文件把网关服务、数据库、缓存等组件一起编排起来。下面这个是我简化后的实际配置你可以直接参考version: 3.8 services: mysql: image: mysql:8.0 container_name: ai-gateway-mysql restart: always environment: MYSQL_ROOT_PASSWORD: your_root_password MYSQL_DATABASE: aigateway MYSQL_USER: gateway MYSQL_PASSWORD: your_db_password volumes: - ./mysql-data:/var/lib/mysql networks: - gateway-net redis: image: redis:7-alpine container_name: ai-gateway-redis restart: always volumes: - ./redis-data:/data networks: - gateway-net gateway: image: your-image-name:latest container_name: ai-gateway restart: always depends_on: - mysql - redis ports: - 3000:3000 environment: DB_HOST: mysql DB_PORT: 3306 DB_NAME: aigateway DB_USER: gateway DB_PASSWORD: your_db_password REDIS_HOST: redis REDIS_PORT: 6379 SESSION_SECRET: please_change_this_to_a_long_random_string volumes: - ./logs:/app/logs networks: - gateway-net networks: gateway-net: driver: bridge实际执行时在配置目录下运行docker compose up -d等服务全部变成running状态浏览器访问http://服务器IP:3000就能进入初始化页面。第一次打开会让你创建管理员账号这一步很简单填个邮箱和密码就行。初始化完成后平台的管理后台就算正式启用了。注意初始化时设置的管理员密码不要太简单。这个后台一旦被外人登录就能看到你的所有上游模型key风险极大。建议密码至少12位且不要和其他网站共用。3.3 配置上游渠道把各家模型统一接进来平台管理后台初始化后第一件正事是添加“渠道”也就是把你手头的模型API key填进去。这里以接入一个OpenAI兼容接口为例通常需要填这几项渠道类型选OpenAI兼容或对应厂商、渠道名称自己起个区分用的名字、模型列表填该key可以调用的模型ID、API地址和密钥。模型ID这里特别容易填错。不同服务商对模型ID的命名不完全一样有的叫gpt-4o有的叫claude-3-5-sonnet-20241022还有的国产模型叫qwen-max之类。一定要以你购买服务的渠道文档为准填错一个字调用时就会报“模型不存在”的错误。填完之后平台一般会提供一个“测试渠道”按钮点击后会用这个小key实际发起一次极小的请求验证连通性和计费是否正常。我建议每条渠道添加后都花10秒钟跑一次测试避免后面用户反馈“用不了”才返工排查。如果你同时添加了多个渠道还可以设置“权重”参数比如OpenAI渠道权重为3、国产模型渠道权重为1那么平台分发请求时大约每4次请求会有3次到OpenAI、1次到国产模型实现了最简单的负载均衡。这个功能对降低单一服务商故障影响很有用。3.4 创建令牌并分发给每个成员开“独立水表”渠道配置好之后就可以创建令牌分发给家人或团队成员了。在后台的“令牌”页面新建令牌主要需要设置这几个参数令牌名称建议写人名或用途比如“老王-编程”、额度类型按照题还是按次数、额度上限、允许的模型范围、有效期。我实际分配时通常会这样做先给每个人建一个令牌额度设置为一个比较保守的值比如每天10万token然后让成员用一天第二天看后台实际消耗再根据情况调整到合适水平。这种方式不会因为一开始额度设太高而担惊受怕也不会设太低导致成员觉得“根本不够用”。生成好的令牌要妥善保管因为它只在创建时完整展示一次。分发时建议通过加密方式传输比如家庭内部的密码管理工具不要直接明文发在微信或钉钉群里避免被不相关的人看到后滥用。最后一步是配置客户端。常见的AI客户端工具例如ChatGPT-Next-Web、LobeChat、Cherry Studio等都支持自定义接口地址。用户只需要在客户端设置里把API地址改成http://你的网关地址:3000把API密钥改成平台下发的令牌就能开始用了。此时用户不需要关心上游到底是哪个模型厂商在提供服务他看到的只是一个统一的模型列表体验和直接用官方客户端几乎没区别。4. 实操中的坑与排查方法4.1 部署初期最容易踩的坑我自己在搭建过程中确实遇到了几个典型问题这里整理出来给大家参考。第一个是端口冲突。我的NAS上本来就有个服务占用了80端口结果平台容器一直起不来日志显示端口被占。解决方案很简单把docker-compose里的端口映射改成3000:3000这样的高位端口或者指定备用端口即可。一定要养成先检查端口再启动的习惯能省很多无谓的时间。第二个是数据库初始化失败。有时候在Docker Compose启动时MySQL容器的初始化脚本跑得比网关服务慢导致网关启动时连不上数据库然后一直重启。这种情况下可以在网关服务的depends_on配置里加上condition: service_healthy并且给MySQL配置一个健康检查这样等数据库真正准备好网关才会启动问题就消失了。第三个是日志目录权限问题。如果容器内服务以非root用户运行而挂载出来的日志目录权限不对服务会直接卡在写日志这步起不来。解决办法是在宿主机上先创建好./logs目录并执行chmod 777 ./logs或其他合适的权限设置确保容器内进程可以写入。4.2 模型调用失败的高频原因平台部署好、客户端也接入了但实际使用时总会冒出各种调用报错。根据我的经验最常遇到的几类问题如下模型ID不匹配是最普遍的。用户选了gpt-4o但渠道里实际配置的ID是gpt-4o-2024-08-06或者相反都会报模型不存在。这种问题排查时打开调用日志看到错误信息里明确写着类似“The model xxx does not exist”就能确定。解决办法是统一模型ID或者在渠道配置中把别名和实际ID对应好。上下文长度超限也很常见。有些上游模型上下文窗口有限比如8K或32K但用户上传了很长的文档或做了多轮长对话导致请求超过模型上限报错内容通常是“maximum context length exceeded”。这类问题的解法分几层在网关侧限制单次请求的最大token数、在客户端侧开启自动截断、或者换用上下文窗口更大的模型。鉴权失败和额度用尽的问题就更好定位了错误信息会直接提示401或403排查时先确认令牌是否有效、有效期是否过期、额度是否用完即可。日志里这类错误非常显眼基本一眼能看到。4.3 多人同时使用时的资源调度问题当家里或团队里同时好几个人在用AI时一些“单机时遇不到”的问题就会冒出来。最常见的是上游限流你在某家模型平台买的是按量付费没有承诺并发而家庭成员同时发起请求上游开始返回429限流错误。此时网关通常会做重试但如果多个请求都集中在同一瞬间仍然可能有一部分失败。我自己的解决方案是把同一个上游服务商的多张API key配置成同一渠道下的多个密钥让网关轮询使用相当于把并发压力分摊到多个key上。另外针对有实时聊天需求的成员我会在客户端接入时做分组把高优先级的人分配到响应更快的模型渠道。还有一个容易被忽视的问题某个成员在客户端里把“最大输出token”设得特别大导致单次请求消耗非常多。这个问题单看好像没什么但如果有好几个人同时这么设消耗会指数级上升。我的做法是在网关侧给每个令牌设置单次请求的上下文上限比如不能超过16K从根上避免这种浪费。5. 进阶玩法把平台变成一整个家庭的AI基础服务5.1 接入本地模型做隐私场景兜底如果你手头有张不错的显卡或者有一台内存足够大的笔记本完全可以把本地模型也接入这个共享平台作为某些隐私场景的兜底方案。比较主流的方式是用Ollama或vLLM把本地模型跑成一个OpenAI兼容的API服务然后在网关渠道配置里填这个本地地址。配置方法和云端渠道基本一样只不过API地址填的是http://内网IP:11434这样的局域网地址。本地模型的好处是隐私绝对可控、没有按token计费的压力缺点是模型能力相比云端旗舰模型还是有差距响应速度也会受硬件影响。我的建议是采用“混合路由”策略日常聊天、问答这类没有敏感信息的请求走云端大模型涉及家庭重要文档、公司内部信息的内容单独分配一个令牌令牌允许的模型范围只包含本地模型这样即使成员误操作也不会把私密内容发到外部API。这个思路对家里有敏感文档需要处理的朋友特别实用。5.2 给共享助手加上知识库能力很多人看到标题里的“全家共享平台”问得最多的就是能不能让我家的AI助手认识我家的文件、记住我家的规矩答案是可以只需要在网关的上层或旁边再对接一个知识库组件。常见的方案是给平台配上RAG能力比如对接开源的向量数据库和文档解析服务或者直接使用支持知识库的客户端工具。我的实践经验是先整理一份“家庭成员共同知识库”目录把常用的说明书、学习资料、旅行计划文档等内容放进去然后让平台在用户提问时先做向量检索把相关片段拼进提示词再送给大模型生成答案。这个过程虽然实现要点功夫但效果非常值得。家人再也不用从一堆文件里翻找“上次买的那台打印机说明书上写的怎么换墨盒”直接问一句AI就能根据知识库内容给出答案。配置知识库时有两个细节提醒一是文档格式尽量统一成Markdown或纯文本PDF解析容易出乱码二是向量化后的内容要做好权限控制别让所有人都能查到所有人的文档。如果家里有孩子的作业记录、大人的工作文件至少按目录分开别混在一个库里。5.3 内网访问与安全策略建议既然是私有化部署网络访问边界就值得认真设计。如果家庭成员和团队成员都在同一局域网内使用最简单的策略是让平台只监听内网IP不暴露到公网。这样管理后台和API只能在内网访问外部完全摸不到安全性大大提高。如果你真的需要在外网访问家里的AI平台我建议优先考虑带有身份认证的反向代理方案并在前面加上访问控制而不是直接把网关的端口映射到公网。不管怎么选都要关闭平台自带的开放注册功能管理员手动创建令牌即可。同时开启定期备份任务把平台配置、数据库和密钥备份到另一个位置防止服务器故障导致全部配置丢失。注意永远不要在公网环境中使用默认的SESSION_SECRET或管理后台初始密码。这一类密钥一旦泄露攻击者可以直接接管你的AI网关借助你的上游API key产生大量费用这比账号本身被盗更棘手。6. 个人使用感受与几个小建议6.1 这个方案到底适合谁用了一段时间之后我最大的感受是“终于把AI费用这件事管明白了”。以前每个月算不清各家AI花多少钱现在后台一张图表清清楚楚。家里每个人也更愿意去用AI了因为不需要各自注册账号、记住各种订阅登录方式打开客户端填上域名和令牌就能用。对于崇尚极简、喜欢自己掌控数据的人而言这种体验非常舒服。但这个方案并不是适合所有人。如果你完全不想折腾技术只是想让家里人“像用微信一样用AI”那直接买几个现成会员可能更省心。自建平台需要你有一定的基础会看Docker日志、能填配置、愿意在出问题的时候花点时间排查。对于小团队和极客家庭来说这点门槛完全值得对于零基础用户可能就有些吃力了。6.2 最后的几个避坑心得如果这篇文章看完你决定自己也搭一套我再分享几个从实际使用中总结的小经验。第一刚开始给每个成员的额度一律设小不要想着“一步到位”。我一开始给家里人设置得很宽松结果有人一次性跑了一个几十万token的长文本任务当天的消耗一下子上去后台账单看着心疼。后来把额度调回保守水平并告诉成员“用完第二天自动恢复”大家反而会养成节约调用的习惯成本下降很明显。第二定期检查后台的日志和用量统计尤其是每周一次。我发现过两次异常记录一次是某个上游渠道的模型映射配置被误改导致请求一直报错另一次是某个成员的令牌疑似被外部工具扫到出现了非正常时段的大量调用。每周花十分钟看一眼问题都能在造成大损失之前被发现。第三自己维护一个“模型渠道状态小抄”。我习惯用一个文档记录所有上游渠道的到期时间、费率变化、限流情况每次上游价格调整或模型下线平台后台不一定同步需要人工去改。有了小抄升级模型、切换渠道时会方便很多不会手忙脚乱。搭建这套全家共享AI平台的过程本身也是一次对“AI基础设施”理念的实际体验。它让我意识到AI能力的价值不在于买多少个会员账号而在于用一套统一、可控、可观测的方式把这些能力真正融进家庭或团队的日常运转中。如果你家里或团队也有同样的AI协作需求不妨挑个周末试着自己部署一套按自己的方式定制分配策略那种“全家共用一套智能中枢”的感觉确实和一个个账号堆叠完全不一样。

相关推荐

SquareLine Studio + LVGL:嵌入式UI开发新范式
SquareLine Studio + LVGL:嵌入式UI开发新范式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 4:38:14

Atlas 300V实战:从YOLO模型转换到多路视频推理部署
Atlas 300V实战:从YOLO模型转换到多路视频推理部署

如果你在搜索引擎里敲下“atlas 300v 24g 是运算加速卡吗”,大概率是被“24G”这个数字吸引了。在GPU时代待久了,看到24G就会下意识想:这卡能不能跑大模型?能不能当通用显卡用?实话说,我第一次拿到Atlas 30… · 2026/9/25 4:38:14

嵌入式量产烧录版本管理:从文件命名到MES系统绑定的三级跳
嵌入式量产烧录版本管理:从文件命名到MES系统绑定的三级跳

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 4:38:08

数字图像处理与机器视觉:九次实验从像素操作到分类器落地
数字图像处理与机器视觉:九次实验从像素操作到分类器落地

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:22:09

ROS 2 RViz2 完全指南:从安装配置到TF调试与URDF显示
ROS 2 RViz2 完全指南:从安装配置到TF调试与URDF显示

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:22:03

ax编排入口:CLI+Kubernetes如何支撑agentic工作负载
ax编排入口:CLI+Kubernetes如何支撑agentic工作负载

1. 从"ax"这个标题说起:一个被低估的编排入口第一次看到"ax"这个标题,很多人会以为是某个命令行工具的缩写,或者某个内部项目的代号。但把关键词铺开来看——agentic、orchestrator、Kubernetes、CLI——这四个词拼在一起… · 2026/9/25 6:21:57

立创EDA专业版飞线层与网络颜色设置:PCB布线效率提升实战指南
立创EDA专业版飞线层与网络颜色设置:PCB布线效率提升实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:21:51

SCI论文投稿状态全解析:从Submitted到Accepted的完整流程与应对策略
SCI论文投稿状态全解析:从Submitted到Accepted的完整流程与应对策略

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:21:51

ESP32 如何运行 WebAssembly:WAMR 运行时翻译机制与 AOT 实践
ESP32 如何运行 WebAssembly:WAMR 运行时翻译机制与 AOT 实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:21:51

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码