## 柳暗花明又一村
今天,继续研究【英语学习小助手】机器人视频5的内容。
昨天文章中,我还在说,视频5的内容每次听都还在犯困,然后从昨晚开始我就在做思维导图,试图把内容逐渐拆分成小模块,同时用抄代码的方式熟悉、理解代码。
**不知道是否跟这个拆解过程有关,还是因为重复的次数足够多,今天再听视频5的时候,发现,之前隐形的脉络结构逐渐浮现了出来,就像小时候玩的神奇的“密信实验”,原来的无字的白纸上用神奇的墨水或者烧烤后,字迹开始一一显形。**
**这样的过程让人激动不已,也再次验证了“读不懂也要坚持读完”的自学理论。**
一旦明白后,再回看视频,会发现so easy,但是在这之前,就一直困在秘境里。
思考后,发现,为什么之前看不懂的原因,其实还是对于整体的流程和步骤拆解的不够细。
## 拆解
简单说,视频4和5都是在引入ChatGPT的过程,但这是一个比较大的模块,如果从具体执行实操上分,可以再拆分成好几个小模块,比如:
1. 注册OpenAI账户
仅这一步,其实就卡住了包含我在内的不少人,通过项目组成员之间的沟通,会发现解决思路的不同。
比如:因为我很早之前就意识到我的手机号因为一些特殊原因不能正常使用Google账号,同时也出于我想要解决Microsoft账户的邮箱验证问题,所以从一开始我就着力于跟Microsoft账户的死磕。
而另一个战友在遇到相同的注册问题时,他直接采用了用新手机号进行注册申请的操作,而这是我从来没有设想过的角度,因为在我的概念里,就没有想过更换手机号这一选项,我默认的前提假设就是当前的给定条件都不变的情况下,寻找最优解。
**可是,在实际解决问题的过程中, 是谁规定了前提条件不能变呢?**
**是我自己,是我自己思维中的看不见的墙。**
这让我看到了:
> “
>
> 打破思维框架和创意性解决问题的能力。
**我们每个人的思维里都有一道看不见的墙,有时,我们需要跳出来,从更高的维度、更新的角度来尝试解决问题。**
2. 引入ChatGPT
因为没有注册成功,所以就没有办法复制这里的引入调用代码。
**最后,本着继续推进的目的,我逼迫自己手抄代码,同时把手抄的代码借助ChatGPT进行逐段翻译,帮助理解。**
这一步代码的目的,是引入ChatGPT。
这个过程,让我对配置代码的结构有了整体了解。
而也正是在这个抄代码的过程,让我认识到,这里的代码和后面更改model3.5的代码前半部分是相同的,从而认识到了自己以前的错误,让进程得以顺利进行。
3. 安装SDK
这一步是整个进程中唯一没有遇到卡点的一个步骤,想想都要留下一把辛酸泪。
4. 生成APIKEY
这一步,因为我一直没有注册成功,所以直接求助并使用mumu提供的测试KEY。
5. 配置config.js文件
为了隐藏这个KEY信息,需要把openai\_key配置到另一个config.js文件里。
这个步骤在教程视频中被刻意隐藏了,没有讲解这一块的详细步骤。
**但这一步,其实也是一个实操卡点,虽然之前已经有过一段相同的配置文件,但单文件配置引用和多文件的配置,还是有区别的。**
是要重新生成一个调用函数,还是在原有的数据类型中添加,我也花了一些时间进行研究。
6. 重新引入Chat3.5
之前步骤2中的代码是直接复制粘贴了model3的代码,为了使用最新可用的3.5代码,重新进行了代码的修改。
而也正是这一步,导致了之前的理解错误。
之前一直认为,这一步是在之前model3代码上的添加修改,所以一直认为必须使用Model3的代码,所以一直跟这段代码死磕。可是后来发现,其实前面整一段关于Model3代码的引入完全可以不要,直接复制粘贴3.5的代码即可。
而能发现这个认知误区,得益于正是之前摘抄代码的过程让我对代码有了深刻的认识和理解。
7. 翻译实例的代码
这一段,是直接测试使用ChatGPT案例的基础上进行修改,将Chinese翻译成English进行回传显示。
我在这一步,遇到了报错信息,正在解决中,今天就先写到这里,明天继续。
我是**爱梅**,下期见。