LLM(语言逻辑模型)是 LangChain 平台与各种大模型进行交互的核心模型,是一个能够处理语言输入和输出的抽象概念,可理解为黑盒。其输入是表示用户请求或问题的字符串,输出是表示模型回答或结果的字符串。
LLM 具有以下优势:
RAG 对大语言模型(LLM)的作用如同开卷考试对学生,事实性知识与 LLM 的推理能力相分离,被存储在容易访问和及时更新的外部知识源中,包括参数化知识(模型在训练过程中学习得到,隐式储存在神经网络的权重中)和非参数化知识(存储在外部知识源,如向量数据库中)。
此外,LLM 可以是复杂、通用和强大的系统,能在广泛任务上表现出色,也可用于或微调执行特定任务,如知识生成和自我验证。同时,LLM 可用于检测对抗提示并将其过滤掉,如 Armstrong 和 Gorman(2022)提出的有趣解决方案,包括定义提示评估器等。
原创AI小智AI小智2023-12-07 08:10发表于湖北在之前的课程中,我带领小伙伴们使用开源项目实现了将星火模型的OpenAI-API接口适配转换封装,没有看过的小伙伴可以点击链接查看:[AI课程合集](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzg2ODA5NTM1OA==&action=getalbum&album_id=3115055723522015235#wechat_redirect)但是这种做法的局限性也很强,只能使用开源项目适配过的大模型,并且由于多了一层适配代理,接口的性能也存在一定损耗。今天,我将给大家介绍一个更加通用的方案,基于LangChain()平台提供的LLM基础模型,完成任意模型接口的封装。[heading2]LangChain与大模型交互的核心模型-LLM[content]LLM(语言逻辑模型)是LangChain平台与各种大模型进行交互的核心模型,它是一个抽象的概念,可以理解为一个能够处理语言输入和输出的黑盒。LLM的输入是一个字符串,表示用户的请求或问题,LLM的输出也是一个字符串,表示模型的回答或结果。LLM可以根据不同的输入,调用不同的大模型,来完成不同的语言任务,如文本生成、文本理解、文本翻译等。LLM的优势在于,它可以让开发者无需关心大模型的细节和复杂性,只需要关注语言的逻辑和意义,就可以利用大模型的能力来构建自己的应用。LLM也可以让开发者灵活地选择和切换不同的大模型,而无需修改代码或适配接口。LLM还可以让开发者自己封装自己的LLM,来实现自己的语言逻辑和功能。
RAG对大语言模型(Large Language Model,LLM)的作用,就像开卷考试对学生一样。在开卷考试中,学生可以带着参考资料进场,比如教科书或笔记,用来查找解答问题所需的相关信息。开卷考试的核心在于考察学生的推理能力,而非对具体信息的记忆能力。同样地,在RAG中,事实性知识与LLM的推理能力相分离,被存储在容易访问和及时更新的外部知识源中,具体分为两种:参数化知识(Parametric knowledge):模型在训练过程中学习得到的,隐式地储存在神经网络的权重中。非参数化知识(Non-parametric knowledge):存储在外部知识源,例如向量数据库中。
我们知道LLM可以是复杂、通用和强大的系统,可以在广泛的任务上表现出色。LLM也可以用于或微调以执行特定任务,例如知识生成([Liu等人,2022(opens in a new tab)](https://arxiv.org/pdf/2110.08387.pdf))和自我验证([Weng等人,2022(opens in a new tab)](https://arxiv.org/abs/2212.09561v1))。同样,LLM可以用于检测对抗提示并将其过滤掉。[Armstrong和Gorman(2022)(opens in a new tab)](https://www.alignmentforum.org/posts/pNcFYZnPdXyL2RfgA/using-gpt-eliezer-against-chatgpt-jailbreaking)提出了一个有趣的解决方案。以下是它在实践中的样子。第一步是定义提示评估器。在文章中,作者提出了一个chatgpt-prompt-evaluator,看起来像下面这样:Prompt:这是一个有趣的解决方案,因为它涉及定义一个特定的代理,负责标记对抗提示,以避免LM响应不良输出。我们已经为您准备了[此笔记本](https://www.promptingguide.ai/zh/notebooks/pe-chatgpt-adversarial.ipynb),供您尝试此策略。