上上个月一个跟我认识快十年的朋友花了4999块报了个AI变现训练营。学完之后他拉我喝酒说了一句让我印象极深的话最贵的不是那4999块钱是每天晚八点到十一点坐在电脑前听老师念PPT的六十个小时。更扎心的是课程群几千号人学到的东西我们后来花了两个晚上梳理了一遍发现95%都能在各家官方文档、GitHub仓库和免费社区帖里找到只是没人帮你把散落的信息归置成一棵能摘果子的树。那天之后我就在琢磨一件事能不能做一个开源网站把AI学习这件事从付费信息差里彻底解放出来工具汇总、Prompt案例、实战教程、学习路径全都有而且全部免费、全部开放源码让社区一起来维护。说干就干我们团队四个人——前端、后端、运营、内容编辑——硬是爆肝了30天把项目做出来并开源上线。这篇文章是全程复盘为什么我们敢说它能替代大部分付费AI课、30天里怎么拆功能排期、核心模块怎么用、拿到源码后怎么快速部署成自己的站点。准备报课犹豫不决的、自学AI但感觉信息太散的、想在企业内部搭AI知识库的朋友都可以先把这篇收藏起来再说。1. 从信息差生意到开源对抗这个网站到底替代了什么1.1 付费AI课的定价逻辑贵在帮你整理AI课程敢卖几千块其实不是老师水平多高而是他们完成了一件大多数人懒得做的事把分散在官方文档、Reddit帖子、GitHub issue、公众号文章和各路博客里的碎片信息按工具选择、案例演示、避坑提醒的顺序串成一套可以照着执行的流程。但这件事的成本并没有想象中高。AI圈子每天都有大量免费内容产出问题在于它们太散了一个最新的提示词技巧可能藏在一篇英文推文里一个工具的上手指南可能埋在某个开源库的README里。付费课赚的本质上是帮你省掉检索和筛选时间的服务费。问题在于AI这个领域的变化速度是按周算的。一门课从录制到卖到学员手里可能已经过了两三个月里面的模型版本、工具链接、推荐方案早就过时了。我们见过太多课程还在教已经被官方淘汰的调参方式学员照着做却跑不出课程里演示的效果最后还要被扣上一顶你操作有问题的帽子。1.2 我们的判断免费不是卖点可验证才是如果只是做一个免费的资源导航站市面上早就有不少了没什么稀罕。我们真正想做的是一个可验证的AI知识库。可验证体现在三个层面第一每条工具信息都标注了收录日期和验证状态链接失效或者功能变更会被社区标记出来第二每个Prompt案例都附带模型版本、参数设置和实测效果你自己就能复现第三整个站点的内容仓库是公开的任何人发现问题都可以提修改不像付费课程那样只有一个官方答案。这个定位跟开源理念天然契合内容公开、审核透明、版本可追溯。课程卖的是一次性交付我们做的是持续迭代的活文档。这也是为什么项目上线之后评论区有人说课程贩子该慌了——因为他们卖的静态内容在月更甚至周更的社区知识库面前确实没有竞争力。1.3 四个人、一个目标用30天做一张会生长的AI知识地图项目启动前我们坐下来开了个半天会最终定下四个内容支柱工具雷达、Prompt案例库、实战教程、学习路径。这四个模块刚好覆盖一个AI学习者的完整旅程先知道有什么工具再学会怎么用工具接着用工具解决实际问题最后按照适合自己的顺序一路进阶。团队配置也很简单前端负责整个站点和内容流水线后端负责搜索、评论和部署脚本运营负责从各种渠道搜罗资源和对接贡献者内容编辑负责把所有素材改写成统一格式并审核准确性。30天听起来很长但实际上光是整理前200条工具数据就花了将近10天中间还不断有这条链接失效了这个模型改名了之类的事打断节奏。我们当时给项目取了个内部代号叫AI地图意思是它不是一个静态网站而是一张持续更新的地图。后来开源的时候我们把仓库、文档、部署方案全部公开任何人clone下来都能在半小时内跑起一个属于自己的AI知识站。2. 30天开发实录功能规划、技术选型与排期复盘2.1 前三天我们先定内容骨架而不是急着写代码很多开源项目一上来就搞脚手架、订框架我们反着来前三天纯粹在讨论内容怎么组织。因为对于一个以内容为核心的站点数据结构决定了后续所有功能的开发成本。我们梳理出了四大内容类型的字段需求内容类型核心字段维护特点工具/站点名称、链接、分类、价格模型、API文档、评分、标签链接易失效需要定期校验Prompt案例标题、适用模型、参数设置、输入模板、输出示例、效果评估需要附带可复现条件实战教程应用场景、难度、耗时、步骤拆解、前后对比场景驱动按行业分类学习路径节点列表、前置要求、预估周期、推荐工具链随工具更新持续调整这套设计有一个好处新增一条内容不需要动代码只需要按字段格式往仓库里加一个Markdown文件或者一条JSON记录CI脚本会自动做格式校验和链接检查。发布新内容就跟提交代码一样走Pull Request流程任何社区成员都能参与。2.2 数据模型以可检索、可更新、可审核为第一原则很多内容站把数据存数据库里后台做个管理界面这当然没问题但对开源社区项目来说有个天然矛盾后台权限不好开放给陌生人。所以我们在设计上做了一个关键取舍——内容即代码。所有内容条目都以Markdown和JSON文件的形式存放在Git仓库里目录结构按分类组织文件名就是条目ID。这么做有三个直接好处GitHub天然就是内容管理后台编辑、审阅、版本回滚、历史记录全都有了不需要自己开发管理后台。提交门槛低会写Markdown的人就能贡献内容不需要学你后台那套表单逻辑。部署简单构建时直接读取文件生成页面静态页为主成本极低。搜索这块一开始我们想用Elasticsearch后来发现没必要。当前体量下一个支持中文分词的轻量级全文检索组件完全够用实测内容量到上万条之后单机查询耗时依然是几十毫秒级别用户无感知。2.3 技术栈怎么选的为什么是Next.js Markdown 轻量API技术选型我们是带着一个人也能维护的思路去做的。前端用Next.js看重的是它对内容型网站的天然适配支持静态生成SEO友好Markdown渲染生态成熟还可以按需混入动态功能。样式上直接用Tailwind开发速度快主题定制也方便。后端刻意做得轻薄。除了容器化部署脚本和一个负责搜索、评论、数据校验的轻量API服务没有引入复杂的微服务架构。数据层用SQLite起步等量级上去了再平滑迁到PostgreSQL反正我们做了存储层抽象切换就是改个连接串的事。为什么这样设计因为开源项目最怕的就是维护者跑路就没法玩。技术栈越主流、依赖越少、部署越简单社区接手的门槛就越低。我见过太多优秀的开源项目死在了架构太复杂没人敢碰上。轻量是长期主义的第一课。2.4 内容流水线三个人喂数据一个人抓质量30天里功能开发其实只占了一半时间另一半时间全在内容整理上。我们搭了一条半自动化的内容流水线运营用爬虫脚本和手工检索从各个渠道抓取候选链接和文章先丢进候选池内容编辑按模板改写成标准格式最后后端写了个链接校验脚本批量检查URL可用性死链直接标记删除。这条流水线最值得说的是质量门槛。比如工具记录不能只写这是一款AI写作工具必须包含适用场景、价格模型、免费额度、替代品对比四个要素。Prompt案例则必须写清楚模型版本和参数凡是我随便试了试感觉不错这种无法复现的内容一律打回。上线前我们实测了一下内容通过率大概是60%也就是说接近四成的初稿会被打回要求补充信息。这个标准看起来死板但它保证了站内内容的可信度也是我们敢跟付费课叫板的底气。2.5 上线前夜我们忍痛砍掉了三个功能按最初规划这个项目有六个核心功能但做到第三周结束我们发现进度撑不住了。团队开了个线上会最终砍掉三个项目个人学习记录、站内信、智能推荐。砍掉的理由很一致这三个功能都需要用户系统支撑而用户系统意味着注册、登录、数据安全、私密存储开发量和后续维护成本是几何级上升。对于验证一个开源项目的早期阶段来说优先级太低。这是我在这个项目里学到的很重要的一课MVP不是做最少的可用功能而是砍到只剩你最核心的价值主张。我们的价值主张是内容质量与可检索性那就把80%精力放在内容和搜索上。用户系统等社区真需要了再做也不迟。3. 模块拆解每个功能在设计时的真实意图与日常用法3.1 工具雷达不是导航站是工具的红黑榜做工具收录的时候我们反复提醒自己不要做第二个导航站。导航站的价值是什么都有但用户真正需要的其实是什么值得用。所以在每条工具记录里除了基础的功能简介、价格模型和链接我们还加入了两个特殊的字段适合谁用和注意什么。比如某AI绘画工具功能很强大但学习曲线陡峭适合有设计基础的人新手可能更适合从另一个一键出图工具入门。这类信息在官方页面和导航站里都找不到只有真实用过的人才知道。校验机制也值得一提。运营每周跑一次链接巡检自动检测状态码和页面标题变化。如果一个工具改名、更换域名或者产品下线系统会自动生成一条待审核工单由编辑确认后更新或移除。这样用户看到的永远是最新的状态而不是半年前收录的死链。3.2 Prompt案例库拆到参数级的模板到底长什么样Prompt案例是我们访问量最高的模块之一。很多人对提示词的理解还停留在写一段好话发给AI但实际上一个可靠的Prompt是需要拆解参数的。以我们的一个爆款案例用AI生成小红书爆款文案为例完整的条目包含五部分任务描述模板、输入变量说明、参数配置建议、实测输出示例、常见调整方向。其中参数配置建议会注明在不同模型下的差异比如Temperature设置在什么范围适合创意文案、在什么范围适合事实性内容不同版本模型的默认值是什么。为什么要拆这么细因为同一个Prompt在不同模型、不同参数下效果可能天差地别。我们把所有前提条件写清楚用户照抄就能得到接近我们演示的效果这才是可复现。相比课程里那种大家看这个Prompt很神奇的演示这明显更有参考价值。3.3 实战教程我们不写理论只写今天就能用的场景很多AI教学内容喜欢从原理讲起什么Transformer架构、什么注意力机制对大多数想在工作和副业场景里用AI的人来说这其实是多余负担。我们的教程模块全部以场景为入口做PPT、写周报、做数据清洗、生成短视频脚本、搭客服机器人、做商品详情页每个教程都遵循问题描述、工具选择、操作步骤、踩坑提醒、前后对比的统一结构。拿数据清洗来说教程会先放一个脏数据的实际例子然后给出完整的处理流程用什么工具、把原始数据整理成什么格式、给AI什么指令、中间遇到AI输出格式不对时怎么修正。结尾还会附上如果数据量超过一万行怎么办的进阶建议。这种写法更贴近真实需求。用户遇到问题时搜索到的不是泛泛而谈的概念解释而是可以照着操作的完整方案。这也是我们总结出来的一个经验内容站的教程宁可窄而深不要宽而浅。3.4 三条学习路径从不知道学什么到按图索骥学习路径模块解决的是信息过载问题。站点内容多了之后新手进来很容易迷路。所以我们设计了三条预置学习路径每条路径都是一串有序节点每个节点会关联对应的工具介绍、Prompt案例和实战教程办公效率路径约2-3周覆盖文档撰写、表格处理、PPT制作、会议纪要等高频场景不涉及代码。创作者路径约3-4周覆盖文案、绘图、视频、音频等内容生产方式重点在工具组合和流程搭建。开发者路径约2-3个月从模型API调用开始逐步深入到Agent开发、本地部署和前后端集成。路径不是死的。用户可以在路径图上打勾标记进度也可以跳过自己已经掌握的部分。设计的时候我们特意让节点之间保持松耦合这样任何节点更新了关联到的其他路径也能自动同步展示无需手工维护版本。4. 部署指南从克隆仓库到公网可访问的完整流程4.1 需要什么配置一台2核4G的服务器就够很多人以为开源项目一旦涉及AI就得堆GPU其实我们这个站点纯属内容型应用最重的操作也就是全文检索那一下。按目前的访问量估算一台2核4G内存的云服务器跑Docker容器同时扛几百个在线用户没有任何压力。如果你只是本地体验一台性能过得去的开发机就够了连Docker都不装手动装Node环境也能跑。我们开发阶段就是每个人各自在笔记本上跑联调时才部署到测试服务器。推荐的最低配置如下配置项建议值说明CPU2核构建时稍慢运行时足够内存4GBSQLite和静态服务非常省带宽5Mbps起步页面以静态为主流量可控域名建议准备不配域名也能用IP访问但HTTPS不好做4.2 Docker部署五条命令跑起来部署流程我们花了不少精力打磨最终目标是让没有任何运维经验的人也能在半小时内看到自己的站点。用Docker Compose的话整个过程非常直接git clone https://github.com/your-org/ai-knowledge-map.git cd ai-knowledge-map cp .env.example .env docker compose up -d# docker-compose.yml 核心服务定义 services: web: build: . ports: - 3000:3000 env_file: .env restart: unless-stopped api: build: ./api ports: - 8080:8080 volumes: - ./data:/app/data restart: unless-stopped启动之后浏览器访问服务器的3000端口就能看到站点。如果配了域名再在前面加一层Caddy或者Nginx做反向代理和HTTPS证书这一步也花不了十分钟。4.3 手动部署方式如果你不想用Docker手动部署也就几步先装Node.js 18以上版本然后安装依赖并构建静态文件再用PM2把API服务挂起来。整个流程如下npm install npm run build npm run export pm2 start ecosystem.config.js需要注意一点构建之前先确认.env文件里的配置项填好尤其是搜索服务的连接地址和站点的基础URL。填错的话最直观的症状就是页面能打开但搜索功能返回空结果这个我们上线第一天就被用户抓到过。4.4 部署中的常见问题与解决思路端口被占用默认用3000端口如果服务器上有其他项目占用了改docker-compose.yml里映射的宿主端口即可。搜索不生效多半是API服务没起来或者.env里的地址写错了。先看docker ps确认api容器在跑再curl一下API的健康检查地址。图片加载慢内容里引用的外部图片受对方站点速度影响建议在Nginx层做一层图片代理或者缓存体感会好很多。更新到最新版本git pull之后重新docker compose up -d --build数据卷中的数据不会丢。5. 开源之后社区怎么共建、项目怎么长期活下去5.1 内容审核机制从提报到上线的三级流程开源的内容站最怕的是被塞垃圾数据和广告所以我们设计了一套三级审核流程任何人通过Pull Request提交内容后先由自动化脚本检查格式、链接和字段完整度再进入编辑初审最后由核心维护者终审合并。全程都在GitHub上公开进行谁提的、谁审的、什么时候改的全部可追溯。这套机制最大的价值是建立信任。用户可以放心引用站内信息因为每一条都过了人工审核。审核标准我们写在CONTRIBUTING.md里包括不收录纯广告页面评测内容必须基于真实使用链接必须稳定可靠等硬性要求。5.2 贡献指南连不想写代码的人也能参与开源项目不等于只有程序员能贡献。我们这个项目有大量内容维护工作完全不涉及代码看到一条失效的链接改一下就好读了一篇好教程摘录成符合格式的内容条目提上来就行。贡献方式大致分四类内容提交新增工具、Prompt案例或教程这是最常见的贡献方式。链接巡检定期帮我们跑巡检脚本手动验证可疑链接并提交修复。文档改进安装部署文档、排版优化、英文翻译都能直接帮到新用户。功能开发搜索、评论、API、数据可视化Roadmap上等着人认领的活儿不少。为了降低参与门槛我们把如何提第一个Pull Request写成了一篇带截图的分步指南新手看一遍大概十几分钟就能上手。5.3 项目治理与接下来的Roadmap项目许可证选了Apache 2.0允许商用、修改和再分发这是开源生态里比较共识的选择。治理上我们采用核心维护者模块负责人的轻量模式搜索、内容、部署三个模块各有一个负责人核心维护者负责全局协调和最终审核。下一步的方向也很明确一是开放API接口让第三方工具能直接调用我们的内容数据二是增加个性化学习路径根据用户的目标和基础动态生成推荐三是做AI辅助的内容校验用模型帮我们初步筛出疑似过时的信息。社区里已经有十几个朋友表示愿意参与等第一波API接口合并后估计会有一个小爆发。最后再说两句实在话。项目做到第20天的时候我们其实还处于这玩意儿到底有没有人会用的自我怀疑里。上线一周之后第一次看到通讯群里有人发截图说按照站点上的教程三小时搞定了一份季度汇报的时候那种感觉比当年收到第一个Offer还踏实。如果你也想搭一个类似的知识站我的建议是先想清楚内容分类再动手写代码别急着上功能。工具可以换技术栈可以重写但一套好的内容结构能让你省掉至少一半的返工时间。另外把这个仓库收藏起来因为AI工具的更替速度比你想的快。
