代码编写 (Code writing)
danger
所有编写程序的链条都应被视为非常实验性的,不应在存储敏感/重要数据的任何环境中使用,因为使用这些链条涉及任意代码执行。
与人类类似,LLM在编写程序方面非常擅长,但并不总是擅长执行它们。例如,它们可以更好地写出复杂的数学方程,而不是计算结果。在这种情况下,将LLM与程序运行时结合起来是有用的,这样LLM就可以将非结构化文本转换为程序,然后再由一个更简单的工具(如计算器)来执行程序。
在其他情况下,只能使用程序来访问所需的信息(例如,计算机上目录的内容)。在这种情况下,让LLM生成代码并使用单独的工具来执行它是很有用的。
📄️ 程序辅助语言模型(PAL)链 Program-aided language model (PAL) chain
实现了程序辅助语言模型,参考论文 https://arxiv.org/pdf/2211.10435.pdf。
📄️ 因果程序辅助语言(CPAL)链 Causal program-aided language (CPAL) chain
CPAL链基于最近的PAL来阻止LLM的幻觉。PAL方法的问题在于它在具有嵌套依赖链的数学问题上产生了幻觉。这里的创新之处在于这种新的CPAL方法包括因果结构来修复幻觉。
📄️ Bash链 (Bash chain)
This notebook展示了使用LLMs和bash进程执行简单的文件系统命令。
📄️ 数学链 (Math chain)
这个笔记本展示了如何使用LLMs和Python REPLs来解决复杂的数学问题。
📄️ LLM符号数学 (LLM Symbolic Math)
This notebook showcases using LLMs and Python to Solve Algebraic Equations. Under the hood is makes use of SymPy.