├── .gitignore ├── LICENSE ├── README.md └── doc ├── 240119.md ├── 240123.md ├── 240210.py ├── 240217.md ├── 240218.md ├── 240502.md ├── 240516.md ├── 240526.md ├── 240626.md ├── 240627.md ├── grok_cookies.md ├── images ├── 240119 │ ├── 1.png │ ├── 2.png │ └── 3.png ├── 240217 │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ ├── 7.png │ ├── 8.png │ └── 9.jpg ├── 240218 │ └── 1.png ├── 240502 │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ └── 7.png ├── 240526 │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ └── 5.png └── 240627 │ ├── 1.png │ ├── 10.png │ ├── 11.png │ ├── 12.png │ ├── 13.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ ├── 7.png │ ├── 8.png │ └── 9.png └── n8n ├── community_mcp.json ├── dual_way_mcp.json └── hacker_new_to_email.json /.gitignore: -------------------------------------------------------------------------------- 1 | # Build and Release Folders 2 | bin-debug/ 3 | bin-release/ 4 | [Oo]bj/ 5 | [Bb]in/ 6 | 7 | # Other files and folders 8 | .settings/ 9 | 10 | # Executables 11 | *.swf 12 | *.air 13 | *.ipa 14 | *.apk 15 | 16 | # Project files, i.e. `.project`, `.actionScriptProperties` and `.flexProperties` 17 | # should NOT be excluded as they contain compiler settings and other important 18 | # information for Eclipse / Flash Builder. 19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 技术爬爬虾 全网同名,转载请注明出处 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | 我是技术爬爬虾,分享好玩实用软件DIY的科技博主 3 |
B站,抖音,公众号,Youtube全网同名 4 |
这里是往期视频的资源列表 5 |
爬爬虾自制课程[《小白玩转Git/Github,全功能精讲》](https://www.bilibili.com/cheese/play/ss33708) 6 |
此页面的备用地址: [github.com/tech-shrimp/me](https://www.github.com/tech-shrimp/me) 7 | 8 | | **标题** | **视频** | **文字版** | **资源/项目地址** | 9 | |--- | --- | --- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 10 | |最强开源AI工作流n8n,上千插件+模板,效率起飞| || [HackerNew工作流](/doc/n8n/hacker_new_to_email.json)
[双向MCP工作流](/doc/n8n/dual_way_mcp.json)
[社区MCP工作流](/doc/n8n/community_mcp.json)
[n8n Github首页](https://github.com/n8n-io/n8n)
[HackerNews RSS](https://hnrss.github.io/)
[FireCrawl](https://www.firecrawl.dev/)
[地图开放平台](https://lbs.baidu.com/apiconsole/center)
[百度地图MCP](https://lbsyun.baidu.com/faq/api?title=mcpserver/base)| 11 | |免费容器部署平台,玩转AI客户端,工作流,alist, 数据库....| [视频](https://www.bilibili.com/video/BV1zKVtzFEQH/) || | 12 | |免费域名能干什么?CDN,个人网站,访问家庭内网等 | [视频](https://www.bilibili.com/video/BV1uAVLzCEmH/) || | 13 | |全球最强开源模型Qwen3,全场景实测+本地部署教程 | [视频](https://www.bilibili.com/video/BV12ZG1zWEEh/) || | 14 | |MCP+智能体,开发AI版“你画我猜”效率翻倍 | [视频](https://www.bilibili.com/video/BV12XL8zpEfp/) || | 15 | |独立开发者省钱之穷鬼套餐,从零开始完整实战,不花一分钱上线完整应用 | [视频](https://www.bilibili.com/video/BV1kY5XzrE6L/) || | 16 | |CherryStudio搭建本地AI知识库,三大痛点与进阶方案 | [视频](https://www.bilibili.com/video/BV1NMoFYoEsb/) || | 17 | |无需本地部署,5分钟在云端搭建MCP智能体 | [视频](https://www.bilibili.com/video/BV1sRdDYeEbH/) || | 18 | |开挂体验+1,通过MCP光速建站,毫秒级访问 | [视频](https://www.bilibili.com/video/BV157dJYbEti/) || | 19 | |一句话命令AI操作浏览器替我打工,Browser Use原理+实战 | [视频](https://www.bilibili.com/video/BV1vZfKYeEDk/) || | 20 | |一口气介绍15种MCP工具,CherryStudio配置MCP | [视频](https://www.bilibili.com/video/BV1MjZ5YrESn/) || | 21 | |我被AI智能体整破防!如何像搭积木一样构建Agent | [视频](https://www.bilibili.com/video/BV1F7XzYJEYd/) || | 22 | |MCP是怎么对接大模型的?抓取AI提示词,拆解MCP的底层原理 | [视频](https://www.bilibili.com/video/BV1P3XTYPEJm/) || | 23 | |MCP是啥?技术原理是什么?一个视频搞懂MCP的一切。Windows系统配置MCP,Cursor Cline使用MCP | [视频](https://www.bilibili.com/video/BV1AnQNYxEsy/) || | 24 | |两款开源版Manus很强么?本地部署教程+对比实测 OpenManus与Owl效果怎么样 | [视频](https://www.bilibili.com/video/BV1XpRsYiEe5/) || | 25 | |https真安全么? 抓包解密https的两种原理+实战 开源软件mitmproxy与wireshark如何抓包https | [视频](https://www.bilibili.com/video/BV1w7ADeLEPE/) || | 26 | |Cursor太贵?分享三个免费AI编程方案+海量编程技巧【如何看待AI编程】 | [视频](https://www.bilibili.com/video/BV1b5AeeGEFc/) || | 27 | |顶级开源AI视觉模型,全场景实战+本地部署教程 | [视频](https://www.bilibili.com/video/BV1C8KpeVEAt/) || | 28 | |最快最稳的DeepSeek,榨干微软字节两大厂,解锁知识库,联网搜索等高级功能 | [视频](https://www.bilibili.com/video/BV1NCNPeZENF/) || | 29 | |DeepSeek R1 满血免费 API,昇腾芯片+DeepSeek国产AI表现如何 | [视频](https://www.bilibili.com/video/BV1T2FreXETz/) || | 30 | |不要本地部署DeepSeek了,免费光速版API,70B蒸馏模型 | [视频](https://www.bilibili.com/video/BV1EHFueSEZQ/) || | 31 | |DeepSeek API 到底怎么用?5大场景实战评测,AI知识库,AI翻译,AI编程 | [视频](https://www.bilibili.com/video/BV1aWFWeyE6D/) || | 32 | |NodeJs杀手?Deno从入门到实战,免费部署web应用 | [视频](https://www.bilibili.com/video/BV1gpffYuEPS/) || | 33 | |全自动HTTPS加密,开箱即用,Caddy基础入门,反向代理,负载均衡,网站托管全流程 | [视频](https://www.bilibili.com/video/BV1z5w6ekE1L/) || | 34 | |10秒部署Gemini多模态AI应用+API中转,不限地区开箱即用 | [视频](https://www.bilibili.com/video/BV1jxrvYMEKT/) || | 35 | |Cloudflare中转顶级大模型API,国内免费爽用,Gemini编程,音视频,多模态能力测试 | [视频](https://www.bilibili.com/video/BV1xS66YAEwm/) || | 36 | |网络顶级掠食者 Wireshark抓包从入门到实战 | [视频](https://www.bilibili.com/video/BV12X6gYUEqA/) || | 37 | |开源PDF翻译神器,科研论文必备!本地部署+原理介绍 ,PDF翻译成中文 | [视频](https://www.bilibili.com/video/BV1MHk9Y2Ef7/) || | 38 | |格局!小米Home Assistant官方集成,Docker安装HA,智能家居终极解决方案,小米智能设备接入HomeKit | [视频](https://www.bilibili.com/video/BV1d2kJYhEdK/) || 小米官方集成: [https://github.com/XiaoMi/ha_xiaomi_home](https://github.com/XiaoMi/ha_xiaomi_home)
Docker安装教程: [https://github.com/tech-shrimp/docker_installer](https://github.com/tech-shrimp/docker_installer)
Home Assistant官网: [https://www.home-assistant.io/installation/linux](https://www.home-assistant.io/installation/linux) | 39 | |四款开源开发工具,免费安全优雅好用,Tabby终端工具,Bruno测试工具,DBeaver数据库管理工具 | [视频](https://www.bilibili.com/video/BV13dBLYNErd/) || Tabby开源首页: [https://github.com/Eugeny/tabby](https://github.com/Eugeny/tabby)
Bruno开源地址: [https://github.com/usebruno/bruno](https://github.com/usebruno/bruno)
DBeaver开源地址: [https://github.com/dbeaver/dbeaver](https://github.com/dbeaver/dbeaver)
VSCode: [https://code.visualstudio.com/](https://code.visualstudio.com/) | 40 | |两种免费防御DDoS攻击的实战攻略,详细教程演示 | [视频](https://www.bilibili.com/video/BV1d2kJYhEdK/) || Cloudflare官网: [https://dash.cloudflare.com/](https://dash.cloudflare.com/) | 41 | |安装包体积减少91%!Tauri基础入门,下一代全平台开发框架,Tauri对比Electron有什么优势? | [视频](https://www.bilibili.com/video/BV1WfqWY3EGg/) |[文字版](https://mp.weixin.qq.com/s/6xW7fs2GMuGxoHIVtK1eiA)| Tauri官网: [https://tauri.app/](https://tauri.app/)
Github地址: [https://github.com/tauri-apps/tauri](https://github.com/tauri-apps/tauri) | 42 | |三行命令,免费申请https加密证书,一次配置,永久生效。NAS/家庭内网服务配置TLS加密,自建网站配置SSL/TLS加密 | [视频](https://www.bilibili.com/video/BV1UNzmYpEZz/) |[文字版](https://mp.weixin.qq.com/s/QKTD0w0V5Ah25L8oOxdqag)| 项目地址: [https://github.com/acmesh-official/acme.sh](https://github.com/acmesh-official/acme.sh) | 43 | |PDF转markdown,AI知识库绝配,科研文献整理必备,MinerU将PDF转化为机器可读格式的工具 | [视频](https://www.bilibili.com/video/BV1eqzBYzEd9/) |[文字版](https://mp.weixin.qq.com/s/PtbOFGS_E5F-2JZV61lMtA)| 项目地址: [https://github.com/opendatalab/MinerU](https://github.com/opendatalab/MinerU)
官网演示: [ https://opendatalab.com/OpenSourceTools/Extractor/PDF]( https://opendatalab.com/OpenSourceTools/Extractor/PDF) | 44 | |连续登顶Github的信息聚合神器Follow 打破信息茧房,高效获取咨询。RSS技术是什么? | [视频](https://www.bilibili.com/video/BV1S2UDYWEKs/) || Follow官网: [https://follow.is/](https://follow.is/)
Github地址: [https://github.com/RSSNext/Follow](https://github.com/RSSNext/Follow) | 45 | |IPv6发展得怎样了? 如何使用IPv6访问家庭内网设备,保护网络安全 | [视频](https://www.bilibili.com/video/BV1jiUrYgEMY/) || TrackerList: [https://github.com/XIU2/TrackersListCollection](https://github.com/XIU2/TrackersListCollection)
ddns-go:[https://github.com/jeessy2/ddns-go](https://github.com/jeessy2/ddns-go) | 46 | |盘点Github限量免费的高级功能,Action, Package, LFS, CodeSpace 都是什么?| [视频](https://www.bilibili.com/video/BV1Agm6YLEJL/) || | 47 | |一个软件搞定全球视频下载,8万star的开源视频下载器| [视频](https://www.bilibili.com/video/BV1A2DVY2EC5/) || 项目地址 [https://github.com/yt-dlp/yt-dlp](https://github.com/yt-dlp/yt-dlp)
ffmpeg官网:[https://ffmpeg.org](https://ffmpeg.org) | 48 | |开发一个AI行程助手,UP主只用了一下午| [视频](https://www.bilibili.com/video/BV1rRSnY8EfB/) || | 49 | |为什么Javascript的fetch需要等待两次?三分钟了解网络异步编程| [视频](https://www.bilibili.com/video/BV1LYSoYHEmo/) || 演示项目地址:[https://github.com/tom-on-the-internet/fetch-demonstration](https://github.com/tom-on-the-internet/fetch-demonstration)| 50 | |没有公网IP?cloudflare优选IP,高速内网穿透,优选IP高速内网穿透| [视频](https://www.bilibili.com/video/BV1PPy6YzE5C/) |[文字版](https://mp.weixin.qq.com/s/m4JoAuu2kb891nZ_uyVK8Q)| | 51 | |永远不要使用Git Pull, 直接使用Git Pull拉代码,被同事狠狠diss了!| [视频](https://www.bilibili.com/video/BV1McyYYtEX4/) || | 52 | |无痕模式能保护隐私么? 浏览器指纹是什么?14种指纹背后的技术原理 | [视频](https://www.bilibili.com/video/BV1VmmNYAE53/) |[文字版](https://mp.weixin.qq.com/s/1kdRJBbFqJmeMejYfXZ84A)|[开源库fingerprintjs](https://github.com/fingerprintjs/fingerprintjs)
[ip数据库](https://ip-api.com)
[WebGL报告](https://browserleaks.com/webgl)
[Canvas指纹](https://browserleaks.com/canvas)
[音频指纹](https://audiofingerprint.openwpm.com/)| 53 | |https安全体系的最后两块拼图。 DNS污染?SNI阻断?全新网络协议保护隐私安全 | [视频](https://www.bilibili.com/video/BV1sT2pY8EEE/) |文字版(https://mp.weixin.qq.com/s/mH3Qjy8FUgIOSbcDrtaLlg)|[阿里云Doh](https://223.5.5.5/dns-query)
[ECH测试](https://defo.ie/ech-check.php) | 54 | |正则表达式逃课攻略,3个现代化工具无痛掌握正则 | [视频](https://www.bilibili.com/video/BV1oc4TezEjT/) ||[regexr速查](https://regexr.com/)
[可视化](https://regex-vis.com/)
[ChatGPT](https://chatgptplus.cn/) | 55 | |盘点现代浏览器的各种神奇能力,功能令人惊讶😮 | [视频](https://www.bilibili.com/video/BV1BP4peXEty/) |[文字版](https://www.bilibili.com/read/cv39509403/)|[简易版量子纠缠](https://bgstaal.github.io/multipleWindow3dScene/)
[在线截图](https://www.kaisir.cn/js-screen-shot/)
[网页录屏](https://recorder.getcontrast.io/)
[Media Recorder](https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder)
[在线文件重命名](https://rename.jgrass.xyz/)| 56 | |国内免费使用Claude3.5的几种方法 | [视频](https://www.bilibili.com/video/BV1pH4y1F7wQ/) ||[大模型竞技场](https://lmarena.ai/)
[Claude公益站点](https://kelaode.ai/)
[Fuclaude](https://demo.fuclaude.com/) | 57 | |Mac虚拟机, 在Win的Linux子系统的Docker里运行MacOS,操作系统大套娃 | [视频](https://www.bilibili.com/video/BV1j2421o77K/) |[文字版](https://www.bilibili.com/read/cv39486209/)| [Github项目地址](https://github.com/sickcodes/Docker-OSX)| 58 | |宇宙级编辑器VSCode你真的会用么?提高生产力的巨量技巧 | [视频](https://www.bilibili.com/video/BV14Z421N7t6/) |[文字版](https://www.bilibili.com/read/cv39387501/)| | 59 | |世界上装机量最大的数据库SQLite,低调但不小众。 微信数据库 竟然长这样? | [视频](https://www.bilibili.com/video/BV1Pw4m1k7uo/) |[文字版](https://www.bilibili.com/read/cv39359086/)| [SQLite官网](https://www.sqlite.org/index.html)
[微信数据库导出](https://github.com/xaoyaoo/PyWxDump)| 60 | |cloudflare worker是什么?零基础教程,代码详解,本地开发环境 | [视频](https://v.douyin.com/iMoF5pq3/) || | 61 | |运行在Windows上的Linux子系统,WSL超详细教程 | [视频](https://www.bilibili.com/video/BV1tW42197za/) || | 62 | |windows为什么有两个命令行工具?cmd与powershell的区别 | [视频](https://www.bilibili.com/video/BV1Nx4y147n3/) |[文字版](https://www.bilibili.com/read/cv36709597/)| | 63 | |Youtube去广告,白嫖会员功能,Youtube开源客户端 | [视频](https://www.bilibili.com/video/BV16z421z7C3/) || [NewPipe项目下载](https://github.com/TeamNewPipe/NewPipe/releases)| 64 | |2024两种永久免费域名,手快有手慢无,可托管CF,零失败率,解决所有问题 | [视频](https://www.bilibili.com/video/BV1by411B7Ko/) |[文字版](https://www.bilibili.com/read/cv36206669/)| [免费域名1 register.us.kg](https://register.us.kg)
[免费域名2 www.cloudns.net](https://www.cloudns.net) | 65 | |只用Github免费功能,上线仿抖音开源网站。使用Github Action+Pages免费部署网站 | [视频](https://www.bilibili.com/video/BV1sb421n7cB/) |[文字版](https://www.bilibili.com/read/cv36101985/)|| 66 | |双域名白嫖Cloudflare优选IP,最优CDN给自己网站加速,尽情享受CF免费服务 | [视频](https://www.bilibili.com/video/BV1SM4m1176E/) |[文字版](https://www.bilibili.com/read/cv35968646/)|| 67 | |白嫖Cloudflare无限多企业邮箱,可收发邮件 | [视频](https://www.bilibili.com/video/BV1JS411A7se/) |[文字版](https://www.bilibili.com/read/cv35969252/)|| 68 | |盘点AI大模型接入微信的方法,全网最全最细喂饭级教程 | [视频](https://www.bilibili.com/video/BV1JS411A7se/) |[文字版](/doc/240627.md)|项目地址: [https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat)| 69 | |一个视频解决Docker安装, Pull, 找镜像等难题,停服风波后,Docker怎么办 | [视频](https://www.bilibili.com/video/BV1fS411A71Y/) |[文字版](https://github.com/tech-shrimp/docker_installer)|项目地址: [https://github.com/tech-shrimp/docker_installer](https://github.com/tech-shrimp/docker_installer)| 70 | |仅需一个Github账号,让文字在互联网中永生 超轻量级个人博客框架Gmeek | [视频](https://www.bilibili.com/video/BV1GM4m1m7ZD/) | [文字版](https://www.bilibili.com/read/cv35706652/) |项目地址: [https://github.com/Meekdai/Gmeek](https://github.com/Meekdai/Gmeek)| 71 | |Cloudflare浑身都是宝,普通用户能白嫖多少服务?盘点cloudflare的免费功能 | [视频](https://www.douyin.com/video/7380007983696071977) |[文字版](https://www.bilibili.com/read/cv35424302/)|Cloudflare官网: [https://dash.cloudflare.com/](https://dash.cloudflare.com/)| 72 | |Docker镜像停服? 我编写了一个镜像转存工具,解决国内无法使用docker的问题,解决docker镜像无法拉取问题,修复docker pull失败 | [视频](https://www.bilibili.com/video/BV1Zn4y19743/) |[文字版](https://www.bilibili.com/read/cv35249690/) | 项目地址: [https://github.com/tech-shrimp/docker_image_pusher](https://github.com/tech-shrimp/docker_image_pusher)
阿里云镜像服务器:[https://cr.console.aliyun.com/](https://cr.console.aliyun.com/)| 73 | |没有公网IP? 免费域名搭建cloudflare内网穿透,不限流量,不用绑卡支付 | [视频](https://www.bilibili.com/video/BV1H4421X7Wg/) |[文字版](https://www.bilibili.com/read/cv35069293/) | | 74 | |RSS订阅微信公众号,摆脱广告与算法束缚。打造高效信息聚合平台。开源免费项目WeWe RSS详细教程一键安装 | [视频](https://www.bilibili.com/video/BV17b421i7hd/) |[文字版](https://www.bilibili.com/read/cv35024107/) | 本期开源项目: [https://github.com/cooderl/wewe-rss](https://github.com/cooderl/wewe-rss)
RSS阅读器桌面版:[https://github.com/yang991178/fluent-reader](https://github.com/yang991178/fluent-reader)
RSS阅读器安卓版:[https://github.com/allentown521/FocusReader](https://github.com/allentown521/FocusReader) | 75 | |一分钟在Windows/Linux/Mac系统安装Docker,零失败! | [视频](https://www.bilibili.com/video/BV1vm421T7Kw/) |[文字版](doc/240526.md) | Docker Desktop下载:[https://www.docker.com/products/docker-desktop/](https://www.docker.com/products/docker-desktop/) | 76 | |一键部署NewBing到国内免费域名,AI绘图神器DALLE3 | [视频](https://www.bilibili.com/video/BV1Dy41187dv/) |[文字版](https://www.bilibili.com/read/cv34810846/) | 项目地址:[https://github.com/Harry-zklcdc/go-proxy-bingai](https://github.com/Harry-zklcdc/go-proxy-bingai)
Cloudflare: [https://dash.cloudflare.com](https://dash.cloudflare.com)
ClouDNS: [https://www.cloudns.net](https://www.cloudns.net)
成品站点:[bing.tech-shrimp.com](https://bing.tech-shrimp.com/)
成品站点:[bing.techshrimp.cloudns.ch](https://bing.techshrimp.cloudns.ch) | 77 | |如何低成本获得一个域名,托管Cloudflare实现免费DNS | [视频](https://www.bilibili.com/video/BV1Mz421e76M/) |[文字版](https://www.bilibili.com/read/cv34719285/) | [Namesilo](https://www.namesilo.com)
[Cloudflare](https://dash.cloudflare.com/)
[ClouDNS](https://www.cloudns.net/)| 78 | |最新AI-GPT4o,国内免费使用,官网账户直登 | [视频](https://www.bilibili.com/video/BV1Cm421T7gw/) |[文字版](https://www.bilibili.com/read/cv34590247/) | [RawChat](https://chat.rawchat.cc/)
[共享账户](doc/240516.md)| 79 | |拥有带公网IP的家庭服务器有多香?详细教程 + 场景盘点 | [视频](https://www.bilibili.com/video/BV1rM4m1C7i3/) | | | 80 | |外网访问家庭内网的两大最优方案,零基础教程 远程控制家庭电脑 | [视频](https://www.bilibili.com/video/BV15T421X7aa/) |[文字版](https://www.bilibili.com/read/cv34489621/) | DDNS Go下载:[https://github.com/jeessy2/ddns-go/releases](https://github.com/jeessy2/ddns-go/releases)| 81 | |低配电脑变身低功耗,功能全的Linux服务器| [视频](https://www.bilibili.com/video/BV1Gb421a7BW/) |[文字版](https://gitee.com/tech-shrimp/me/blob/master/doc/240502.md) | RustDesk下载:[https://github.com/rustdesk/rustdesk/releases](https://github.com/rustdesk/rustdesk/releases)
HomeAssistant官网:[https://www.home-assistant.io/](https://www.home-assistant.io/)| 82 | |Ubuntu24.04LTS震撼发布,12年长期维护!手把手安装教程,拯救旧电脑| [视频](https://www.bilibili.com/video/BV1NM4m1f7Q6/) |[文字版](https://www.bilibili.com/read/cv34156490/) | ubuntu官网:[https://ubuntu.com ](https://ubuntu.com )
Ubuntu Pro注册:[https://login.ubuntu.com](https://login.ubuntu.com)
个人Token激活Pro: [https://ubuntu.com/pro/dashboard ](https://ubuntu.com/pro/dashboard) | 83 | |Windows特殊文件夹,用了这么多年电脑,竟然不知道?| [视频](https://www.bilibili.com/video/BV1ou4m1F7sD/) |[文字版](https://www.bilibili.com/read/cv34102616/) | | 84 | |Github王炸功能Pages,免费免服务器上线网站,详细教程| [视频](https://www.bilibili.com/video/BV12H4y1N7Q4/) |[文字版](https://www.bilibili.com/read/cv33936618/) | 个人博客模板:[https://github.com/Huxpro/huxpro.github.io ](https://github.com/Huxpro/huxpro.github.io )
表白代码收藏馆:[https://github.com/sun0225SUN/Awesome-Love-Code](https://github.com/sun0225SUN/Awesome-Love-Code)
样例一成品:[https://tech-shrimp.github.io](https://tech-shrimp.github.io)
样例二成品:[https://tech-shrimp.com](https://tech-shrimp.com)| 85 | |WindTerm官网被冒充,开源软件怎么使用才安全 | [视频](https://www.bilibili.com/video/BV1JZ421Y7P1/) | [文字版](https://www.bilibili.com/read/preview/33810694)| VirusTotal:[https://www.virustotal.com/](https://www.virustotal.com/)
云沙盒:[https://s.threatbook.com/](https://s.threatbook.com/) | 86 | |网页翻译终极方案,免费解锁翻译插件的会员功能 | [视频](https://www.bilibili.com/video/BV1W1421m7EE/) | [文字版](https://www.bilibili.com/read/cv33774465/) | DeepLX 项目地址:[https://github.com/OwO-Network/DeepLX](https://github.com/OwO-Network/DeepLX)
API URL:[https://api.deeplx.org/translate](https://api.deeplx.org/translate) 87 | |【硬核】开发朋友圈导出,我用了哪些技术? | [视频](https://www.bilibili.com/video/BV1vp421972w/) | [文字版](https://www.bilibili.com/read/cv33711175/) | Github地址:[https://github.com/tech-shrimp/WechatMoments/](https://github.com/tech-shrimp/WechatMoments)
百度网盘:https://pan.baidu.com/s/1_gpbHZ6aY1brp4eIipW4HA
提取码:1234 88 | |近期爆火的开源软件一键生成视频,在家躺赚收益,Github开源项目 MoneyPrinterTurbo | [视频](https://www.bilibili.com/video/BV1zM4m1R7Uq/) | [文字版](https://www.bilibili.com/read/cv33613833/) | Github地址:[https://github.com/harry0703/MoneyPrinterTurbo](https://github.com/harry0703/MoneyPrinterTurbo) 89 | |UP主爆肝一个月,自制微信朋友圈导出工具 | [视频](https://www.bilibili.com/video/BV1qq421A7aF/) | [文字版](https://www.bilibili.com/read/cv33526320/) | Github地址:[https://github.com/tech-shrimp/WechatMoments/](https://github.com/tech-shrimp/WechatMoments)
百度网盘:https://pan.baidu.com/s/1_gpbHZ6aY1brp4eIipW4HA
提取码:1234 90 | |这个神奇网站,在国内免费无限使用三个顶级AI大模型,大模型竞技场lmsys | [视频](https://www.bilibili.com/video/BV1pj421Z7p5/) | |网站:[https://arena.lmsys.org/](https://arena.lmsys.org/) | 91 | |不是copilot用不起,免费编程助手更有性价比,ChatGPT4,Claude3免费用 | [视频](https://www.bilibili.com/video/BV1dx4y1D73a/) | | | 92 | |8个简单有用windows命令,肯定有你不知道的技巧
榨干硬盘空间,文件加密,局域网信息,公网信息,链路诊断
链接过的wifi密码,win11免登录,系统修复 | [视频](https://www.bilibili.com/video/BV1Yy421B7zu/) |[文字版](https://www.bilibili.com/read/cv32512166/) | | 93 | |自动追更,自动下载动漫/电视剧,RSS订阅追番追剧 | [视频](https://www.bilibili.com/video/BV1Nx4y1C7Qz/) |[文字版](https://www.bilibili.com/read/cv32079640/) | RSShub国内镜像:[https://rsshub.netlify.app/](https://rsshub.netlify.app/)
电视剧ID查询:[https://www.mp4us.com/html/kHqyEX88888X.html](https://www.mp4us.com/html/kHqyEX88888X.html)
动漫BT资源站 [https://share.acgnx.net](https://share.acgnx.net) | 94 | |打破信息茧房,高效获取资讯,RSSHub最简单使用方法 | [视频](https://www.bilibili.com/video/BV1mz42197g1/) |[文字版](https://www.bilibili.com/read/cv31814283/) | RSS阅读器 Fluent Reader:[https://github.com/yang991178/fluent-reader](https://github.com/yang991178/fluent-reader)
RSS阅读器手机版 :[https://github.com/yang991178/fluent-reader-lite](https://github.com/yang991178/fluent-reader-lite)
RSShub国内镜像:[https://rsshub.netlify.app/](https://rsshub.netlify.app/) | 95 | |我用AI大模型管理智能家电,全网唯一完整教程+源代码 | [视频](https://www.bilibili.com/video/BV1mx421Z7yP/) |[文字版](https://gitee.com/tech-shrimp/me/blob/master/doc/240218.md) | HomeAssistant教程:[https://www.bilibili.com/video/BV1Zw411N7W9/](https://www.bilibili.com/video/BV1Zw411N7W9/)
HomeAssistant教程2:[https://www.bilibili.com/video/BV1Bu4y1w7d1/](https://www.bilibili.com/video/BV1Bu4y1w7d1/)| 96 | |钉钉对接全网AI,最好的智能管家方案。详细步骤,喂饭教程。 | [视频](https://www.bilibili.com/video/BV1Cu4m1P71J/) |[文字版](https://gitee.com/tech-shrimp/me/blob/master/doc/240217.md) | 项目Github地址:[https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat)| 97 | |表白代码收藏馆 程序员也懂浪漫,免费使用Github部署爱情网页 | [视频](https://www.bilibili.com/video/BV1J4421w7CH/) |[文字版](https://www.bilibili.com/read/cv31263565/) | Github地址:[https://github.com/sun0225SUN/Awesome-Love-Code](https://github.com/sun0225SUN/Awesome-Love-Code)| 98 | |程序员编程解密春晚刘谦魔术,动画演示+完整代码 【守岁共此时】 | [视频](https://www.bilibili.com/video/BV16p421R7A6/) | | 源代码:[https://gitee.com/tech-shrimp/me/blob/master/doc/240210.py](https://gitee.com/tech-shrimp/me/blob/master/doc/240210.py)| 99 | |春节看电视的完美方案,Github大神出手的免费软件 | [视频](https://www.bilibili.com/video/BV1mp421Z7kP/) | | Github地址:[https://github.com/lizongying/my-tv](https://github.com/lizongying/my-tv)
教程网站:[https://lyrics.run/my-tv.html](https://lyrics.run/my-tv.html)| 100 | |你的下一个博客何必是博客,Github也能写文章 | [视频](https://www.bilibili.com/video/BV1jw41177sm/) | [文字版](https://www.bilibili.com/read/cv30196580/) | 101 | |PandoraNext倒下了,国内免费使用ChatGPT4的最新方法 | [视频](https://www.bilibili.com/video/BV1U6421G7uV/) | [文字版](https://www.bilibili.com/read/cv30468896/) | RawChat项目:[https://github.com/RawChat/RawChat](https://github.com/RawChat/RawChat)
共享站:[https://sharedchat.cn/shared.html](https://sharedchat.cn/shared.html)
免费GPT4:[free01.xyz](http://free01.xyz)
免费GPT4:[cc.gpt4fr.ee](https://cc.gpt4fr.ee)
字节跳动Coze: [https://www.coze.com/](https://www.coze.com/)| 102 | |国内外AI大模型编程比拼,谁是Python之王?| [视频](https://www.bilibili.com/video/BV1Ni4y1s7ay/) | [文字版](https://gitee.com/tech-shrimp/me/blob/master/doc/240123.md) | 103 | |四个简单的小脚本,完美解决Windows使用痛点,Win10右键菜单,永久暂停Windows更新,卸载小组件,家庭版开启hyper-v| [视频](https://www.bilibili.com/video/BV1FV411979n/) | [文字版](https://gitee.com/tech-shrimp/me/blob/master/doc/240119.md) | [脚本库](https://gitee.com/tech-shrimp/me/blob/master/doc/240119.md) | 104 | |企业微信对接全网AI,还能做电影下载,智能管家。企业微信免费接入Genimi,超详细步骤,喂饭教程。企业微信可信域名怎么设置| [视频](https://www.bilibili.com/video/BV1xg4y1m7wW/) | [文字版](https://www.bilibili.com/read/cv29550040/) | 项目主页:[https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat)
项目说明:[https://docs.link-ai.tech/cow/quick-start](https://docs.link-ai.tech/cow/quick-start) | 105 | |Github Action 怎么用 Github的王炸功能,但很少人知道怎么用?| [视频](https://www.bilibili.com/video/BV11e411i7Xx/) | [文字版](https://www.bilibili.com/read/cv29118676/) | [https://github.com/tech-shrimp/GithubActionSample](https://github.com/tech-shrimp/GithubActionSample) | 106 | | 白嫖微信官方推送,课程提醒,给女友的天气预报| [视频](https://www.bilibili.com/video/BV1Ng4y1r7EP/) | [文字版](https://www.bilibili.com/read/cv28928153/) | [https://github.com/tech-shrimp/FreeWechatPush](https://github.com/tech-shrimp/FreeWechatPush/) | 107 | | 免费批量翻译API,白嫖翻译接口,Excel批量翻译,视频自动翻译配音 DeepLX开源项目 | [视频](https://www.bilibili.com/video/BV16N4y1q7Zz/) | [文字版](https://www.bilibili.com/read/cv28870583/) | [https://github.com/OwO-Network/DeepLX](https://github.com/OwO-Network/DeepLX) | 108 | | 微信机器人运行在Linux服务器上?消息自动回复,Docker一键部署。详细安装使用 | [视频](https://www.bilibili.com/video/BV19i4y1a7aG/) | [文字版](https://www.bilibili.com/read/cv28706223/) | [https://github.com/danni-cool/docker-wechatbot-webhook](https://github.com/danni-cool/docker-wechatbot-webhook) | | 109 | | 不到5M的开源软件,竟能大幅提升windows使用体验 | [视频](https://www.bilibili.com/video/BV1yu4y1J7Yk/) | [文字版](https://www.bilibili.com/read/cv28591143/) | [https://www.bilibili.com/read/cv28591143/](https://www.bilibili.com/read/cv28591143/) | 110 | | 微信聊天记录能保存成word,excel?一键导出备份微信,爆火项目,开源免费! | [视频](https://www.bilibili.com/video/BV1zu4y1T7JD/) | [文字版](https://www.bilibili.com/read/cv28552671/) | 项目地址:https://github.com/LC044/WeChatMsg
网盘链接:https://pan.baidu.com/s/17-2msoXlO9PKvhMOshacPQ 提取码:1234 | 111 | | windows旧电脑做免费NAS!备份照片 分享视频 Syncthing开源免费安全 SMB在线编辑协作 | [视频](https://www.bilibili.com/video/BV1b94y1N7vr/) | [文字版](https://www.bilibili.com/read/cv28477989/) | Syncthing下载页 [https://docs.syncthing.net/users/contrib.html](https://docs.syncthing.net/users/contrib.html)
安装包链接:[https://pan.baidu.com/s/1iI1FDpZ7oq3jwZ9Y8EcZig](https://pan.baidu.com/s/1iI1FDpZ7oq3jwZ9Y8EcZig)提取码:1234
Github主页 [https://github.com/syncthing/syncthing](https://github.com/syncthing/syncthing) | 112 | | 看片没字幕,生肉啃不动?不要怕!神器在手天下我有 | [视频](https://www.bilibili.com/video/BV1Cc411i7Yr/) | [文字版](https://www.bilibili.com/read/cv28398000/) | 项目地址:[https://github.com/jianchang512/pyvideotrans](https://github.com/jianchang512/pyvideotrans)
下载地址:[https://pan.baidu.com/s/12JIPyVJJ6O_kTKIbI81lKA](https://pan.baidu.com/s/12JIPyVJJ6O_kTKIbI81lKA) 提取码:1234  | 113 | | 三幅图看懂虚拟机网络,hyper-v | vmware网络设置教程 | [视频](https://www.bilibili.com/video/BV1uQ4y1V77E/) | [文字版](https://www.bilibili.com/read/cv28329672/) | | 114 | | hyper-v虚拟机安装ubuntu,免费开源linux桌面操作系统 | [视频](https://www.bilibili.com/video/BV1QG411e7pn/) | | [https://www.bilibili.com/read/cv26880911/](https://www.bilibili.com/read/cv26880911/) | 115 | | 手机静音找不到怎么办?原创全网最优雅的找手机方法 米家智能网关接入home assistant | [视频](https://www.bilibili.com/video/BV1Bu4y1w7d1/) | [文字版](https://www.bilibili.com/read/cv27958239/) | [https://www.bilibili.com/read/cv27798040/](https://www.bilibili.com/read/cv27798040/) | 116 | | 微信还能接入http协议?定制微信机器人,做消息推送,办公自动化,AI聊天 | [视频](https://www.bilibili.com/video/BV1c94y1E7zj/) | [文字版](https://www.bilibili.com/read/cv27878465/) | 项目主页 [https://github.com/lich0821/WeChatFerry](https://github.com/lich0821/WeChatFerry)
微信客户端:[https://pan.baidu.com/s/1d1vt95cRb6csSdQvxq6KXg](https://pan.baidu.com/s/1d1vt95cRb6csSdQvxq6KXg) 提取码:1234 | 117 | | 智能家居终极方案!Win一键安装HomeAssistant | [视频](https://www.bilibili.com/video/BV1Zw411N7W9/) | [文字版](https://www.bilibili.com/read/cv27798040/) | 项目Github主页:[https://github.com/AlexxIT/HassWP](https://github.com/AlexxIT/HassWP)
网盘下载地址:[https://pan.baidu.com/s/17otzp6gmvD1OSstnRSkB9g](https://pan.baidu.com/s/17otzp6gmvD1OSstnRSkB9g) 
提取码:1234  | 118 | | 【ChatGLM3】离线开源GPT,高级功能详解,工具调用+代码解释器 | [视频](https://www.bilibili.com/video/BV1Eu411F7iR/) | | 一键部署包: https://pan.baidu.com/s/1SAOUxt08zWK80Wnrrev87g 提取码:1234 | 119 | | 旧电脑不要扔!局域网共享4K电影给手机电视 | [视频](https://www.bilibili.com/video/BV1qe411D7cJ/) | [文字版](https://www.bilibili.com/read/cv27652523/) | kodi下载  [https://kodi.tv/download/](https://kodi.tv/download/)
音范丝 [https://www.yinfans.net/](https://www.yinfans.net/)
Grab 4k [https://www.grab4k.com/](https://www.grab4k.com/)
网盘聚合搜索 [http://m.reju888.com/app/index.html?id=211227bxb](http://m.reju888.com/app/index.html?id=211227bxb) 密码8888 | 120 | | 旧电脑不要扔!你还能用来。。。最简单便宜家庭服务器 | [视频](https://www.bilibili.com/video/BV1Lc411R7xM/) | [文字版](https://www.bilibili.com/read/cv27583394/) | 微PE工具箱:  [https://www.wepe.com.cn/](https://www.wepe.com.cn/)
Windows10镜像:   [https://www.microsoft.com/zh-cn/software-download/windows10](https://www.microsoft.com/zh-cn/software-download/windows10)
360驱动大师   [https://baoku.360.cn/sinfo/102181033_4000978.html](https://baoku.360.cn/sinfo/102181033_4000978.html)
贝锐向日葵   [https://sunlogin.oray.com/](https://sunlogin.oray.com/) | 121 | | 公众号竟然还能这么玩?专属自己的微信AI助理。 微信公众号接入讯飞星火API保姆级教程 | [视频](https://www.bilibili.com/video/BV1zB4y1d7ok/) | [文字版](https://www.bilibili.com/read/cv27424512/) | 项目代码:
[https://github.com/NoobHumiliator/wechat_official_ai](https://github.com/NoobHumiliator/wechat_official_ai)
网盘链接:[https://pan.baidu.com/s/1pD1u7TsCtOy4nshlM5OsTA](https://pan.baidu.com/s/1pD1u7TsCtOy4nshlM5OsTA) 提取码:1234  | 122 | | 【ChatGLM3】最强的离线开源版ChatGPT,一键部署,解压即用 | [视频](https://www.bilibili.com/video/BV1Vw411u7Y3/) | | CUDA下载安装 :https://developer.nvidia.com/cuda-downloads
ChatGLM3 一键部署包: https://pan.baidu.com/s/1SAOUxt08zWK80Wnrrev87g 提取码:1234
ChatGLM3 Github主页 : https://github.com/THUDM/ChatGLM3 | 123 | | 微信聊天记录备份导出保姆级教程,还给手机储存自由 | [视频](https://www.bilibili.com/video/BV1D84y1R7Qv/) | [文字版](https://www.bilibili.com/read/cv27353677/) | itunes 可以直接从苹果 / 微软应用商店下载
wechat exporter:[https://github.com/BlueMatthew/WechatExporter](https://github.com/BlueMatthew/WechatExporter)
网盘地址:[https://pan.baidu.com/s/1-75xFMrjaKjOmRIDAT4faw](https://pan.baidu.com/s/1-75xFMrjaKjOmRIDAT4faw) 提取码:1234 | 124 | | Bilibili直播自动录制 | [视频](https://www.bilibili.com/video/BV1vj411e7jq/) | [文字版](https://www.bilibili.com/read/cv27285015/) | 项目Github地址:  [https://github.com/BililiveRecorder/BililiveRecorder](https://github.com/BililiveRecorder/BililiveRecorder)
项目官网下载(推荐:)[https://rec.danmuji.org/](https://rec.danmuji.org/) | 125 | | 讯飞星火+微信=贾维斯?微信机器人接入国产GPT | [视频](https://www.bilibili.com/video/BV1dB4y1o7b4/) | [文字版](https://www.bilibili.com/read/cv27210302/) | | 126 | | 注意看!营销号AI配音究竟哪里来的?Python最好的文字转语音工具微软edge-tts | [视频](https://www.bilibili.com/video/BV1gy4y1K7bz/) | [文字版](https://www.bilibili.com/read/cv27146691/) | Github地址:  [https://github.com/rany2/edge-tts/](https://github.com/rany2/edge-tts/) | 127 | | Github暴打字体版权流氓,免费可商用字体下载安装保姆教程 | [视频](https://www.bilibili.com/video/BV1Rh4y1B7qp/) | | 思源黑体 Github 主页
https://github.com/adobe-fonts/source-han-sans
猫啃网https://www.maoken.com/ | 128 | | 完美畅连Github+Steam商店 开源免费免登录一键安装 Watt Toolkit | [视频](https://www.bilibili.com/video/BV1MV411c7Q2/) | [文字版](https://www.bilibili.com/read/cv26974497/) | | 129 | | 【2023】5分钟安装PyCharm+Python玩转开源项目【无废话】【保姆级教程】 | [视频](https://www.bilibili.com/video/BV1fw411w7Us/) | | | 130 | | 为什么它是Windows最好的虚拟机? hyper-v虚拟机详细安装教程,虚拟机优劣对比 | [视频](https://www.bilibili.com/video/BV1Jj411b7j4/) | [文字版](https://www.bilibili.com/read/cv26880911/) | [https://www.bilibili.com/read/cv26880911/](https://www.bilibili.com/read/cv26880911/) | 131 | 132 | -------------------------------------------------------------------------------- /doc/240119.md: -------------------------------------------------------------------------------- 1 | Windows11 最大劝退点就是这个右键菜单,复制粘贴都变成一点点的小图标,最气人的是点击底部的显示更多选项才能展示全部功能。让许多本来点一次就能完成的操作变成两次。其实使用一个小命令就能修改回win10版本的菜单。本期将分享四个简单的bat脚本,却能完美解决windows使用的四个痛点。 2 | ## 切换Windows10的右键菜单 3 | 管理员权限,打开cmd控制台,输入以下两行命令
切换到win10版右键菜单: 4 | ```shell 5 | reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve 6 | taskkill /f /im explorer.exe & start explorer.exe 7 | ``` 8 | 恢复到win11版右键菜单: 9 | ```shell 10 | reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f 11 | 12 | taskkill /f /im explorer.exe & start explorer.exe 13 | ``` 14 | ## 永久暂停Windows自动更新 15 | 众所周知,windows更新非常频繁,而且有时候会强制重启更新。设置里的暂停也最多暂停一个月。
下面这个脚本就可以永久暂停Windows更新。
管理员权限,打开cmd控制台,依次输入以下这行命令 16 | ```shell 17 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" /v FlightSettingsMaxPauseDays /t reg_dword /d 9999 /f 18 | ``` 19 | ## 卸载小组件 20 | Win11搜索框右侧的小组件,打开以后发现
![image.png](/doc/images/240119/1.png)
就是是纯纯的广告位,虽然可以在设置里面关闭这个按钮,但是依旧在后台占用着内存
![image.png](/doc/images/240119/2.png)
下面的命令就是永久卸载小组件
管理员权限,打开cmd控制台,依次输入以下这两行命令 21 | ```shell 22 | winget uninstall MicrosoftWindows.Client.WebExperience_cw5n1h2txyewy 23 | taskkill /f /im explorer.exe & start explorer.exe 24 | ``` 25 | 执行完即卸载的非常彻底,设置里得开关甚至都消失了。
重新安装小组件 26 | ```shell 27 | winget install 9MSSGKG348SP 28 | ``` 29 | 30 | ## 家庭版开启hyper-v 31 | hyper-v是Windows自带的虚拟机平台,但是仅限专业版或者旗舰版用户开启。爬爬虾之前有一个视频完整介绍了hyper-v的用法。
如果你是Windows 10或者11的家庭版用户(右键我的电脑——属性,里面能看到Windows版本),想开启hyper-v功能,可以进行如下操作
1、新建一个文本文档,复制以下代码到文本文档中。 32 | ```powershell 33 | pushd "%~dp0" 34 | 35 | dir /b %SystemRoot%servicingPackages*Hyper-V*.mum >hv.txt 36 | 37 | for /f %%i in ('findstr /i . hv.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%servicingPackages%%i" 38 | 39 | del hv.txt 40 | 41 | Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL 42 | 43 | pause 44 | ``` 45 | 2、将文本文档改名为"hv.bat",需注意.bat是扩展名,如果看不到扩展名的话在文件夹窗口上方的查看-显示里勾选文件扩展名
3、右键单击hv.bat,选择**以管理员身份**运行。
4、你会看到命令行在安装Hyper-V,安装完成后会有以下显示。
![image.png](/doc/images/240119/3.png)
5、完成后重启电脑。 46 | 47 | -------------------------------------------------------------------------------- /doc/240123.md: -------------------------------------------------------------------------------- 1 | 爬爬虾准备了七个小题,我们来测验一下AI大模型的Python编程能力
评分标准 每个题10分是否答对5分 + 解释清晰5分 2 | 3 | 1. Python 中 `print(True,True,True==(True,True,True))` 的结果是什么 4 | 5 | 2. python全局的if块里面的变量仍然是全局变量 这句话对不对 6 | 7 | 3. python 中 正则表达式 \p{Cc} 与\p{Cntrl} 还有 \p{Cn} 还有 \p{Co}的区别 8 | 9 | 4. Python 中 10 | ```python 11 | print(isinstance(object, type)) 12 | print(isinstance(type, object)) 13 | ``` 14 | 的结果是什么 15 | 5. python如何限定一个函数只接受关键字参数 16 | 17 | 6. Python中 18 | ```python 19 | def create_multipliers(): 20 | return [lambda x: i * x for i in range(5)] 21 | for multiplier in create_multipliers(): 22 | print(multiplier(2)) 23 | ``` 24 | 的结果是什么 25 | 26 | 7. Python中 27 | ```python 28 | array = [1,3,5] 29 | g = (x for x in array if array.count(x)>0) 30 | array = [5,7,9] 31 | print(list(g)) 32 | ``` 33 | 输出结果是什么 34 | 35 | 最终得分 36 | 37 | | 题目编号 | Gemini | Claude | GPT3.5 | GPT4.0 | 讯飞星火 | 文心一言 | 通义千文 | 38 | | --- | --- | --- | --- | --- | --- | --- | --- | 39 | | 1 | 0 | 9 | 9 | 9 | 0 | 0 | 9 | 40 | | 2 | 0 | 8 | 3 | 10 | 5 | 4 | 4 | 41 | | 3 | 5 | 4 | 5 | 9 | 3 | 6 | 7 | 42 | | 4 | 5 | 8 | 1 | 10 | 0 | 10 | 5 | 43 | | 5 | 0 | 0 | 9 | 10 | 0 | 0 | 3 | 44 | | 6 | 0 | 9 | 9 | 10 | 0 | 1 | 10 | 45 | | 7 | 0 | 2 | 8 | 2 | 0 | 8 | 1 | 46 | | 总分 | 10 | 40 | 44 | 60 | 8 | 29 | 39 | 47 | 48 | 49 | 50 | 51 | GPT4以60分的高分遥遥领先其他选手,获得了本期Python编程之王比赛的冠军。
从这次测试来看GPT4对编程基础概念的掌握已经非常优秀,但是逻辑推理,代码调试的能力有所欠缺。
在实际编程中,建议把AI当做技术文档,查阅询问一些基础知识。而复杂逻辑的理解,编码调试还是需要依靠程序员自己。 52 | 53 | 54 | -------------------------------------------------------------------------------- /doc/240210.py: -------------------------------------------------------------------------------- 1 | import random 2 | 3 | # 名字长度 2-7 的自然数 4 | name_length = 2 5 | # 南方1 北方2 分不清3 6 | north_south = 1 7 | # 男1 女2 8 | gender = 1 9 | 10 | cards = [1, 2, 3, 4] 11 | cards = cards + cards 12 | print(cards) 13 | # [1, 2, 3, 4, 1, 2, 3, 4] 14 | 15 | # 将队头的name_length张插入队尾 16 | for _ in range(name_length): 17 | cards.append(cards.pop(0)) 18 | print(cards) 19 | # [3, 4, 1, 2, 3, 4, 1, 2] 20 | 21 | # 将队头的三个元素 插入中间 22 | top_three = cards[:3] 23 | last_five = cards[3:] 24 | # 随机生成插入位置 25 | location = random.randint(1, 4) 26 | cards = last_five[:location] + top_three + last_five[location:] 27 | print(cards) 28 | # [2, 3, 3, 4, 1, 4, 1, 2] 29 | 30 | 31 | under_butt = cards.pop(0) 32 | print("屁股下的牌:" + str(under_butt)) 33 | # 屁股下的牌:2 34 | 35 | top_cards = cards[:north_south] 36 | last_cards = cards[north_south:] 37 | # 随机生成插入位置 38 | location = random.randint(1, 7-north_south-1) 39 | cards = last_cards[:location] + top_cards + last_cards[location:] 40 | print(cards) 41 | # [3, 4, 3, 1, 4, 1, 2] 42 | 43 | for _ in range(gender): 44 | cards.pop(0) 45 | print(cards) 46 | # [4, 3, 1, 4, 1, 2] 47 | 48 | print("见证奇迹的时刻") 49 | for _ in range(7): 50 | cards.append(cards.pop(0)) 51 | print(cards) 52 | # [3, 1, 4, 1, 2, 4] 53 | 54 | while len(cards) > 1: 55 | # 好运留下来 56 | cards.append(cards.pop(0)) 57 | # 烦恼丢出去 58 | cards.pop(0) 59 | print(cards) 60 | ''' 61 | [3, 3, 4, 1, 2, 1] 62 | [4, 1, 2, 4, 3] 63 | [2, 4, 3, 4] 64 | [3, 4, 2] 65 | [2, 3] 66 | [2] 67 | ''' 68 | assert cards[0] == under_butt 69 | -------------------------------------------------------------------------------- /doc/240217.md: -------------------------------------------------------------------------------- 1 | 各位学生党,打工人可能都遭受过钉钉的折磨,打工人有多恨这个软件资本家就有多爱它。今天我们不妨格局打开,站在资本家的角度,注册一个钉钉企业,看看钉钉后台管理界面都有哪些实用功能,体会一下当老板的快乐。本期主要使用钉钉的聊天机器人功能,演示部署开源项目chatgpt-on-wechat,将AI大模型接入钉钉。下期继续来整个活,用钉钉+AI+HA管理智能家居,肯定比小爱同学强多啦,感兴趣的话可以三连关注下。
2 | 3 | ### 1.注册钉钉企业 4 | [https://oa.dingtalk.com/register_new.htm?showmenu=false#/](https://oa.dingtalk.com/register_new.htm?showmenu=false#/) 5 | 6 | ### 2.创建应用 7 | 8 | 1. 进入钉钉开发者后台[https://open-dev.dingtalk.com/fe/app#/corp/app](https://open-dev.dingtalk.com/fe/app#/corp/app),登录后,点击**创建应用**,填写应用相关信息。 9 | 10 | ![](/doc/images/240217/1.png) 11 | 12 | 2. 点击添加应用能力,选择 "机器人" 能力,点击**添加**。 13 | 14 | ![](/doc/images/240217/2.png) 15 | 16 | 3. 配置机器人信息后点击**发布**。发布后,点击“**点击调试**”,会自动创建测试群聊,可在客户端查看: 17 | 18 | ![](/doc/images/240217/3.png) 19 | 20 | 4. 点击**版本管理与发布**,创建新版本发布 21 | 22 | ![](/doc/images/240217/4.png) 23 | 24 | 5. 点击**凭证与基础信息**,获取Client ID和Client Secret两个参数 25 | 26 | ![](/doc/images/240217/5.png) 27 | 28 | ### 3.获取通义千问**Access Key** 29 | 注册并实名认证阿里云
官方地址:[https://ram.console.aliyun.com/manage/ak](https://ram.console.aliyun.com/manage/ak) 30 | 31 | 1. 获取AccessKey AccessKeySecret 32 | 33 | ![](/doc/images/240217/6.png) 34 | 35 | 2. 进入阿里云百炼 [https://bailian.console.aliyun.com/](https://bailian.console.aliyun.com/) 36 | 37 | 应用管理->模型->调用 获取 AgentKey和AppId
![](/doc/images/240217/7.png)
![](/doc/images/240217/8.png)
38 | 39 | ### 4.通义千问接入钉钉 40 | 我们使用的开源项目 chatgpt-on-wechat
项目地址:
[https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat) 41 | 42 | ### 5.ubuntu系统安装docker 43 | 找一个Linux服务器安装docker, 下面脚本已ubuntu为例
不要求服务器有公网IP
安装docker 44 | ```shell 45 | sudo apt update 46 | sudo apt-get install ca-certificates curl gnupg lsb-release software-properties-common 47 | curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - 48 | sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 49 | sudo apt-get install docker-ce docker-ce-cli containerd.io 50 | ``` 51 | 52 | ### 6.下载docker compose 53 | 执行以下命令下载 docker-compose.yml 54 | ```shell 55 | wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml 56 | ``` 57 | 58 | ### 7.修改配置 59 | 修改docker compose文件,主要配置从24行以下开始 60 | ```shell 61 | version: '2.0' 62 | services: 63 | chatgpt-on-wechat: 64 | image: zhayujie/chatgpt-on-wechat 65 | container_name: chatgpt-on-wechat 66 | security_opt: 67 | - seccomp:unconfined 68 | environment: 69 | OPEN_AI_API_KEY: 'YOUR API KEY' 70 | PROXY: '' 71 | SINGLE_CHAT_PREFIX: '["bot", "@bot"]' 72 | SINGLE_CHAT_REPLY_PREFIX: '"[bot] "' 73 | GROUP_CHAT_PREFIX: '["@bot"]' 74 | GROUP_NAME_WHITE_LIST: '["ChatGPT测试群", "ChatGPT测试群2"]' 75 | IMAGE_CREATE_PREFIX: '["画", "看", "找"]' 76 | CONVERSATION_MAX_TOKENS: 1000 77 | SPEECH_RECOGNITION: 'False' 78 | CHARACTER_DESC: '你是通义千问,你旨在回答并解决人们的任何问题。' 79 | EXPIRES_IN_SECONDS: 3600 80 | USE_GLOBAL_PLUGIN_CONFIG: 'True' 81 | USE_LINKAI: 'False' 82 | LINKAI_API_KEY: '' 83 | LINKAI_APP_CODE: '' 84 | ## 模型相关配置 85 | MODEL: 'qwen' 86 | ## 以下四个参数参考文档https://help.aliyun.com/document_detail/2587494.html 87 | ## 见3.1小节 3.2小节 88 | QWEN_ACCESS_KEY_ID: "xxxxxxxxxxxxxxxxxxxxxxxx" 89 | QWEN_ACCESS_KEY_SECRET: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 90 | QWEN_AGENT_KEY: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 91 | QWEN_APP_ID : "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 92 | ## Node ID为空 93 | QWEN_NODE_ID: "" 94 | ## 钉钉相关配置 95 | ## 见文档https://docs.link-ai.tech/cow/multi-platform/dingtalk 96 | ## 即2.5小节获取的两个值 97 | CHANNEL_TYPE: "dingtalk" 98 | DINGTALK_CLIENT_ID: "xxxxxxxxxxxxxxxxxxxx" 99 | DINGTALK_CLIENT_SECRET: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 100 | 101 | ``` 102 | 103 | ### 8.启动容器 104 | 修改完成后将docker启动起来 105 | ```shell 106 | # 启动docker 107 | sudo docker compose up -d 108 | # 查看日志 109 | sudo docker logs chatgpt-on-wechat 110 | # 停止docker 如果修改配置文件必须先停止再启动 111 | ## sudo docker compose down 112 | ``` 113 | 114 | ### 9.使用 115 | 打开钉钉APP,进入企业直接搜索机器人名字,与其对话即可
![](/doc/images/240217/9.jpg) 116 | -------------------------------------------------------------------------------- /doc/240218.md: -------------------------------------------------------------------------------- 1 | 我用钉钉接入AI大模型,还有home assistant,自己设计了一个AI智能管家。那么他跟小爱智能音箱比有什么优点呢?我认为有3点,首先是极高的智能性,我的这套代码可以替换成任意一种AI大模型,比如ChatGPT4,甚至即将上线的ChatGPT5,这就比智障小爱同学强了一百个天猫精灵。然后是高度的可定制化,我使用Python代码编写程序,不再局限于米家APP的有限配置,具有更高的自由度跟可玩性,理论上它能调动家里任意设备,实现任意的自动化流程。目前我这个项目还只是个100多行代码的小Demo,我只调通了基本流程,很多不足还是需要改进。很适合爱学习爱折腾的观众朋友深入研究,这就是第三个优点,折腾过程中可以学到很多Python编程,大模型应用等相关知识 。爬爬虾之前视频讲过家庭服务器,HomeAssistant,还有钉钉接入AI大模型等等的基础内容,所以这期有些步骤我会讲的比较快,建议大家补一下之前视频对一些工具有更多了解。 2 | 3 | 我先介绍一下技术选型,我选的聊天工具是钉钉,钉钉方案最大优点是不需要公网IP,正好适合部署在家庭服务器上,大模型是通义千问,目前是限时免费的。智能家居当然是Home Asssistant, 可玩性最高的智能家居管理平台。下面马上开始干货教程,希望各位观众一键三连鼓励下新人UP。 4 | 5 | 6 | ### 1.注册钉钉企业 7 | [https://oa.dingtalk.com/register_new.htm?showmenu=false#/](https://oa.dingtalk.com/register_new.htm?showmenu=false#/) 8 | 9 | ### 2.创建应用 10 | 11 | 1. 进入[钉钉开发者后台](https://open-dev.dingtalk.com/fe/app#/corp/app),登录后,点击**创建应用**,填写应用相关信息。 12 | 13 | ![](/doc/images/240217/1.png) 14 | 15 | 2. 点击添加应用能力,选择 "机器人" 能力,点击**添加**。 16 | 17 | ![](/doc/images/240217/2.png) 18 | 19 | 3. 配置机器人信息后点击**发布**。发布后,点击“**点击调试**”,会自动创建测试群聊,可在客户端查看: 20 | 21 | ![](/doc/images/240217/3.png) 22 | 23 | 4. 点击**版本管理与发布**,创建新版本发布 24 | 25 | ![](/doc/images/240217/4.png) 26 | 27 | 5. 点击**凭证与基础信息**,获取Client ID和Client Secret两个参数 28 | 29 | ![](/doc/images/240217/5.png) 30 | 31 | ### 3.获取通义千问**Access Key** 32 | 注册并实名认证阿里云
官方地址:[https://ram.console.aliyun.com/manage/ak](https://ram.console.aliyun.com/manage/ak) 33 | 34 | 1. 获取AccessKey AccessKeySecret 35 | 36 | ![image.png](/doc/images/240217/6.png) 37 | 38 | 2. 进入阿里云百炼 [https://bailian.console.aliyun.com/](https://bailian.console.aliyun.com/) 39 | 40 | 应用管理->模型->调用 获取 AgentKey和AppId
![image.png](/doc/images/240217/7.png) 41 | 42 | ### 4.部署HomeAssistant 43 | home Assistant是一个开源项目,他是智能家居的终极解决方案,可以将各种厂商的智能设备接入同一平台。
关于home Assistant的部署使用 可以看一下这两期教程
[https://www.bilibili.com/read/cv27798040/](https://www.bilibili.com/read/cv27798040/)
[https://www.bilibili.com/read/cv27958239/](https://www.bilibili.com/read/cv27958239/)
Windows平台最简单的部署方法就是使用这个开源项目,HA的一键启动包
[https://github.com/AlexxIT/HassWP](https://github.com/AlexxIT/HassWP)
部署完成后,我们获取一个home Assistant 的Token,
首先进入Home Assistant的设置页面 [http://127.0.0.1:8123/profile](http://127.0.0.1:8123/profile)
点击创建令牌,获取一个很长的Token保存好。
![image.png](/doc/images/240218/1.png) 44 | 45 | ### 5.编写大模型提示词 46 | 我们使用自然语言跟大模型交流,大模型选择一个合适工具函数,把函数名称还有参数返回给我,再使用Python具体执行这个函数,这个就是大模型Function Call的一个实现思路。 47 |
48 | > 49 | 你是一个智能家居AI,你的根据用户输入返回对函数,必须从函数列表里面选,#后面备注了函数说明,如果能查找到功能的函数,你只需要输出函数加参数,参数就加引号写在函数的括号里,如果没有参数则不加。如果查寻不到任何函数,就输出"对不起,办不到"
函数列表:
find_temperature() #查询房间温度,参数是房间名称
open_air_purifier() #打开空气净化器 无参数
close_air_purifier() #关闭空气净化器 无参数 50 | > 51 | 52 | ### 程序代码 53 | ```python 54 | # 安装python依赖 pip3 install dingtalk_stream broadscope-bailian 55 | 56 | import json 57 | import logging 58 | import uuid 59 | 60 | import requests 61 | from broadscope_bailian import ChatQaMessage 62 | from dingtalk_stream import AckMessage 63 | import dingtalk_stream 64 | import broadscope_bailian 65 | # 2.5小节获取的两个参数 66 | DINGTALK_CLIENT_ID = "xxxxxxxxxxxxxxxxxxxx" 67 | DINGTALK_CLIENT_SECRET = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 68 | # 3.1 3.2小节获取的四个参数 69 | QWEN_ACCESS_KEY_ID = "xxxxxxxxxxxxxxxxxxxx" 70 | QWEN_ACCESS_KEY_SECRET = "xxxxxxxxxxxxxxxxxxxx" 71 | QWEN_AGENT_KEY = "xxxxxxxxxxxxxxxxxxxx" 72 | QWEN_APP_ID = "xxxxxxxxxxxxxxxxxxxx" 73 | # 第4节获取的token 74 | HOME_ASSISTANT_TOKEN = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 75 | # AI大模型的提示词 76 | PROMPT = ''' 77 | 你是一个智能家居AI,你的根据用户输入返回对函数,必须从函数列表里面选,#后面备注了函数说明,如果能查找到功能的函数,你只需要输出函数加参数,参数就加引号写在函数的括号里,如果没有参数则不加。如果查寻不到任何函数,就输出"对不起,办不到" 78 | 函数列表: 79 | find_temperature() #查询房间温度,参数是房间名称 80 | open_air_purifier() #打开空气净化器 无参数 81 | close_air_purifier() #关闭空气净化器 无参数 82 | ''' 83 | 84 | # 控制设备函数的具体实现,使用Home Assistant的Restful API 85 | # 具体见文档https://developers.home-assistant.io/docs/api/rest/ 86 | # 小米参数 https://home.miot-spec.com/ 87 | def open_air_purifier(): 88 | url = "http://127.0.0.1:8123/api/services/xiaomi_miot/set_miot_property" 89 | payload = json.dumps({ 90 | "entity_id": "fan.zhimi_v6_c97a_air_purifier", 91 | "siid": 2, 92 | "piid": 1, 93 | "value": True 94 | }) 95 | headers = { 96 | 'Content-Type': 'application/json', 97 | 'Authorization': f'Bearer {HOME_ASSISTANT_TOKEN}' 98 | } 99 | response = requests.request("POST", url, headers=headers, data=payload) 100 | return "命令已发送" 101 | 102 | 103 | def close_air_purifier(): 104 | url = "http://127.0.0.1:8123/api/services/xiaomi_miot/set_miot_property" 105 | payload = json.dumps({ 106 | "entity_id": "fan.zhimi_v6_c97a_air_purifier", 107 | "siid": 2, 108 | "piid": 1, 109 | "value": False 110 | }) 111 | headers = { 112 | 'Content-Type': 'application/json', 113 | 'Authorization': f'Bearer {HOME_ASSISTANT_TOKEN}' 114 | } 115 | response = requests.request("POST", url, headers=headers, data=payload) 116 | return "命令已发送" 117 | 118 | 119 | def find_temperature(room_name): 120 | 121 | entity_id = "" 122 | if room_name == "客厅": 123 | entity_id = "sensor.a4c138ba6acb_temperature" 124 | if room_name == "卧室": 125 | entity_id = "sensor.a4c138906273_temperature" 126 | 127 | url = f"http://127.0.0.1:8123/api/states/{entity_id}" 128 | 129 | payload = json.dumps({ 130 | "entity_id": "sensor.a4c138ba6acb_temperature", 131 | "method": "" 132 | }) 133 | headers = { 134 | 'Content-Type': 'application/json', 135 | 'Authorization': f'Bearer {HOME_ASSISTANT_TOKEN}' 136 | } 137 | 138 | response = requests.request("GET", url, headers=headers, data=payload) 139 | return json.loads(response.text).get("state") 140 | 141 | 142 | class Qwen: 143 | def __init__(self): 144 | self.session_id = str(uuid.uuid4()).replace("-", "") 145 | self.client = broadscope_bailian.AccessTokenClient(access_key_id=QWEN_ACCESS_KEY_ID, 146 | access_key_secret=QWEN_ACCESS_KEY_SECRET, 147 | agent_key=QWEN_AGENT_KEY) 148 | self.token = self.client.get_token() 149 | self.chat_history = [ChatQaMessage(PROMPT, "好的,请输入")] 150 | self.completions = broadscope_bailian.Completions(token=self.token) 151 | 152 | def get_response(self, prompt): 153 | resp = self.completions.call(app_id=QWEN_APP_ID, history=self.chat_history, prompt=prompt) 154 | response = resp.get("Data").get("Text") 155 | return response 156 | 157 | 158 | def setup_logger(): 159 | logger = logging.getLogger() 160 | handler = logging.StreamHandler() 161 | handler.setFormatter( 162 | logging.Formatter('%(asctime)s %(name)-8s %(levelname)-8s %(message)s [%(filename)s:%(lineno)d]')) 163 | logger.addHandler(handler) 164 | logger.setLevel(logging.INFO) 165 | return logger 166 | 167 | 168 | class EchoTextHandler(dingtalk_stream.ChatbotHandler): 169 | def __init__(self, logger: logging.Logger = None): 170 | super(dingtalk_stream.ChatbotHandler, self).__init__() 171 | if logger: 172 | self.logger = logger 173 | # 初始化AI模型 174 | self.qwen = Qwen() 175 | 176 | async def process(self, callback: dingtalk_stream.CallbackMessage): 177 | incoming_message = dingtalk_stream.ChatbotMessage.from_dict(callback.data) 178 | text = incoming_message.text.content.strip() 179 | ai_response = self.qwen.get_response(text) 180 | # 执行模型返回的函数 181 | print(ai_response) 182 | try: 183 | result = eval(ai_response) 184 | except Exception as e: 185 | print("模型返回无法执行: ", e) 186 | result = ai_response 187 | self.reply_text(result, incoming_message) 188 | return AckMessage.STATUS_OK, 'OK' 189 | 190 | 191 | def main(): 192 | logger = setup_logger() 193 | 194 | credential = dingtalk_stream.Credential(DINGTALK_CLIENT_ID, DINGTALK_CLIENT_SECRET) 195 | client = dingtalk_stream.DingTalkStreamClient(credential) 196 | client.register_callback_handler(dingtalk_stream.chatbot.ChatbotMessage.TOPIC, EchoTextHandler(logger)) 197 | client.start_forever() 198 | 199 | 200 | if __name__ == '__main__': 201 | main() 202 | 203 | ``` 204 | 205 | ### PS.小米硬件功能编写指南 206 |
小米siid, piid查询
[https://home.miot-spec.com/](https://home.miot-spec.com/) 207 |
208 |
Home Assistant Restful API
[https://developers.home-assistant.io/docs/api/rest/](https://developers.home-assistant.io/docs/api/rest/) 209 | 210 |
Restful API 调试 211 | ```shell 212 | curl --location 'http://localhost:8123/api/services/xiaomi_miot/set_miot_property' \ 213 | --header 'Content-Type: application/json' \ 214 | --header 'Authorization: Bearer xxxxxxxxx' \ 215 | --data '{ 216 | "entity_id":"fan.zhimi_v6_c97a_air_purifier", 217 | "siid": 2, 218 | "piid": 1, 219 | "value": true 220 | }' 221 | ``` 222 | ```shell 223 | curl --location --request GET 'http://localhost:8123/api/states/sensor.a4c138ba6acb_temperature' \ 224 | --header 'Content-Type: application/json' \ 225 | --header 'Authorization: Bearer xxxxxxxxx' \ 226 | --data '{ 227 | "entity_id":"sensor.a4c138ba6acb_temperature", 228 | "method":"" 229 | }' 230 | ``` -------------------------------------------------------------------------------- /doc/240502.md: -------------------------------------------------------------------------------- 1 | 我给一个超级卡顿的平板电脑安装了最新的Ubuntu24.04系统,准备把他当成一个低耗电的家庭服务器,上期讲了如何重装系统,本期就讲让一下装完系统必须要干的十件事。把他废物利用,变成一个既省电又好用全能的家庭服务器。 2 | 3 | 视频教程: 4 | 第一期:[https://www.bilibili.com/video/BV1NM4m1f7Q6/](https://www.bilibili.com/video/BV1NM4m1f7Q6/) 5 |
6 | 第二期:[https://www.bilibili.com/video/BV1Gb421a7BW/](https://www.bilibili.com/video/BV1Gb421a7BW/) 7 | 8 | 9 | ## 安装vim 10 | ubuntu自带的文本编辑器是vi,很难用,我需要安装一个他的升级版vim。
打开命令行输入以下命令 11 | ```shell 12 | sudo apt update 13 | sudo apt install vim 14 | ``` 15 | 16 | ## 绑定静态IP 17 | 我需要给家庭服务器设置一个局域网的固定IP,如果IP地址总是变来变去,远程连接会很不方便。每家路由器都不一样,这里可能要自己做下功课。我以小米路由器举例,打开路由器设置--->局域网设置-->DHCP静态IP设置,将我家庭服务器分配一个固定IP,比如我分配的是192.168.31.207。这样IP地址就不会变来变去了。 **配置完成后记得重启路由器。**
![](/doc/images/240502/1.png) 18 | 19 | 20 | ## 安装RustDesk 21 | 作为一个服务器,我只需要让他安静地躺着柜子里,鼠标键盘显示器这些都不会再用了。所以我们下一项工作就是配置远程连接,从而拔掉鼠标键盘。
再添加一个桌面的远程访问,这里我选择开源免费的远程控制软件 RustDesk
[https://github.com/rustdesk/rustdesk/releases](https://github.com/rustdesk/rustdesk/releases) 22 | 23 | 24 | ![](/doc/images/240502/2.png)
将安装包放在桌面,右键打开命令行
25 | ![](/doc/images/240502/3.png)
执行以下两个命令 26 | ```shell 27 | sudo apt update 28 | sudo apt install ./rustdesk-1.2.3-2-x86_64.deb 29 | ``` 30 | 安装好rustdesk,我们需要进行一些设置,Ubuntu默认的显示器程序是wayland,在息屏状态下远程软件无法唤醒屏幕。为了能唤醒屏幕我们需要改成xorg。 31 | ```shell 32 | sudo vi /etc/gdm3/custom.conf 33 | ``` 34 | 修改这一行
_#WaylandEnable=false_
将前面的注释去掉,然后点击ESC,然后输入 **:wq!** 保存文件 保存文件,然后输入命令重启桌面。 35 | ```shell 36 | sudo systemctl restart gdm3 37 | ``` 38 | 打开桌面上的Rustdesk 设置两个地方
设置->安全->允许IP直接访问,这样在家里就可以不使用中继服务器,而是IP直连,提高速度
![](/doc/images/240502/4.png)
设置->安全->密码 使用固定密码,这样主控方就可以使用固定密码控制
![](/doc/images/240502/5.png) 39 | 40 | ## 安装SSH-server 41 | 除了桌面的远程控制能力,我们还需要添加ssh的远程访问功能。
我们执行 42 | ```shell 43 | sudo apt openssh-server 44 | ``` 45 | 安装SSH server,这样服务器就可以通过ssh的方式链接。 46 | 47 | ## 安装Linux原生微信 48 | 目前Linux微信只专供几个国产Linux操作系统,还没有Ubuntu版,这里我选择的是开发麒麟(openkylin)操作系统提供的安装包。 49 | ```shell 50 | wget https://software.openkylin.top/openkylin/yangtze/pool/all/wechat-beta_1.0.0.238_amd64.deb 51 | sudo apt install ./wechat-beta_1.0.0.238_amd64.deb 52 | ``` 53 | 54 | ## SMB文件共享 55 | 我们可以在Ubuntu服务器上开启SMB文件共享,这样可以很方便的在手机电脑上查看家庭服务器下载的电影,电视剧,爬爬虾有一整个视频介绍如何使用SMB文件共享,构建家庭影音服务,感兴趣的观众朋友可以找来看下。
执行命令 56 | ```shell 57 | sudo apt install samba 58 | sudo vi /etc/samba/smb.conf 59 | ``` 60 | 最下面粘贴这些内容 61 | ``` 62 | [ubuntu_smb] 63 | path = /home/tech-shrimp 64 | available = yes 65 | browseable = yes 66 | public = yes 67 | writable = yes 68 | create mask = 0755 69 | security = share 70 | force user = tech-shrimp 71 | force group =tech-shrimp 72 | ``` 73 | 点击ESC,然后输入 **:wq!** 保存文件
重启smb服务 74 | ``` 75 | sudo service smbd restart 76 | ``` 77 | 78 | ## 安装Docker 79 | Docker是一种应用程序的容器化部署方案,简单来说可以将整个应用程序,配置,甚至依赖以及库函数等一起打包,然后放到一个隔离环境中运行。我有个建议就是如果软件提供了Docker的安装方式,那就尽量用docker装吧。用上docker,只要别人那里能跑的程序,到你机器上一定也能跑。完全不用担心依赖兼容性,系统差异等棘手问题
安装docker本体,需要执行以下命令。 80 | ```shell 81 | sudo apt-get install ca-certificates curl 82 | curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - 83 | sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 84 | sudo apt-get install docker-ce docker-ce-cli containerd.io 85 | ``` 86 | 87 | ## 安装HomeAssistant 88 | Home Assistant 是一个智能家居的终极解决方案,可以聚合各个厂商的设备,进行定制化管理。可以自己写代码扩展应用,也可以接入各类AI大语言模型等等。爬爬虾有多期视频介绍过Homeassistant, 感兴趣的观众可以找来看看。 89 | ```shell 90 | # 创建配置文件文件夹 91 | mkdir -p /home/tech-shrimp/homeassistant 92 | 93 | sudo docker run -d \ 94 | --name homeassistant \ 95 | --privileged \ 96 | --restart=unless-stopped \ 97 | -e TZ=Asia/Shanghai \ 98 | -v /home/tech-shrimp/homeassistant:/config \ 99 | -v /run/dbus:/run/dbus:ro \ 100 | --network=host \ 101 | ghcr.io/home-assistant/home-assistant:stable 102 | ``` 103 | 104 | ## 安装小雅Alist 105 | 小雅Alist是一个阿里云盘的资源聚合库。安装好它以后,可以瞬间多出几百T的影音资源。
首先获取两个token:
获取短Token [https://alist.nn.ci/zh/guide/drivers/aliyundrive.html](https://alist.nn.ci/zh/guide/drivers/aliyundrive.html) ![](/doc/images/240502/6.png) 106 | 107 | 获取长Token:
[https://alist.nn.ci/tool/aliyundrive/request.html](https://alist.nn.ci/tool/aliyundrive/request.html)
![](/doc/images/240502/7.png) 108 | 109 | 获取File ID, 打开
[https://www.aliyundrive.com/s/rP9gP3h9asE](https://www.aliyundrive.com/s/rP9gP3h9asE)
转存 https://www.aliyundrive.com/s/rP9gP3h9asE 到自己网盘,然后浏览器打开转存后的目录,浏览器的url https://www.aliyundrive.com/drive/file/resource/xxxxxxxxxxxxxxxxxxxxxxxxxx 红色这一串就是File ID 110 | 111 | 执行一键脚本 112 | ```shell 113 | sudo bash -c "$(curl http://docker.xiaoya.pro/update_new.sh)" -s host 114 | ``` 115 | 116 | 访问地址
http://你的服务器IP:5678 117 | 118 | ## 钉钉机器人 119 | 可以使用docker部署一个钉钉聊天机器人,钉钉有个好处是不需要公网IP就能使用,还能接入智能家居,这里有详细教程,篇幅有限我就不细讲了。
[https://gitee.com/tech-shrimp/me/blob/master/doc/240217.md](https://gitee.com/tech-shrimp/me/blob/master/doc/240217.md)
[https://gitee.com/tech-shrimp/me/blob/master/doc/240218.md](https://gitee.com/tech-shrimp/me/blob/master/doc/240218.md) 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | -------------------------------------------------------------------------------- /doc/240516.md: -------------------------------------------------------------------------------- 1 | 搜集自网络 2 | 原贴: https://linux.do/t/topic/87640 作者 : 霾土(HelloCode) 3 | 4 | arielbevans@gmail.com:Ilana1124 5 | 6 | arinsiraphat@outlook.com:Maruchan22 7 | 8 | arjones5512@gmail.com:Rolltide5512 9 | 10 | arkingallagher@yahoo.com:Champchamp1 11 | 12 | armani1013@gmail.com:$Lilbit07 13 | 14 | arobinson010621@gmail.com:Asr010621$ 15 | 16 | arrash99@yahoo.com:Shodan99! 17 | 18 | arrublac814@gmail.com:Butnaked90 19 | 20 | artiles1999@gmail.com:Erito2809@ 21 | 22 | artreyesiii@gmail.com:Panthers6! 23 | 24 | arvindmrk@gmail.com:shalinee19 25 | 26 | arwenmulli@gmail.com:Flower111 27 | 28 | asad.abbas.naqvi@gmail.com:Socrat123 29 | 30 | ashbash826@gmail.com:Fender02! 31 | 32 | ashleeg@ualberta.ca:Barbie.doll1 33 | 34 | ashleemorningstar@yahoo.com:Jackchar123! 35 | 36 | ashley4604@gmail.com:Ba200443! 37 | 38 | ashleyalbrechta@gmail.com:Teddy11! 39 | 40 | Ashley.dortch@gmail.com:Success1984! 41 | 42 | ashleyjjohnson5@gmail.com:Manchester123! 43 | 44 | ashleyland721@gmail.com:Shameece1! 45 | 46 | ashleysgaliardich@yahoo.com:Iluvtuna1! 47 | 48 | ashleysolari@gmail.com:Ruby858990! 49 | 50 | ashleyvickers22@gmail.com:Lindsey17! 51 | 52 | ashly_cheer@hotmail.com:Bobcats12! 53 | 54 | ashull152@yahoo.com:Sniper44! 55 | 56 | ashyasamuel@yahoo.com:Semperfi0612! 57 | 58 | aspuzz@gmail.com:Sleira16$ 59 | 60 | a.surlak@gmail.com:Apples21! 61 | 62 | atealynn@yahoo.com:Ruin404! 63 | 64 | athelen111@gmail.com:coolcat5392 65 | 66 | cnw902@yahoo.com:Angel121$ 67 | 68 | cobimarsh@hotmail.com:September20th! 69 | 70 | cocokitty_12@yahoo.com:Rasberry11! 71 | 72 | codykline99@gmail.com:Cookieman99! 73 | 74 | cody.mizelle@gmail.com:cm012893 75 | 76 | colbe94@yahoo.com:Roxydog13! 77 | 78 | colinmcd57@gmail.com:Newcastle123! 79 | 80 | colinoftompkins@gmail.com:tar7arus 81 | 82 | colleenbowes566@gmail.com:Tucker17! 83 | 84 | collinjanetzky@gmail.com:Ilovepie40! 85 | 86 | coltonphillips611@gmail.com:Chpdpp2006! 87 | 88 | coltonzim@gmail.com:Colton12$ 89 | 90 | connorshitchcock@gmail.com:cxc500008151 91 | 92 | conor.sastre@gmail.com:Imhungry1! 93 | 94 | conslurr@yahoo.com:monster1 95 | 96 | corinna.zygourakis@gmail.com:Trikala2! 97 | 98 | cosand005@hotmail.com:Thecobra91 99 | 100 | courtneymfetters@gmail.com:Katiebear1! 101 | 102 | courtneyroseb@gmail.com:Captain1! 103 | 104 | cpvalcourt@gmail.com:MySun4365 105 | 106 | craig.awakencity@gmail.com:Awaken101412@ 107 | 108 | craigguttenplan@gmail.com:Vida2015! 109 | 110 | craig.miller1221@gmail.com:M3dcats2014! 111 | 112 | cranberry_mom@hotmail.com:Michael1997 113 | 114 | crfochoas4@gmail.com:Anamaria1$ 115 | 116 | cristabel473@gmail.com:Diliva30$ 117 | 118 | cristiancuadro@yahoo.com:@Basketball1 119 | 120 | cristinaferucci@gmail.com:Frosty28! 121 | 122 | cristina.munoz@lausd.net:Chiara0621# 123 | 124 | crlane12@yahoo.com:Addiemae12! 125 | 126 | crperlee@gmail.com:My2280buddy! 127 | 128 | crystaldishmon@me.com:Waterhead7 129 | 130 | csbraunstein@gmail.com:Cshornig1 131 | 132 | csharpe03@hotmail.com:MiCahS0! 133 | 134 | csmsnake@yahoo.com:Grouper09 135 | 136 | csportcat@gmail.com:Kittysport123! 137 | 138 | ctaylorcunningham@hotmail.com:Roserose2! 139 | 140 | ctimus07@yahoo.com:malaika07 141 | 142 | ctricarico8195@gmail.com:Brooklyn95! 143 | 144 | ctrunz1@gmail.com:Swimming9! 145 | 146 | cummingsrodina@icloud.com:Chasea13$ 147 | 148 | curtis@cdwadvisory.com:Realestate2@ 149 | 150 | curtreha@hotmail.com:Addison827 151 | 152 | cuu9991@gmail.com:Cuu890890! 153 | 154 | Cwilder023@gmail.com:Pipples55! 155 | 156 | cwkaul@gmail.com:Dupuis12# 157 | 158 | cwpadgett@gmail.com:Jensen12345! 159 | 160 | cwrenner18@gmail.com:Wildcats18! 161 | 162 | d1spects@yahoo.com:Andre544$ 163 | 164 | dabrionneslayton@yahoo.com:Capricorn1900$ 165 | 166 | dacoughlin8@gmail.com:Iloveapples1! 167 | 168 | daego83@yahoo.com:91Grandpse! 169 | 170 | dagnytepper@me.com:Dagnytepper1! 171 | 172 | d.alan.hunter100@gmail.com:1Bounaparte! 173 | 174 | damilola.mustapha@castleton.edu:Adefunke30! 175 | 176 | danbotts04@gmail.com:Crane24817! 177 | 178 | dancecrazypeach@gmail.com:Peachlia1! 179 | 180 | dandjlane@yahoo.com:magenta74 181 | 182 | dani.cotne@gmail.com:Mermaid23# 183 | 184 | daniel20001989@gmail.com:Yjc_hXLbP4fFkuh 185 | 186 | danielhyde@me.com:dh026500 187 | 188 | danieljhayes22@gmail.com:Saints22! 189 | 190 | daniellaaponce@icloud.com:Daniellita1! 191 | 192 | danielle.diggins@gmail.com:Marcsavard91! 193 | 194 | daniellelugo@gmail.com:Jerard1224! 195 | 196 | danielle_vickers@hotmail.com:Dani143. 197 | 198 | danielpaulson6@gmail.com:Stj121814 199 | 200 | daniel.t.demers@gmail.com:Skiing32! 201 | 202 | danielvllmzr@hotmail.com:Villa3894. 203 | 204 | dankurtzemail2@gmail.com:P@ssword1 205 | 206 | danlepre@yahoo.com:Bluegreenred1! 207 | 208 | danneypaul@yahoo.com:Lespaul123! 209 | 210 | danny07_c@live.com:1991_Happy 211 | 212 | danny.razzano@gmail.com:Superman1! 213 | 214 | dansbass@hotmail.com:LDN87gdb 215 | 216 | dapatel05@yahoo.co.uk:Mwaka2005$ 217 | 218 | daquerag99@gmail.com:Spongebob99$ 219 | 220 | dariengarcia12@icloud.com:D28252336g$ 221 | 222 | daronda10@yahoo.com:Kendrick10! 223 | 224 | dave@rouser.org:5R5lTh55 225 | 226 | davesidnam@gmail.com:Romans828! 227 | 228 | davidbledsoe2002@hotmail.com:vdbl1901 229 | 230 | davidkube@mac.com:Macbook5air# 231 | 232 | davidlee.82231528@gmail.com:xhy651204 233 | 234 | david.levy341@gmail.com:Scooby34! 235 | 236 | david@liveinsouthfl.com:J@cko0216 237 | 238 | davidmbrown429@gmail.com:Carsarecool429 239 | 240 | davidrooks@rooksads.com:Brilliant1! 241 | 242 | davidrsaville@gmail.com:Easter33! 243 | 244 | davidscoblick@yahoo.com:fordham98 245 | 246 | davidsonjessical@gmail.com:Sillyj89! 247 | 248 | david.usher1993@gmail.com:Hydroplane1! 249 | 250 | david_arany@yahoo.com:12D2098a@ 251 | 252 | david_baker05@att.net:Chad3158! 253 | 254 | davis.alberto@wakefern.com:Lifeline05@ 255 | 256 | dawneschulte@gmail.com:Br3n3ll!3 257 | 258 | dawn.mitchell13@gmail.com:ilovewill14 259 | 260 | daynamarieh@gmail.com:Callaway1! 261 | 262 | dayna_ramsdell@hotmail.com:Farrah01! 263 | 264 | daysmanga@gmail.com:241608ado 265 | 266 | dbradleyri@gmail.com:99FTaurus! 267 | 268 | dcdylan99@gmail.com:Drakelee4@ 269 | 270 | dcontr37@yahoo.com:Rusty123$ 271 | 272 | dcorello@gmail.com:P@nthers1 273 | 274 | dcslaxdance@gmail.com:Dcs82278! 275 | 276 | dd@davi.net:Jupiter8 277 | 278 | ddjordan7079@gmail.com:Skadoosh1! 279 | 280 | ddonaldson4242@gmail.com:Br@42ves 281 | 282 | deandrebrown123@gmail.com:Thebest13. 283 | 284 | ded08540@gmail.com:Shira0520! 285 | 286 | dedi.suwanto@yahoo.com:*5590uaf* 287 | 288 | deedeemugica@gmail.com:42Latina! 289 | 290 | dehondre.simon@gmail.com:Hancock3$ 291 | 292 | deidz60@gmail.com:Grateful1! 293 | 294 | deionoliver72@gmail.com:Oliver42 295 | 296 | delanie7383@gmail.com:Buckeye7383! 297 | 298 | delsol_typeme@yahoo.com:jC010283 299 | 300 | demattiaa@gmail.com:Revere84! 301 | 302 | denise@mpho.us:!Scout3802 303 | 304 | dennis.mejia4@gmail.com:Jesusfreak101! 305 | 306 | derdfarb@gmail.com:Matilda!1 307 | 308 | derekvh@mac.com:Filmsound1! 309 | 310 | destany.meadows@gmail.com:Leighann18! 311 | 312 | destinymc.11@gmail.com:Rayford11! 313 | 314 | dfox125@gmail.com:#Dsfdsf12 315 | 316 | dgoldsher@gmail.com:goldsher5 317 | 318 | dhariana.dr@gmail.com:Morena1024! 319 | 320 | dianavillakovach@gmail.com:Chinita77! 321 | 322 | diansusilawati03@guru.smp.belajar.id:10645849 323 | 324 | dickson.mercer@gmail.com:Ssracer1! 325 | 326 | diegomalvido95@gmail.com:mesutozil23 327 | 328 | dillionlynn@gmail.com:Dillion1! 329 | 330 | dimonbee@yahoo.com:Ada061184! 331 | 332 | dipieroc4@gmail.com:Longitude00 333 | 334 | dj61977@gmail.com:Tamara98! 335 | 336 | djbabu12@gmail.com:Anniyan@12 337 | 338 | djbikakis@yahoo.com:Shepard!994 339 | 340 | d.j.campbell24@gmail.com:Fivseq52 341 | 342 | djhusane@gmail.com:Love1011@ 343 | 344 | dkmlink@gmail.com:Kendall1! 345 | 346 | dlbgt500@gmail.com:Shibby321! 347 | 348 | dlee.reg@gmail.com:And1mixtape! 349 | 350 | dlf0982@yahoo.com:Daph0982! 351 | 352 | dlmameui@live.com:g0ld3nb3ll 353 | 354 | dmberma@g.clemson.edu:Shoelace1$ 355 | 356 | dmccammack@hotmail.com:Dunky1994* 357 | 358 | dmylar9@gmail.com:chan2389 359 | 360 | dn71614906@gmail.com:Facebook2@ 361 | 362 | dnjsalmon@yahoo.com:Cambria31@ 363 | 364 | dnsharma@aquatech.com:Silica12 365 | 366 | domcetrone@yahoo.com:Bmore655 367 | 368 | dominiqueprophet@yahoo.com:ZakaiAmir1 369 | 370 | domino.alyssa@gmail.com:Molsonk9! 371 | 372 | donte.j.young@gmail.com:Yung6123! 373 | 374 | Donyaebrahim17@gmail.com:Donya1379 375 | 376 | doodlebugleslie@hotmail.com:College04! 377 | 378 | dorianne.mir@gmail.com:G@rfunkle9 379 | 380 | dowsettpatrick@gmail.com:Nonamar934! 381 | 382 | dpbrunner@gmail.com:Favre4prez! 383 | 384 | dperfectcasey@hotmail.com:Craziness@1 385 | 386 | dpetronio15@gmail.com:Ultimate15! 387 | 388 | dpooni88@gmail.com:April208@ 389 | 390 | draytonmatus@gmail.com:Diabetes13! 391 | 392 | drea.lung@gmail.com:Legolas12$ 393 | 394 | dreathew@gmail.com:Loverat0! 395 | 396 | drew.atencio@gmail.com:Aten141725! 397 | 398 | dr.manojdatta@gmail.com:Genious@1 399 | 400 | drod2230@yahoo.com:Windham2! 401 | 402 | dr_jj217@hotmail.com:Clipshow7! 403 | 404 | dtrana@hotmail.com:Stuart22! 405 | 406 | duanebryan@yahoo.com:Alpha1906! 407 | 408 | dudeitsnate@gmail.com:Billion90* 409 | 410 | duds@yahoo.com:Spunkda1! 411 | 412 | duece2x2000@yahoo.com:2Elcamino 413 | 414 | dulcealfaro1@gmail.com:Hearts11! 415 | 416 | dulrich11391@gmail.com:OSiris11391@! 417 | 418 | dvergarai@hotmail.com:molotov12 419 | 420 | dwachter@wcapgroup.com:angel123 421 | 422 | dwebster@mac.com:Destiney7935! 423 | 424 | dwintman@gmail.com:Leelafry123! 425 | 426 | eac40@hotmail.com:Jeremy99! 427 | 428 | ecaceresims@gmail.com:Mexico22! 429 | 430 | ecanoseeds@gmail.com:Smartypants12! 431 | 432 | ecastillo273@gmail.com:Inlove08! 433 | 434 | ecdarrouzet@gmail.com:chester89 435 | 436 | eclaire699@gmail.com:Paulie14! 437 | 438 | ecreamer81@hotmail.com:Cheese1981! 439 | 440 | ecsabadell@comcast.net:Messi18! 441 | 442 | eddiehe333@gmail.com:eddie19951106 443 | 444 | edesmarteau1225@gmail.com:Belle1225! 445 | 446 | eds5103@gmail.com:G00dnight! 447 | 448 | efrain_bq@hotmail.com:Efrain1509! 449 | 450 | egmatt@gmail.com:Peach87! -------------------------------------------------------------------------------- /doc/240526.md: -------------------------------------------------------------------------------- 1 | 2 | 本期我们来看如何在各类操作系统上安装Docker,我都选择的最精简,成功率最高的方案。 3 | 4 | ### Linux 5 | Docker的本质是基于linux的容器化技术。Window,Mac其实都是虚拟化了一个linux子系统才能安装docker,所以我们先从Linux讲起。 6 | 7 | 首先需要搞一台Linux系统的机器,比如可以选择给一个电脑安装Ubuntu系统, 当然也可以购买一个云服务器,这里我就用我的一个云服务器为例进行演示,这里我使用的操作系统是centos。这里我使用docker官方提供的一键安装命令来安装,这个命令是通用,的任何一个linux发行版都可以用。 8 | ```shell 9 | sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 10 | service docker start 11 | ``` 12 | 13 | #### Docker换国内源 14 | 为了加快镜像下载速度,我们可以将 Docker Hub 的镜像源修改为国内的镜像源。 15 | ```shell 16 | sudo vi /etc/docker/daemon.json 17 | ``` 18 | 19 | 输入下列内容,最后按ESC,输入 :wq! 保存退出。 20 | 21 | ```txt 22 | { 23 | "registry-mirrors": [ 24 | "https://docker.m.daocloud.io", 25 | "https://docker.nju.edu.cn", 26 | "https://dockerproxy.com" 27 | ] 28 | } 29 | 30 | ``` 31 | 最后重启docker 32 | ```shell 33 | service docker restart 34 | ``` 35 | 36 | 37 | 38 | 39 | ### Windows 安装docker 40 | 任务栏搜索功能,勾选 41 | "适用于Linux的Windows子系统" 42 | "虚拟机平台" 43 | 44 |
![](/doc/images/240526/1.png) 45 | 46 | 管理员权限打开命令提示符,安装wsl2 47 | ```shell 48 | wsl --set-default-version 2 49 | wsl --update --web-download 50 | ``` 51 | 等待wsl安装成功 52 |
![](/doc/images/240526/3.png) 53 | 54 | 下载Windows版本Docker Desktop
[https://www.docker.com/products/docker-desktop/](https://www.docker.com/products/docker-desktop/) 55 | ![](/doc/images/240526/2.png) 56 |
安装包下载好以后双击即可安装 57 | 58 | 59 |
如果想自己指定安装目录,可以使用命令行的方式 60 |
参数 --installation-dir=D:\Docker可以指定安装位置 61 | 62 | ```shell 63 | start /w "" "Docker Desktop Installer.exe" install --installation-dir=D:\Docker 64 | ``` 65 | 换国内的镜像源: 66 |
Setting->Docker Engine->添加上换源的那一段,如下图: 67 | ![](/doc/images/240526/5.png) 68 | 69 | 70 | ### macOS 安装docker 71 | 下载MAC版本的 Docker Desktop
[https://www.docker.com/products/docker-desktop/](https://www.docker.com/products/docker-desktop/) 72 | 73 | 注意区分CPU类型(苹果芯片或INTEL芯片) 74 | ![](/doc/images/240526/4.png) 75 | 下载好双击安装即可 76 | -------------------------------------------------------------------------------- /doc/240626.md: -------------------------------------------------------------------------------- 1 | # 使用nginx代理openai的API 2 | 3 | 4 | ### 一台可以直连openai的服务器 5 | ```shell 6 | sudo apt install nginx 7 | cd /etc/nginx 8 | # 创建私钥 9 | openssl genrsa -out private.key 2048 10 | # 创建csr文件 11 | openssl req -new -key private.key -out server.csr 12 | 13 | #证书信息随便填 14 | #CountryName: CN 15 | #ProvinceName: ABC 16 | #Locality Name: ABC 17 | #Organization Name: ABC 18 | #Organizational Unti Name: ABC 19 | #Common Name:abc.com 20 | #Email Adress: abc@163.com 21 | #A Challenge password: 直接回车即可 22 | #An optional company name: 直接回车即可 23 | 24 | # 创建自签名证书 25 | openssl x509 -req -days 3650 -in server.csr -signkey private.key -out server.crt 26 | # 修改nginx配置 27 | sudo vi /etc/nginx/nginx.conf 28 | ``` 29 | 在http节点下添加server节点,配置如下: 30 | ``` 31 | http { 32 | # 其他配置忽略 33 | server { 34 | listen 443 ssl http2; 35 | server_name 域名或者服务器ip; 36 | 37 | ssl_certificate /etc/nginx/server.crt; 38 | ssl_certificate_key /etc/nginx/private.key; 39 | 40 | location /v1/ { 41 | proxy_pass https://api.openai.com; 42 | proxy_set_header Host api.openai.com; 43 | proxy_set_header X-Real-IP $remote_addr; 44 | proxy_ssl_server_name on; 45 | } 46 | } 47 | } 48 | ``` 49 | 50 | 重启nginx 51 | ```shell 52 | sudo service nginx restart 53 | ``` 54 | 55 | 测试 56 | ```shell 57 | curl -k -X POST -H "Content-Type: application/json" \ 58 | -H "Authorization: Bearer 你的OPENAI_KEY" \ 59 | -d '{"model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello, how are you?"}]}' \ 60 | https://你的服务器IP/v1/chat/completions 61 | ``` 62 | 63 | -------------------------------------------------------------------------------- /doc/240627.md: -------------------------------------------------------------------------------- 1 | # 盘点AI大模型接入微信的方法,全网最全最细喂饭级教程 2 | 3 | 如何将ChatGPT等AI接入微信,这应该是全网最全最细的视频教程了。
目前将AI大模型接入微信主要有三个主流方向, 分别是企业微信,公众号, 还有个人微信。
这里面企业微信分为企业机器人与企业客服两个子流派。公众号又分为订阅号与服务号两个子流派。
这样加起来总共是五个流派,我用一个表格列举了他们的优缺点。 4 | 5 | | 方案 | 优点 | 缺点 | 成本 | 6 | | --- | --- | --- | --- | 7 | | 企业微信机器人 | 微信官方API,安全稳定 | 必须先加入对应的企业,才能使用。
配置繁琐
无法参与群聊 | 公网IP的云服务器 | 8 | | 企业微信客服 | 微信官方API,安全稳定
不用加入企业,点开即用 | 未认证的企业只能服务100个人
配置繁琐
无法参与群聊 | 公网IP的云服务器 | 9 | | 公众号订阅号 | 微信官方API,安全稳定 | 公众号有超时限制,有字数限制
无法参与群聊 | 公网IP的云服务器
| 10 | | 公众号服务号 | 微信官方API,安全稳定 | 无法参与群聊
成本较高 | 公网IP的云服务器
服务号认证费用
营业执照 | 11 | | 个人微信 | 可以参与群聊
可以加好友
部署成本低
普通微信号的一切功能 | 给账号带来风险,建议用小号
| 任意服务器/电脑即可 | 12 | 13 | 14 | 15 | # 企业微信 16 | 项目主页:[https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat)
项目文档:[https://docs.link-ai.tech/cow/quick-start](https://docs.link-ai.tech/cow/quick-start) 17 | 18 | ## 注册企业微信 19 | [https://work.weixin.qq.com/wework_admin/register_wx?from=loginpage](https://work.weixin.qq.com/wework_admin/register_wx?from=loginpage) 20 | 21 | ## 创建企业机器人 22 | 应用管理-->应用-->创建应用 ,应用名称跟描述随便填,可见范围选整个公司
这样就创建好了一个企业机器人。
23 | ![](/doc/images/240627/1.png) 24 | 25 | ## 配置可信域名 26 | 如果未认证的企业可以使用华为云的域名,认证企业则必须使用企业自己的域名 27 | 28 | ### 登陆华为云 29 | [https://activity.huaweicloud.com/](https://activity.huaweicloud.com/) ,完成实名认证 30 | 31 | ### 创建云函数 32 | 搜索云函数,点击立即使用。右上角创建函数,选择HTTP函数,函数名称随便填。
![](/doc/images/240627/2.png) 33 | 34 | ### 创建触发器 35 | 切换到设置 触发器-创建触发器
36 | ![](/doc/images/240627/3.png)
37 | 安全认证选None ,分组随意创建一个
38 | ![](/doc/images/240627/4.png) 39 | 40 | 41 | ### 获得URL 42 | ![](/doc/images/240627/5.png)
43 | 44 | 下一步 打开企业微信 -->进入刚才创建的机器人-->设置可信域名
45 | 46 | ![](/doc/images/240627/6.png)
47 | 48 | 可信域名填3.4步骤中的URL,类似以下格式(注意去掉http:// 与 最后的/
49 | 50 | > d1c0cceabb04d8e8413c2b615790846.apig.cn-north-1.huaweicloudapis.com 51 | 52 | 53 | ### 获得校验码 54 | 点击申请校验域名->下载文件, 将文件里面的校验复制下来 大约长这样: **1tg27Cpi9hYTjFFq**
![](/doc/images/240627/7.png) 55 | 56 | ### 绑定可信域名 57 | 回到华为云, 代码->index.js 修改第九行为文件里的校验码(见3.5小节获得的校验码),点击部署
![](/doc/images/240627/8.png)
部署完成 回到企业微信->点击确定 可信域名即完成绑定 58 | 59 | 60 | ## Gemini对接企业微信 61 | 62 | 我们使用这个项目 chatgpt-on-wechat
[https://github.com/zhayujie/chatgpt-on-wechat](https://github.com/zhayujie/chatgpt-on-wechat) 63 | 64 | 65 | ### 申请Google Gemini 66 | 申请一个API key
[https://makersuite.google.com/app/apikey](https://makersuite.google.com/app/apikey) 67 | > 需要一个Google账号,以及可以访问Google的网络环境
68 | > 如果没有对应网络环境可以选择其他国内大模型 69 | 70 | 71 | ### 安装docker 72 | 需要有一个公网IP的云服务器,安装docker
安装docker可以参考这个视频
[https://www.bilibili.com/video/BV1fS411A71Y/](https://www.bilibili.com/video/BV1fS411A71Y/)
也可以参考这个
[https://github.com/tech-shrimp/docker_installer](https://github.com/tech-shrimp/docker_installer) 73 | 74 | > 使用Gemini, 服务器需要访问Google的网络环境
75 | > 如果没有对应网络环境可以选择其他国内大模型 76 | 77 | 78 | ### 下载docker compose 79 | 执行以下命令下载 docker-compose.yml: 80 | ```shell 81 | wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml 82 | 83 | ``` 84 | 85 | 修改docker compose文件,主要配置从24行以下开始 86 | ```yaml 87 | version: '2.0' 88 | services: 89 | chatgpt-on-wechat: 90 | image: zhayujie/chatgpt-on-wechat 91 | container_name: chatgpt-on-wechat 92 | security_opt: 93 | - seccomp:unconfined 94 | environment: 95 | OPEN_AI_API_KEY: 'YOUR KEY' 96 | PROXY: '' 97 | SINGLE_CHAT_PREFIX: '[""]' 98 | SINGLE_CHAT_REPLY_PREFIX: '"[bot] "' 99 | GROUP_CHAT_PREFIX: '["@bot"]' 100 | GROUP_NAME_WHITE_LIST: '["测试群", "测试群2"]' 101 | IMAGE_CREATE_PREFIX: '["画", "看", "找"]' 102 | CONVERSATION_MAX_TOKENS: 1000 103 | SPEECH_RECOGNITION: 'False' 104 | CHARACTER_DESC: '你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。' 105 | EXPIRES_IN_SECONDS: 3600 106 | USE_GLOBAL_PLUGIN_CONFIG: 'True' 107 | USE_LINKAI: 'False' 108 | LINKAI_API_KEY: '' 109 | LINKAI_APP_CODE: '' 110 | ## 配置从以下开始 111 | ## 模型名称 注意此文件只保留一个模型名称,其余删掉 112 | MODEL: 'gemini' 113 | # 4.1小节申请的 gemini api key 114 | GEMINI_API_KEY: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 115 | CHANNEL_TYPE: "wechatcom_app" 116 | # 企业微信->我的企业->企业ID 117 | WECHATCOM_CORP_ID: "xxxxxxxxxxxxxxxxxx" 118 | # 企业微信->应用管理->应用->Secret 119 | WECHATCOMAPP_SECRET: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 120 | # 企业微信->应用管理->应用->AgentId 121 | WECHATCOMAPP_AGENT_ID: "xxxxxx" 122 | # 企业微信->应用管理->应用->接收消息->设置API接收->Token 123 | WECHATCOMAPP_TOKEN: "xxxxxxxxxxxxxxxxxxxxxxxxxx" 124 | # 企业微信->应用管理->应用->接收消息->设置API接收->EncodingAESKey 125 | WECHATCOMAPP_AES_KEY: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 126 | WECHATCOMAPP_PORT": 9898 127 | ports: 128 | - 9898:9898 129 | 130 | ``` 131 | 132 | ### 启动docker 133 | 修改完成后将docker启动起来 134 | ```shell 135 | # 启动docker 136 | sudo docker compose up -d 137 | # 查看日志 138 | sudo docker logs -f chatgpt-on-wechat 139 | # 停止docker 如果修改配置文件必须先停止再启动 140 | sudo docker compose down 141 | ``` 142 | 143 | 144 | ### 企业微信设置 145 | 回到企业微信,填写好URL ,按如下格式 146 | 147 | > http://服务器IP:9898/wxcomapp 148 | 149 | 注意Token与EncodingAESKey与docker配置一致。 150 | 151 | ![](/doc/images/240627/9.png) 152 | 153 | 154 | 点击企业可信IP,填入服务器的公网IP 155 | 156 | ![](/doc/images/240627/10.png) 157 | 158 | 159 | ### 微信加入企业 160 | 我的企业->微信插件->邀请关注 ,使用微信扫码即加入企业,然后就可以开始应用机器人 161 | 162 | 163 | # 微信公众号 164 | 165 | ## 注册公众号 166 | [https://mp.weixin.qq.com/](https://mp.weixin.qq.com/) 167 | 168 | ### 获取环境变量 169 | 公众号->设置与开发->基本配置
![](/doc/images/240627/11.png) 170 | 171 | ## Docker Compose 172 | 执行以下命令下载 docker-compose.yml: 173 | ```shell 174 | wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml 175 | ``` 176 | 修改文件 177 | ```yaml 178 | version: '2.0' 179 | services: 180 | chatgpt-on-wechat: 181 | image: zhayujie/chatgpt-on-wechat 182 | container_name: chatgpt-on-wechat 183 | security_opt: 184 | - seccomp:unconfined 185 | environment: 186 | OPEN_AI_API_KEY: 'YOUR API KEY' 187 | PROXY: '' 188 | SINGLE_CHAT_PREFIX: '[""]' 189 | SINGLE_CHAT_REPLY_PREFIX: '"[bot] "' 190 | GROUP_CHAT_PREFIX: '["@bot"]' 191 | GROUP_NAME_WHITE_LIST: '["ChatGPT测试群", "ChatGPT测试群2"]' 192 | IMAGE_CREATE_PREFIX: '["画", "看", "找"]' 193 | CONVERSATION_MAX_TOKENS: 1000 194 | SPEECH_RECOGNITION: 'False' 195 | CHARACTER_DESC: '你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。' 196 | EXPIRES_IN_SECONDS: 3600 197 | USE_GLOBAL_PLUGIN_CONFIG: 'True' 198 | USE_LINKAI: 'False' 199 | LINKAI_API_KEY: '' 200 | LINKAI_APP_CODE: '' 201 | ## 配置从以下开始 202 | ## 模型名称 注意此文件只保留一个模型名称,其余删掉 203 | MODEL: 'gemini' 204 | # 申请的 gemini api key 205 | GEMINI_API_KEY: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 206 | CHANNEL_TYPE: 'wechatmp' 207 | # 公众号->设置与开发->基本配置->开发者ID 208 | WECHATMP_APP_ID: 'xxxxxxxxxxxxxx' 209 | # 公众号->设置与开发->基本配置->开发者密码 210 | WECHATMP_APP_SECRET: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 211 | # 公众号->设置与开发->基本配置->服务器配置->EncodingAESKey(可以随机生成) 212 | WECHATMP_AES_KEY: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 213 | # 公众号->设置与开发->基本配置->服务器配置->Token(可以任意填写) 214 | WECHATMP_TOKEN: 'xxxxxxx' 215 | WECHATMP_PORT: 80 216 | ports: 217 | - 80:80 218 | ``` 219 | 220 | 启动docker 221 | ```shell 222 | # 启动docker 223 | sudo docker compose up -d 224 | # 查看日志 225 | sudo docker logs -f chatgpt-on-wechat 226 | # 停止docker 如果修改配置文件必须先停止再启动 227 | sudo docker compose down 228 | ``` 229 | 230 | 231 | ## 公众号完成配置 232 | 公众号->设置与开发->基本配置->服务器配置->修改配置
注意修改URL格式 http://服务器公网IP:80/wx
Token & EncodingAESKey 与 Docker Compose文件保持一致。
选择明文模式
![](/doc/images/240627/12.png)
最后提交即可。
如果提交不成功,请检查服务器防火墙,检查80端口是否暴露在公网。 233 | 234 | 235 | # 个人微信 236 | 237 | ## Docker 238 | 执行以下命令下载 docker-compose.yml: 239 | ```shell 240 | wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml 241 | ``` 242 | 修改文件 243 | ```yaml 244 | version: '2.0' 245 | services: 246 | chatgpt-on-wechat: 247 | image: zhayujie/chatgpt-on-wechat 248 | container_name: chatgpt-on-wechat 249 | security_opt: 250 | - seccomp:unconfined 251 | environment: 252 | OPEN_AI_API_KEY: 'YOUR API KEY' 253 | PROXY: '' 254 | SINGLE_CHAT_PREFIX: '[""]' 255 | SINGLE_CHAT_REPLY_PREFIX: '"[bot] "' 256 | GROUP_CHAT_PREFIX: '["@bot"]' 257 | GROUP_NAME_WHITE_LIST: '["ChatGPT测试群", "ChatGPT测试群2"]' 258 | IMAGE_CREATE_PREFIX: '["画", "看", "找"]' 259 | CONVERSATION_MAX_TOKENS: 1000 260 | SPEECH_RECOGNITION: 'False' 261 | CHARACTER_DESC: '你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。' 262 | EXPIRES_IN_SECONDS: 3600 263 | USE_GLOBAL_PLUGIN_CONFIG: 'True' 264 | USE_LINKAI: 'False' 265 | LINKAI_API_KEY: '' 266 | LINKAI_APP_CODE: '' 267 | ## 配置从以下开始 268 | MODEL: 'gemini' 269 | # 申请的 gemini api key 270 | GEMINI_API_KEY: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 271 | ports: 272 | - 9898:9898 273 | ``` 274 | 275 | 启动docker 276 | ```shell 277 | # 启动docker 278 | sudo docker compose up -d 279 | # 查看日志 #扫码登录 280 | sudo docker logs -f chatgpt-on-wechat 281 | ``` 282 | 283 | 284 | ## 扫码登录 285 | 查看日志以后,屏幕上会出现一个登录二维码,扫这个二维码即可登录微信。
286 | ![](/doc/images/240627/13.png)
287 | 登录完成后,其他人与这个微信即可进行AI微信对话。
288 | 289 | 290 | 291 | 292 | -------------------------------------------------------------------------------- /doc/grok_cookies.md: -------------------------------------------------------------------------------- 1 | 账户1 2 | ``` 3 | x-anonuserid=84f3b7aa-3c5a-429c-9e5c-8c28f3be2074; x-challenge=oM8FkSirJaastHlMcPNq2M%2Bz%2Bg2G%2B6cFPrKhhCaRSvW9xKo3c3d4RGHApikKRtRTkYRBQiib9zPrZlUsbgMp6v0IT%2F37fDmCpdG7z9h6TuN6cNeyhFf4wrZl2vIMlWSAtXCPcfi6nWF9Snblay%2BpNFdrp2jMr6PtvTzXVKrBNHDN2ck%2BJ78%3D; x-signature=W4NzxAi8Sp1Q5%2FRr7suNzEjKByqVuu2meEX16ywvXGtGeIIgaqeSxTR04nw%2B92I2nBl%2F%2BGShLqmfJurQvtVzgg%3D%3D; sso=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiMDUwZDc1M2ItNjZjNi00NDY4LWFkMTgtMmJkZGVkNDVhZjVjIn0.ugqKABKjCZxnQrML7MpL3R_I1-j4rwTvXYmoQnvsoks; sso-rw=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiMDUwZDc1M2ItNjZjNi00NDY4LWFkMTgtMmJkZGVkNDVhZjVjIn0.ugqKABKjCZxnQrML7MpL3R_I1-j4rwTvXYmoQnvsoks 4 | ``` 5 | 账户2 6 | ``` 7 | x-anonuserid=683eadbc-0099-4b35-8374-9112666cdc43; x-challenge=NFInq%2F3j8GWGcaBSMN8eT4ZPb0pGpwygcCUyC2D3iXkGW1VJE8NT4%2B7kQAlc7dlQpKNfQaM2UwZNeGYMD4KOIQKX7iUw30dDIKU%2BuHw6UnmsV4bj%2FJkxJlF5FYgyhZ5XpHYO9sBwzIX0At220sL34vl7Tb%2FCERSJ9qu7pQVs4PXGKrkK99w%3D; x-signature=48Ix7ZE4sn286TjEievFs%2F%2F2bBMGqSAxKaJEapJTogtz0wEy%2FI17kB7tU%2F9nxoU3iNYsk7a1EXDupYdMGhWP3g%3D%3D; sso-rw=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiZDc1OTZlZjUtZDk4Ny00MDE1LWEwNmEtODM5NzdiMzk5YmU5In0.J7hu591hq_xOGE3j1qm4hXxwIEAhBPe3djw3RhKdJMI; sso=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiZDc1OTZlZjUtZDk4Ny00MDE1LWEwNmEtODM5NzdiMzk5YmU5In0.J7hu591hq_xOGE3j1qm4hXxwIEAhBPe3djw3RhKdJMI 8 | ``` 9 | 账户3 10 | ``` 11 | x-anonuserid=ddb71564-2123-4521-b598-e483d8b7aad4; x-challenge=9Qn94ukmRICpJztYIDppj1h3ehcyj53fIfygzOcWVwhhWTG7EayH6fyEiimlqik%2BXeIeS44mO6%2FyZw7B6Dm5u97%2F3%2FQHOex36TQUNCszuc9OgMUS6hyASeLSE6gBPOcQJaDeVF2RJBw%2BBkNb8yuEAdMsHP4t7YFnjejDtMhjqnDysMaZoS8%3D; x-signature=P8Ao8fwHBVrfQ3c3XkYhU9oQhA0TxtY5VZIAHAB3y6poBbAQtyKnzH9fvnuJ37O7wxTaIIpvWxT49UkQW9kXwQ%3D%3D; sso=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiZDc5ZGM0NzgtNjBmMS00Yzc1LTg1MzYtYTgwNDJjZGY2YzI4In0.apw4a10P7MhXcwknYJT6-Qaj6ixMXlO4tMQ-D259Exw; sso-rw=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiZDc5ZGM0NzgtNjBmMS00Yzc1LTg1MzYtYTgwNDJjZGY2YzI4In0.apw4a10P7MhXcwknYJT6-Qaj6ixMXlO4tMQ-D259Exw 12 | ``` 13 | 账户4 14 | ``` 15 | sso-rw=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiNGFkOGMxNmMtM2I4NS00MDBiLWEwNzktNDc4MjM2MzY5OWQ5In0.C5uNeIAYxqBubRx4EHujGW7BJpcKqZAQ_NeKtgHG2wQ; sso=eyJhbGciOiJIUzI1NiJ9.eyJzZXNzaW9uX2lkIjoiNGFkOGMxNmMtM2I4NS00MDBiLWEwNzktNDc4MjM2MzY5OWQ5In0.C5uNeIAYxqBubRx4EHujGW7BJpcKqZAQ_NeKtgHG2wQ; cf_clearance=5m.RIyDO1FSn2VmhYPOiRyYbCjN4j84Z17MlrfyKPUQ-1740998713-1.2.1.1-pmxCybqRelQmTpDSboXM90GCtZMKe0DtBDVw7moYuKgsNqsVT3gmklBUZFuC8xJL3VK9adq7mByx4e2DosutfTzekuY6Amq_KV0Yq815PxeXc0uxSA3j4239bd_R.amxEyZ7GY6RCKhy.QmYNpXsvBNiFgweayRLd6cm75QxV3TG71SsEn3i6GRRP_NGATPKOHUPQGEsB99UV5ukjwTTCFp99W9.DuFjJtx2FBEaSNGFk07bGoFG7vIzbrpLNj2W2vtF82FLi_D0Pd2FDbJJYwz8rTHNjAcITnpcSFrZWLH4AO1OtCMLd_Y8Mh4JMRqG8d.B.GQfhkrXG7wjv6TFchVyxn92ZeFkE0qlJH2LkZBdCTnF093eFTaXLCGCeqZAz2MMzCiPrGEmtqeLLWP0kNIAtNeI_cEALBDyyBeY2g4 16 | ``` -------------------------------------------------------------------------------- /doc/images/240119/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240119/1.png -------------------------------------------------------------------------------- /doc/images/240119/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240119/2.png -------------------------------------------------------------------------------- /doc/images/240119/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240119/3.png -------------------------------------------------------------------------------- /doc/images/240217/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/1.png -------------------------------------------------------------------------------- /doc/images/240217/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/2.png -------------------------------------------------------------------------------- /doc/images/240217/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/3.png -------------------------------------------------------------------------------- /doc/images/240217/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/4.png -------------------------------------------------------------------------------- /doc/images/240217/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/5.png -------------------------------------------------------------------------------- /doc/images/240217/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/6.png -------------------------------------------------------------------------------- /doc/images/240217/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/7.png -------------------------------------------------------------------------------- /doc/images/240217/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/8.png -------------------------------------------------------------------------------- /doc/images/240217/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240217/9.jpg -------------------------------------------------------------------------------- /doc/images/240218/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240218/1.png -------------------------------------------------------------------------------- /doc/images/240502/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/1.png -------------------------------------------------------------------------------- /doc/images/240502/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/2.png -------------------------------------------------------------------------------- /doc/images/240502/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/3.png -------------------------------------------------------------------------------- /doc/images/240502/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/4.png -------------------------------------------------------------------------------- /doc/images/240502/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/5.png -------------------------------------------------------------------------------- /doc/images/240502/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/6.png -------------------------------------------------------------------------------- /doc/images/240502/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240502/7.png -------------------------------------------------------------------------------- /doc/images/240526/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240526/1.png -------------------------------------------------------------------------------- /doc/images/240526/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240526/2.png -------------------------------------------------------------------------------- /doc/images/240526/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240526/3.png -------------------------------------------------------------------------------- /doc/images/240526/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240526/4.png -------------------------------------------------------------------------------- /doc/images/240526/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240526/5.png -------------------------------------------------------------------------------- /doc/images/240627/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/1.png -------------------------------------------------------------------------------- /doc/images/240627/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/10.png -------------------------------------------------------------------------------- /doc/images/240627/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/11.png -------------------------------------------------------------------------------- /doc/images/240627/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/12.png -------------------------------------------------------------------------------- /doc/images/240627/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/13.png -------------------------------------------------------------------------------- /doc/images/240627/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/2.png -------------------------------------------------------------------------------- /doc/images/240627/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/3.png -------------------------------------------------------------------------------- /doc/images/240627/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/4.png -------------------------------------------------------------------------------- /doc/images/240627/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/5.png -------------------------------------------------------------------------------- /doc/images/240627/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/6.png -------------------------------------------------------------------------------- /doc/images/240627/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/7.png -------------------------------------------------------------------------------- /doc/images/240627/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/8.png -------------------------------------------------------------------------------- /doc/images/240627/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tech-shrimp/me/cc40949af6733d8e95d6723aae18d036ff3ebd9d/doc/images/240627/9.png -------------------------------------------------------------------------------- /doc/n8n/community_mcp.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "My workflow 3", 3 | "nodes": [ 4 | { 5 | "parameters": { 6 | "options": {} 7 | }, 8 | "type": "@n8n/n8n-nodes-langchain.chatTrigger", 9 | "typeVersion": 1.1, 10 | "position": [ 11 | 0, 12 | 0 13 | ], 14 | "id": "9f6e3f02-f261-44f8-a07d-e48a262a2cb4", 15 | "name": "When chat message received", 16 | "webhookId": "5ea121e4-2660-44ec-a2bd-b3cae6fbb70e" 17 | }, 18 | { 19 | "parameters": { 20 | "options": {} 21 | }, 22 | "type": "@n8n/n8n-nodes-langchain.agent", 23 | "typeVersion": 1.9, 24 | "position": [ 25 | 220, 26 | 0 27 | ], 28 | "id": "68ccd920-7919-4969-963d-ef2ea9cb4f33", 29 | "name": "AI Agent" 30 | }, 31 | { 32 | "parameters": { 33 | "options": {} 34 | }, 35 | "type": "@n8n/n8n-nodes-langchain.lmChatDeepSeek", 36 | "typeVersion": 1, 37 | "position": [ 38 | 220, 39 | 180 40 | ], 41 | "id": "61446f34-ca37-4a50-8fcc-b02250450992", 42 | "name": "DeepSeek Chat Model", 43 | "credentials": { 44 | "deepSeekApi": { 45 | "id": "rL0xgY92Lv6pf6VU", 46 | "name": "DeepSeek account" 47 | } 48 | } 49 | }, 50 | { 51 | "parameters": {}, 52 | "type": "n8n-nodes-mcp.mcpClientTool", 53 | "typeVersion": 1, 54 | "position": [ 55 | 340, 56 | 220 57 | ], 58 | "id": "d6b9895b-0b84-42aa-a6af-ab9f42b8d14d", 59 | "name": "MCP Client", 60 | "credentials": { 61 | "mcpClientApi": { 62 | "id": "ckyKQQVZnWMFrEeT", 63 | "name": "MCP Client (STDIO) account" 64 | } 65 | } 66 | }, 67 | { 68 | "parameters": { 69 | "operation": "executeTool", 70 | "toolName": "={{ $fromAI('toolname') }}", 71 | "toolParameters": "={{ $fromAI('Tool_Parameters', '' , 'json') }}" 72 | }, 73 | "type": "n8n-nodes-mcp.mcpClientTool", 74 | "typeVersion": 1, 75 | "position": [ 76 | 480, 77 | 220 78 | ], 79 | "id": "b5b4a337-90cf-49ab-812a-fde9807510dd", 80 | "name": "MCP Client1", 81 | "credentials": { 82 | "mcpClientApi": { 83 | "id": "ckyKQQVZnWMFrEeT", 84 | "name": "MCP Client (STDIO) account" 85 | } 86 | } 87 | } 88 | ], 89 | "pinData": {}, 90 | "connections": { 91 | "When chat message received": { 92 | "main": [ 93 | [ 94 | { 95 | "node": "AI Agent", 96 | "type": "main", 97 | "index": 0 98 | } 99 | ] 100 | ] 101 | }, 102 | "DeepSeek Chat Model": { 103 | "ai_languageModel": [ 104 | [ 105 | { 106 | "node": "AI Agent", 107 | "type": "ai_languageModel", 108 | "index": 0 109 | } 110 | ] 111 | ] 112 | }, 113 | "MCP Client": { 114 | "ai_tool": [ 115 | [ 116 | { 117 | "node": "AI Agent", 118 | "type": "ai_tool", 119 | "index": 0 120 | } 121 | ] 122 | ] 123 | }, 124 | "MCP Client1": { 125 | "ai_tool": [ 126 | [ 127 | { 128 | "node": "AI Agent", 129 | "type": "ai_tool", 130 | "index": 0 131 | } 132 | ] 133 | ] 134 | } 135 | }, 136 | "active": false, 137 | "settings": { 138 | "executionOrder": "v1" 139 | }, 140 | "versionId": "cff1ceb6-f011-44b9-91b2-63b9e7914b5b", 141 | "meta": { 142 | "templateCredsSetupCompleted": true, 143 | "instanceId": "cc6dc3cfc3fbfcd06da8af92309caf8c6469a46f395f6a03e1bf94d7327a23b3" 144 | }, 145 | "id": "HVjEARDjSBn8mV1p", 146 | "tags": [] 147 | } -------------------------------------------------------------------------------- /doc/n8n/dual_way_mcp.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "My workflow 2", 3 | "nodes": [ 4 | { 5 | "parameters": { 6 | "options": {} 7 | }, 8 | "type": "@n8n/n8n-nodes-langchain.chatTrigger", 9 | "typeVersion": 1.1, 10 | "position": [ 11 | 0, 12 | -120 13 | ], 14 | "id": "5d4a99ca-2be4-42a5-b2dd-85d88234e223", 15 | "name": "When chat message received", 16 | "webhookId": "b1cd4938-07c6-404f-b811-6455c9bb1b6a" 17 | }, 18 | { 19 | "parameters": { 20 | "options": {} 21 | }, 22 | "type": "@n8n/n8n-nodes-langchain.agent", 23 | "typeVersion": 1.9, 24 | "position": [ 25 | 220, 26 | 0 27 | ], 28 | "id": "872cf90f-d89d-426d-a758-f7edd63e3c33", 29 | "name": "AI Agent" 30 | }, 31 | { 32 | "parameters": { 33 | "options": {} 34 | }, 35 | "type": "@n8n/n8n-nodes-langchain.lmChatDeepSeek", 36 | "typeVersion": 1, 37 | "position": [ 38 | 248, 39 | 220 40 | ], 41 | "id": "80d2b027-5bd8-4d34-9eea-fdb299fba2fc", 42 | "name": "DeepSeek Chat Model", 43 | "credentials": { 44 | "deepSeekApi": { 45 | "id": "rL0xgY92Lv6pf6VU", 46 | "name": "DeepSeek account" 47 | } 48 | } 49 | }, 50 | { 51 | "parameters": { 52 | "sseEndpoint": "https://mcp.map.baidu.com/sse?ak=oQtLKH5iWxTAqJpk0tnsHeMhDqD0xjlM" 53 | }, 54 | "type": "@n8n/n8n-nodes-langchain.mcpClientTool", 55 | "typeVersion": 1, 56 | "position": [ 57 | 368, 58 | 220 59 | ], 60 | "id": "712d7976-c7e5-45c3-a6aa-d8924003a0f0", 61 | "name": "MCP Client" 62 | }, 63 | { 64 | "parameters": { 65 | "path": "62ac2b66-8c9b-44fe-8201-2d1c0605ba21" 66 | }, 67 | "type": "@n8n/n8n-nodes-langchain.mcpTrigger", 68 | "typeVersion": 1, 69 | "position": [ 70 | -220, 71 | 220 72 | ], 73 | "id": "258134f3-6312-4190-a5f4-fb12587e82e9", 74 | "name": "MCP Server Trigger", 75 | "webhookId": "62ac2b66-8c9b-44fe-8201-2d1c0605ba21" 76 | }, 77 | { 78 | "parameters": { 79 | "description": "地图MCP,用来规划路线等", 80 | "workflowId": { 81 | "__rl": true, 82 | "value": "xv9zlRTAN5OBXQLt", 83 | "mode": "list", 84 | "cachedResultName": "My workflow 2" 85 | }, 86 | "workflowInputs": { 87 | "mappingMode": "defineBelow", 88 | "value": { 89 | "chatInput": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('chatInput', ``, 'string') }}" 90 | }, 91 | "matchingColumns": [ 92 | "chatInput" 93 | ], 94 | "schema": [ 95 | { 96 | "id": "chatInput", 97 | "displayName": "chatInput", 98 | "required": false, 99 | "defaultMatch": false, 100 | "display": true, 101 | "canBeUsedToMatch": true, 102 | "type": "string", 103 | "removed": false 104 | } 105 | ], 106 | "attemptToConvertTypes": false, 107 | "convertFieldsToString": false 108 | } 109 | }, 110 | "type": "@n8n/n8n-nodes-langchain.toolWorkflow", 111 | "typeVersion": 2.2, 112 | "position": [ 113 | -140, 114 | 440 115 | ], 116 | "id": "097838e6-c0da-4cdc-a51c-fd5e521bdfc7", 117 | "name": "Call n8n Workflow Tool" 118 | }, 119 | { 120 | "parameters": { 121 | "workflowInputs": { 122 | "values": [ 123 | { 124 | "name": "chatInput" 125 | } 126 | ] 127 | } 128 | }, 129 | "type": "n8n-nodes-base.executeWorkflowTrigger", 130 | "typeVersion": 1.1, 131 | "position": [ 132 | -20, 133 | 40 134 | ], 135 | "id": "3add761e-f73e-4ab1-ab8a-cf3247ba58d0", 136 | "name": "When Executed by Another Workflow" 137 | } 138 | ], 139 | "pinData": {}, 140 | "connections": { 141 | "When chat message received": { 142 | "main": [ 143 | [ 144 | { 145 | "node": "AI Agent", 146 | "type": "main", 147 | "index": 0 148 | } 149 | ] 150 | ] 151 | }, 152 | "DeepSeek Chat Model": { 153 | "ai_languageModel": [ 154 | [ 155 | { 156 | "node": "AI Agent", 157 | "type": "ai_languageModel", 158 | "index": 0 159 | } 160 | ] 161 | ] 162 | }, 163 | "MCP Client": { 164 | "ai_tool": [ 165 | [ 166 | { 167 | "node": "AI Agent", 168 | "type": "ai_tool", 169 | "index": 0 170 | } 171 | ] 172 | ] 173 | }, 174 | "Call n8n Workflow Tool": { 175 | "ai_tool": [ 176 | [ 177 | { 178 | "node": "MCP Server Trigger", 179 | "type": "ai_tool", 180 | "index": 0 181 | } 182 | ] 183 | ] 184 | }, 185 | "When Executed by Another Workflow": { 186 | "main": [ 187 | [ 188 | { 189 | "node": "AI Agent", 190 | "type": "main", 191 | "index": 0 192 | } 193 | ] 194 | ] 195 | } 196 | }, 197 | "active": true, 198 | "settings": { 199 | "executionOrder": "v1" 200 | }, 201 | "versionId": "0130b2af-f55c-4c49-bcfa-e625cda4bac8", 202 | "meta": { 203 | "templateCredsSetupCompleted": true, 204 | "instanceId": "cc6dc3cfc3fbfcd06da8af92309caf8c6469a46f395f6a03e1bf94d7327a23b3" 205 | }, 206 | "id": "xv9zlRTAN5OBXQLt", 207 | "tags": [] 208 | } -------------------------------------------------------------------------------- /doc/n8n/hacker_new_to_email.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "My workflow", 3 | "nodes": [ 4 | { 5 | "parameters": { 6 | "url": "https://hnrss.org/newest?points=10", 7 | "options": {} 8 | }, 9 | "type": "n8n-nodes-base.rssFeedRead", 10 | "typeVersion": 1.1, 11 | "position": [ 12 | 220, 13 | 0 14 | ], 15 | "id": "b4f1fc53-f4ca-481e-baaf-1866fc178c3c", 16 | "name": "RSS Read" 17 | }, 18 | { 19 | "parameters": { 20 | "resource": "Default", 21 | "operation": "Scrape A Url And Get Its Content", 22 | "url": "={{ $json.link }}", 23 | "requestOptions": {} 24 | }, 25 | "type": "n8n-nodes-firecrawl.fireCrawl", 26 | "typeVersion": 1, 27 | "position": [ 28 | 660, 29 | 0 30 | ], 31 | "id": "abc56591-b5cb-4247-b9bf-c4bc015c6595", 32 | "name": "FireCrawl", 33 | "credentials": { 34 | "fireCrawlApi": { 35 | "id": "zrV6S3Ylg7kpsVkF", 36 | "name": "FireCrawl account" 37 | } 38 | } 39 | }, 40 | { 41 | "parameters": { 42 | "maxItems": 3 43 | }, 44 | "type": "n8n-nodes-base.limit", 45 | "typeVersion": 1, 46 | "position": [ 47 | 440, 48 | 0 49 | ], 50 | "id": "a73fbe4d-c392-417f-afa0-55fac382a0ac", 51 | "name": "Limit" 52 | }, 53 | { 54 | "parameters": { 55 | "promptType": "define", 56 | "text": "={{ $json.data }}", 57 | "options": { 58 | "systemMessage": "你是一个新闻助手,我需要你把从网站上爬取的数据,整理成一个新闻简报。" 59 | } 60 | }, 61 | "type": "@n8n/n8n-nodes-langchain.agent", 62 | "typeVersion": 1.9, 63 | "position": [ 64 | 880, 65 | 0 66 | ], 67 | "id": "721b7d4b-3237-4abd-9ba5-fd940a263184", 68 | "name": "AI Agent" 69 | }, 70 | { 71 | "parameters": { 72 | "options": {} 73 | }, 74 | "type": "@n8n/n8n-nodes-langchain.lmChatDeepSeek", 75 | "typeVersion": 1, 76 | "position": [ 77 | 920, 78 | 220 79 | ], 80 | "id": "c32782f5-f267-4639-91a0-058286bd2961", 81 | "name": "DeepSeek Chat Model", 82 | "credentials": { 83 | "deepSeekApi": { 84 | "id": "rL0xgY92Lv6pf6VU", 85 | "name": "DeepSeek account" 86 | } 87 | } 88 | }, 89 | { 90 | "parameters": { 91 | "fieldsToAggregate": { 92 | "fieldToAggregate": [ 93 | { 94 | "fieldToAggregate": "output" 95 | } 96 | ] 97 | }, 98 | "options": {} 99 | }, 100 | "type": "n8n-nodes-base.aggregate", 101 | "typeVersion": 1, 102 | "position": [ 103 | 1240, 104 | 0 105 | ], 106 | "id": "d2bf8d38-36f4-44d8-8d48-6aa33960550c", 107 | "name": "Aggregate" 108 | }, 109 | { 110 | "parameters": { 111 | "mode": "markdownToHtml", 112 | "markdown": "={{ $json.output.join(\"\\n\\n\") }}", 113 | "options": {} 114 | }, 115 | "type": "n8n-nodes-base.markdown", 116 | "typeVersion": 1, 117 | "position": [ 118 | 1460, 119 | 0 120 | ], 121 | "id": "2d4192c2-32bb-4670-b7c4-0104b80ea757", 122 | "name": "Markdown" 123 | }, 124 | { 125 | "parameters": { 126 | "fromEmail": "939178127@qq.com", 127 | "toEmail": "tech-shrimp@outlook.com", 128 | "subject": "新闻简报", 129 | "html": "={{ $json.data }}", 130 | "options": {} 131 | }, 132 | "type": "n8n-nodes-base.emailSend", 133 | "typeVersion": 2.1, 134 | "position": [ 135 | 1680, 136 | 0 137 | ], 138 | "id": "9e9fccba-9a9e-43a4-92d8-40f0aa8317dd", 139 | "name": "Send Email", 140 | "webhookId": "6cf9cba8-50db-4d03-8f26-1cddf1ff3fae", 141 | "credentials": { 142 | "smtp": { 143 | "id": "SkoMFAjgo8tMiMbI", 144 | "name": "SMTP account" 145 | } 146 | } 147 | }, 148 | { 149 | "parameters": { 150 | "rule": { 151 | "interval": [ 152 | { 153 | "field": "hours", 154 | "hoursInterval": 4 155 | } 156 | ] 157 | } 158 | }, 159 | "type": "n8n-nodes-base.scheduleTrigger", 160 | "typeVersion": 1.2, 161 | "position": [ 162 | 0, 163 | 0 164 | ], 165 | "id": "8edecec8-2522-47ef-a362-1bd14b8c9ed4", 166 | "name": "Schedule Trigger" 167 | } 168 | ], 169 | "pinData": { 170 | "AI Agent": [ 171 | { 172 | "json": { 173 | "output": "**新闻简报:西方国家对加沙局势的沉默引发批评** \n\n**标题**:西方国家对加沙局势的“可耻沉默” \n\n**来源**:英国《金融时报》(Financial Times) \n\n**主要内容**: \n- 文章批评美国及欧洲盟友在加沙冲突中未能有效约束以色列总理内塔尼亚胡(Benjamin Netanyahu),导致局势持续恶化。 \n- 作者认为,西方国家在巴以冲突中的不作为或沉默态度令人失望,呼吁采取更强有力的外交干预措施。 \n- 报道配图显示加沙地带的冲突场景,凸显人道主义危机的严重性。 \n\n**背景**: \n近期巴以冲突持续升级,加沙地带平民伤亡加剧,国际社会对以色列军事行动的批评增多,但西方国家尚未采取实质性行动施压以方。 \n\n**订阅提示**: \n本文为《金融时报》付费内容,完整报道需订阅后阅读。 \n\n**关键词**:加沙冲突、西方国家、内塔尼亚胡、外交干预、人道主义危机 \n\n(简报基于网页元数据整理,具体内容以原文为准。)" 174 | } 175 | }, 176 | { 177 | "json": { 178 | "output": "**新闻简报:2038年时间漏洞危机引发关注**\n\n**标题**:全球技术专家发起\"Epochalypse项目\"应对2038年时间漏洞危机 \n\n**主要内容**: \n1. **项目背景**:由技术专家发起的\"Epochalypse项目\"正致力于提高公众对2038年时间漏洞(2038 bug)的认知,并争取在问题爆发前找到解决方案。 \n\n2. **问题严重性**:2038年1月19日,32位系统的Unix时间戳将溢出,可能导致全球计算机系统出现类似\"千年虫\"的大规模故障,影响金融、交通、通信等关键基础设施。 \n\n3. **项目目标**:该项目通过网站(epochalypse-project.org)汇集全球技术力量,协调解决方案,呼吁企业和开发者提前升级系统架构。 \n\n4. **时间紧迫性**:距离潜在危机只剩不到15年时间,项目团队强调现在是解决问题的关键窗口期。 \n\n**专家建议**: \n- 企业应尽快评估系统脆弱性 \n- 优先升级依赖32位时间戳的遗留系统 \n- 参与全球协作解决这一跨行业挑战 \n\n**相关链接**:https://epochalypse-project.org/ \n\n(简报基于epochalypse-project.org官网信息整理)" 179 | } 180 | }, 181 | { 182 | "json": { 183 | "output": "**新闻简报:IBM调查显示企业AI投资多受FOMO驱动而非实际回报**\n\n**标题**:大多数AI支出由FOMO驱动而非ROI,CEO们向IBM透露\n\n**来源**:The Register \n**日期**:2025年5月6日 \n**链接**:[原文链接](https://www.theregister.com/2025/05/06/ibm_ai_investments/) \n\n**核心内容**: \n根据IBM最新调查,全球企业高管承认,当前人工智能(AI)领域的投资热潮主要受\"害怕错过\"(FOMO)心理驱动,而非基于实际投资回报率(ROI)的理性决策。数据显示,目前仅有约25%的AI投资获得了预期回报。\n\n**关键发现**: \n1. 企业AI投资中,每4个项目只有1个能实现预期收益 \n2. FOMO(害怕错过)是推动AI支出的主要因素 \n3. 多数CEO表示面临保持AI竞争力的压力 \n\n**行业影响**: \n该调查结果揭示了当前AI投资热潮背后的非理性因素,可能引发企业对AI战略的重新评估。专家建议企业应更注重实际应用场景和可衡量的商业价值,而非盲目跟风。\n\n**延伸阅读**: \n报告还指出,成功的AI项目往往具有清晰的业务目标、可靠的数据基础和可量化的KPI,这些因素比单纯的技术先进性更能确保投资回报。\n\n**备注**:该调查由IBM在2025年第一季度进行,覆盖全球多个行业的企业决策者。" 184 | } 185 | } 186 | ] 187 | }, 188 | "connections": { 189 | "RSS Read": { 190 | "main": [ 191 | [ 192 | { 193 | "node": "Limit", 194 | "type": "main", 195 | "index": 0 196 | } 197 | ] 198 | ] 199 | }, 200 | "Limit": { 201 | "main": [ 202 | [ 203 | { 204 | "node": "FireCrawl", 205 | "type": "main", 206 | "index": 0 207 | } 208 | ] 209 | ] 210 | }, 211 | "FireCrawl": { 212 | "main": [ 213 | [ 214 | { 215 | "node": "AI Agent", 216 | "type": "main", 217 | "index": 0 218 | } 219 | ] 220 | ] 221 | }, 222 | "DeepSeek Chat Model": { 223 | "ai_languageModel": [ 224 | [ 225 | { 226 | "node": "AI Agent", 227 | "type": "ai_languageModel", 228 | "index": 0 229 | } 230 | ] 231 | ] 232 | }, 233 | "AI Agent": { 234 | "main": [ 235 | [ 236 | { 237 | "node": "Aggregate", 238 | "type": "main", 239 | "index": 0 240 | } 241 | ] 242 | ] 243 | }, 244 | "Aggregate": { 245 | "main": [ 246 | [ 247 | { 248 | "node": "Markdown", 249 | "type": "main", 250 | "index": 0 251 | } 252 | ] 253 | ] 254 | }, 255 | "Markdown": { 256 | "main": [ 257 | [ 258 | { 259 | "node": "Send Email", 260 | "type": "main", 261 | "index": 0 262 | } 263 | ] 264 | ] 265 | }, 266 | "Schedule Trigger": { 267 | "main": [ 268 | [ 269 | { 270 | "node": "RSS Read", 271 | "type": "main", 272 | "index": 0 273 | } 274 | ] 275 | ] 276 | } 277 | }, 278 | "active": true, 279 | "settings": { 280 | "executionOrder": "v1" 281 | }, 282 | "versionId": "994ba9e8-d518-48c9-87f1-b4fa80a0996b", 283 | "meta": { 284 | "templateCredsSetupCompleted": true, 285 | "instanceId": "cc6dc3cfc3fbfcd06da8af92309caf8c6469a46f395f6a03e1bf94d7327a23b3" 286 | }, 287 | "id": "RTqWJF9simyvdazZ", 288 | "tags": [] 289 | } --------------------------------------------------------------------------------