之前写了几篇关于chatGPT的文章,最近的文章插图甚至也有是用Dall-E或者Bing生成的,我当然不会让自己仅限于此了,因为我一直希望给自己的博客加一个功能,就是能帮我回复各位读者问题的聊天机器人,而且不是那种胡扯的机器人,而是能针对我的博文内容生成回答的聊天机器人。
实现这个功能需要使用openAI一个叫fine tuning的功能,也就是用一系列的问答在GPT的基础上训练一个自己的聊天模型。
但是我的博客只是很多的文章,基本没有什么问答,这可怎么办呢?
没关系,还可以将文章内容喂给GPT,让它根据文章生成一系列的问答。
毕竟我有100多篇文章,实在不想自己手动在ChatGPT里跟它交互,于是我决定使用python编程,使用GPT API接口将这个过程自动化。
下面的截图就是跟一部分GPT API接口的通讯记录,整个通讯过程花了七八个小时,并不是点一下就完成了,正经需要些耐心。
听起来好像挺简单是吧?我一开始也是这么觉得的,但是很快我就遇到了一个难题,就是我并不会python。
不过没关系,chatGPT不是还会编程嘛,我这个伪程序猿怎么说也会一些伪代码,我需要的可能只是大概对程序构想,让chatGPT自动生成一系列的代码就行了。
总的来说一共8个步骤:
- 把文字存为单独的word文档
- 把每个文档按照小标题单独分割为更小的文档,以让长度符合GPT API的要求
- 把小到已经没意义了的文档删除
- 把所有文档依次发给GPT API并让它按要求处理成符合格式要求的问答对
- 把不符合格式的部分进行修改
- 检查问答的质量,删除不好的问答
- 将问答对在发给GPT的fine tuining功能模块,让它训练出一个针对我的内容的问答机器人
- 把问答机器人装进博客里
这个过程对于一个伪程序猿来说,实施下来还是不能算太简单,我遇到了下面几个问题:
- GPT的API无法接受太长的信息,我必须写一个程序自动将文章变成更短的文件。
- chatGPT给的第一版代码无法正常处理中文字符,但是它没有明说,debug的过程中才发现
- 自动生成python代码无法处理自己生成的奇怪文件名
- 问答的格式要符合API的要求
- 以及一系列我也不知道什么意思的错误代码
不过说来说去,最后它真的帮助我这个伪程序员写了一共5个小程序,完成了所有我需要的任务。
要说这么工作感受吧,像极了带一个学生写做毕设,我要告诉他需要做什么事儿,他会自己尝试去做,但是又经常会遇到问题要来问我怎么办,我帮他解决了问题之后,他会继续自己去工作。解决了所有问题后,我就有了一个能用在自己工作上的工具。这个过程中,我没必要了解所有细节,但需要控制大体方向。
整个过程的收费也不算高,将163篇文章转换为4862+1560+3500=9922对问答一共花了我 5.59美元,训练模型花了大概13美元,总共花了不到19欧元。
可惜结果不是太令人满意,我试着跟它聊天,感觉说出来的话很难看懂,都是车轱辘话,用词也很奇怪,不知道是不是我给他投喂的数据质量不行,等有时间了我可能会慢慢研究到底怎么样才能让它代替我和读者对话。下面的框里就是训练出来的对话机器人了。
[mwai_chat context=”Converse in chinese as if you were an AI assistant. Be friendly, creative. ” ai_name=”Dr. Rich的AI替身: ” start_sentence=”Hi! 我是Dr. Rich的AI替身,你可以向我提任何问题,但是现在我比较擅长贷款方面的话题。我尽量不胡说,如果需要准确的信息,请使用站内搜索功能。” max_sentences=”15″ icon_position=”bottom-left” copy_button=”true” casually_fine_tuned=”true” model=”curie:ft-personal:master-lex-final-2023-04-19-16-35-17″ temperature=”0.8″ max_tokens=”1024″]
虽然最后的成果质量并不好吧,但也是一个很有意思的尝试,学习了很多新知识。我相信人工智能就是未来,我们倒是犯不着成为人工智能的专家,但是了解怎么使用他们还是很重要的,免得被淘汰了。
到这篇为止,我也写了好几个关于GPT的文章里,以后再有感悟还是会和亲爱的朋友们分享。
作者:Dr. Rich 财富德国 (转载请获本人授权,并注明作者与出处)
本文只是博主个人观点,不构成投资建议,本人不承担据此操作产生的后果!
本文已经在德国的Notar处留档,抄袭前请考虑后果。
关注微信公众号“财富德国”,微博账号“财富德国DE”,不错过新文章,提高留德华们的理财能力