很快啊,在经历了短短的……(看一眼日期)短短的五天之后,我们的第三篇开发日志就出来了。当然啦,坏消息是这学期的大项目竟然来得这么早,另外就是这周一直高强度存疑地搞这个项目实在是有些腻了,毕竟咱还有许多堆积的其他事情要做,因此之后的更新速度可能会放慢一些。
闲话少叙,本次的主题也已经在标题上展示出来了——日程,主要的作用就是设定智能体一些比较规律的行为,例如工作睡觉等等。虽然智能体完全可以只参照自己当前的状态选择应该做什么,但一些合理的指引是必要的,除了能增强真实性外,也能给每个角色以独有的特点。
当然,可以看到一直到现在我们都只是在捣鼓一些“配件”,到时候这个小镇到底能不能运行起来,以及其中的智能体到底够不够智能,还是有待观察的。之后一期日志会实现活动,再下一期应该就要开始正式的模拟了,不然感觉现在做的这些都有些虚→_→
幸运的是,学期刚开始的我似乎是干劲十足(其实主要是因为无事可做),于是Rusty Town
的第二篇开发日志也很快写了出来,本次日志主要实现了Character
类,即角色部分,以及角色间人际关系的实现。完成这两个部分后,我们将得以获取并修改角色状态,以及维持一个不断变动的人际关系表来影响角色可能做出的决策。当然,只实现这两个部分是远远不够的,毕竟Character
也即智能体在这个项目中始终处于核心地位,而另外的部分也将会在之后的日志中逐渐完善。
话不多说,我们直接开始(。・ω・。)
从这篇博客开始,我将无人在意地开始一个名为Rusty Town
的新项目,参考的便是知名的“斯坦福小镇”,最终目标是利用现有的知识创建一个合理、多样、自运行的小世界。另外,本项目需要用Rust语言进行编写,这也是为了检验上个学期自学的成果,所以说这也可以看作是Rust的一次小练习(存疑),而这些博客也将是本项目推进的过程中所记下的开发日志。
其实我的目标只有一个:不咕就好_(:зゝ∠)_
某次在有幸能够听jyy老师著名的操作系统课时,我被老师在课上遇到什么问题便毫不犹豫地询问gpt-4-turbo所震撼到了,看来不仅是学生们喜欢GPT,许多开明的老师也有鼓励学生(合规地)在GPT的辅助下进行学习。当然我所震撼的倒也不是因为这个,一小部分是因为当时的gpt-4-turbo对我来说还是太过奢侈,主要还是jyy老师并非像大多数人一样在openai官网或是在别的第三方网站上使用AI大模型,而是直接在终端中输入某某命令(可惜没记下来),然后便可以直接在终端与大模型进行交互。显然,这是通过API来实现的。虽然这未必真的就比直接在网站上问方便多少,但对于没怎么见过世面的我来说还是太酷了,这才是一个现代化的终端理应做到的事情。于是那节课后的我关于如何在自己的终端上复现这种效果陷入了沉思。
下面便是我使用Python调用openai的API来实现终端调用大模型的示例,某种意义上来说,相当一部分也是在大模型的帮助下才写出来的。(也是自产自销了)
学习的过程中做笔记是再正常不过的事情,在中学可能主要记录在纸质品上。而在进入大学后,尤其是像我这样总是做些与屏幕相关的活动,把笔记记录在手机或电脑上自然是更方便的。
可能有人会选择直接使用电脑或手机上的记事本来做笔记,但这样笔记和笔记之间的组织比较松散,也不方便跨平台使用。或者有人会选择使用Word,但作为一个以排版为主的软件,Word的许多操作和功能其实是冗余的。
如果你还记得我之前提到过的轻量级文本标记语言Markdown,那便会认同Markdown本身是很适合做笔记的,若干种标记恰好地可以突出笔记的重点,又不至于使书写变得过于复杂。此外也可以方便地插入图像或LaTex公式,并转化为HTML和pdf格式。可以说,我在大学里的大部分非代码作业都是用Markdown写的。但除了Typora之外,还有另一款同样优秀并更适合多平台笔记的应用,那便是Obsidian(黑曜石)。实际上,夜梦草的绝大部分博客都是先在Obsidian上写成的。