@晨曦,你可以说继续,然后它会继续发。
@胡椒舰长,我现在也登不进去了,提示”ChatGPT 现在满负荷运转“
@胡椒舰长,之前在用的就还能用
@无名啊,噗,居然是这样,ChatGPT居然犯了人类才会犯的错误,它难道也依赖某种直觉?
@幕后导演,啊我没发现,我看开头是对的就以为整个都是对的。
从中间某个位置开始出错,情况不太妙啊,看起来出现了浮点舍入误差。
我觉得我应该搞一个ChatGPT机器人来自动回答此类问题
ChatGPT:
<?php $obj = "A4NjFqYu5wPHsO0XTdDgMa2r1ZQocVte9UJBvk6/7=yRnhISGKblCWi+LpfE8xzm3"; $strs = '0c4a20131ebd12f0de2b54163fe318b1e'; $r = ""; for ($i = 0; $i < strlen($strs);) { $ccc = ord($strs[$i++]); $iii = ($ccc) >> 2; $e = ord($strs[$i++]); $aaa = ((3 & $ccc) << 4) | ($e >> 4); $n = ord($strs[$i++]); $bbb = ((15 & $e) << 2) | ($n >> 6); $ccc = 63 & $n; is_nan($e) ? $bbb = $ccc = 64 : is_nan($n) && ($ccc = 64); $r = $r . $obj[$iii] . $obj[$aaa] . $obj[$bbb] . $obj[$ccc]; } echo $r; ?>
结果依然是sYsC1g5GsgOk16TKs61GZYMb1BMCsg1lZ6MlsgUJs2M3
@无名啊,嗯。现在看起来,ChatGPT更像一个设计巧妙的搜索引擎,你还是得通过关键词引导它加载对应的“记忆”,然后才能得到正确的答案。
不过和搜索引擎相比,错误答案也被精心包装了起来,难以和正确答案做出区分。
有趣的转变:
看起来ChatGPT可以进行“推理”。
或者加载英文素材库解决了中文素材库缺少蓝环章鱼资料的问题。
@消失的彩虹海,还有这个,直接是你想要的功能
https://hu60.cn/q.php/bbs.topic.102106.2.html?floor=23#23https://www.php.net/manual/zh/book.runkit7.php
先rename一个函数,再add一个自己的,就实现了劫持。
@无名啊,因为每行代码都return,所以可以安全的删除所有else。
// 只更新了行政区划代码,则按这个代码进行后续逻辑 if (new_addr == old_addr && new_code != old_code) { return new_code; } // 只更新了地址,则解析出地址对应的行政区划代码,再后续逻辑 if (new_addr != old_addr && new_code == old_code) { return parse(new_addr); } // 两者都没更新,则是来自 INSERT 触发器的(SQLite 不支持合并 INSERT UPDATE 触发器) // 提供了行政区划代码,则优先使用,否则解析提供的地址 if (new_code == NULL) { return parse(new_addr); } return new_code;
@卷心菜,WSL1的运行环境不是虚拟机,而是兼容层。WSL1的Linux 4.4内核是微软用几个Windows驱动程序模拟的。所以WSL1进程实际上都是NT进程,任务管理器自然能看到,而且能与之交互(比如结束进程)。
WSL2是虚拟机,在WSL2里访问Windows文件需要通过虚拟网卡传输。而WSL1则不需要,NT进程可以直接访问到任意NTFS文件,所以WSL1可以直接读写Windows分区,读写Windows分区文件的速度明显快于WSL2(比如操作非常大的git版本库时感知明显)。
WSL2要想实现快速文件操作,必须在虚拟机磁盘分区里进行。不过虚拟机磁盘的性能通常比WSL1直接读写NTFS分区更好。
至于在WSL1和2之间切换,微软用了tar打包的方法转移数据,所以数据不会丢失。
@艾木友尔尔巴,官网:https://chat.openai.com/ 需要自己想办法获取访问资格。
前几天别人建的免登录反向代理 https://gpt.chatapi.art 现在已经用不了了。
@chuyi,virt-manager,可以从软件源安装。
@Curtion,嗯确实,相当于我用语言调整了它的参数。
继续PHP:
这个回答其实很不错,我没告诉它要修复trim,它也修复了。
最后它真的修好了,结果完全正确。
<?php echo "FinalShell-Keygen v1.0 - Developed by UltraPanda\n* Only for educational purpose *\n请输入离线激活所提供的机器码: "; $hardwareId = trim(fgets(STDIN)); echo "高级版激活码: " . transform("\u{ef79}" . $hardwareId . "8552") . "\n"; echo "专业版激活码: " . transform("2356" . $hardwareId . "13593") . "\n"; function transform($str) { return substr(hashMD5($str), 8, 16); } function hashMD5($str) { return md5($str); }
至于golang,在经我两次提醒之后,ChatGPT给出了完全正确的结果:
package main import ( "bufio" "fmt" "crypto/md5" "os" "strings" ) func main() { reader := bufio.NewReader(os.Stdin) fmt.Println("FinalShell-Keygen v1.0 - Developed by UltraPanda\n* Only for educational purpose *\n请输入离线激活所提供的机器码: ") hardwareId, _ := reader.ReadString('\n') hardwareId = strings.TrimSpace(hardwareId) fmt.Printf("高级版激活码: %s\n专业版激活码: %s\n", transform("\U0000ef79" + hardwareId + "8552"), transform("2356" + hardwareId + "13593")) } func transform(str string) string { return hashMD5(str)[8:24] } func hashMD5(str string) string { hashed := md5.Sum([]byte(str)) sb := "" for _, b := range hashed { len := int(b) & 255 if len < 16 { sb += "0" } sb += fmt.Sprintf("%x", len) } return sb }