每次和大语言模型(LLM,后面简称“模型”)对话时,我常常被它强大的能力所震撼,但它时不时又会犯一些看起来非常“低级”的错误,让人既疑惑又失望,为什么它能又聪明又“蠢”呢?

经过一段时间的摸索和学习,我把自己对这些问题的观察总结成了这篇文章,将目前大语言模型应用的局限性归纳为三大类共九个小点。但如今的AI技术日新月异,我的视角难免存在局限,其中的内容或许也会有不周或疏漏的地方。建议在阅读时保持批判思维,希望我的这些观察能给你带来一点点启发,帮助你更高效地使用AI。


第一类:生成能力边界

1. 计算与推理问题

模型无法很好地处理精确的数学运算或复杂的逻辑推理问题。模型并不具备内置的数学计算能力,其数学相关输出是基于训练数据中的文本模式,通过概率预测生成的。因此,它更擅长模拟数学答案的”形式“,而非执行精确的”计算“。例如,模型无法准确计算出超过50个数的总和,以及之前经典的“草莓测试”(无法准确数出Strawberry一词中有多少个字母“r”)。

所以,在提问时尽量避免涉及精确计算或强逻辑推理的问题。对于一些逻辑推理问题,可以要求模型“一步一步地思考”,并将其推理过程展示出来,方便检查,也能让模型自己发现逻辑错误。如果问题一定涉及计算,则尽量让模型调用外部的数学计算工具来计算,防止出错。

2. 幻觉问题

模型生成的幻觉大致可分成”事实性错误“和”自相矛盾“。

  • 事实性错误:模型输出的内容与客观事实不符或完全虚构。

  • 自相矛盾:模型在同一个回答或同一段对话中,前后输出的信息自相矛盾。

为了减少幻觉的出现,可以尝试让模型进行自我检查或采用多个模型相互审查,但这并不能完全根除幻觉。最可靠的方法之一还是结合检索增强生成(RAG)技术,让模型基于从权威来源查询到的实时信息进行生成,并对关键事实进行人工核实。对于检查模型是否出现幻觉,可以用多个模型或多次新对话来问同一个问题,查看模型的回答是否存在较大差别,如果不同对话或不同模型的回答在一些事实信息上存在较大差别,那么这些回答中很可能包含有幻觉。

3. 提示词敏感

模型对用户提供的上下文和问题较敏感,即模型的输出质量高度依赖于用户输入的提示词,简单来说就是问题问得越具体、提供的背景信息越清晰,所得到的回答通常也越准确、有用。例如,若简单询问“如何学好英语?”模型可能只会给出“多听多读多练”等泛泛之谈。但如果你提供更多背景信息,如“我是一名大学生,通过了四级考试,想在六个月内将雅思成绩提高到6.5分,有哪些具体的学习方法和时间规划建议?”,模型就能根据你的个人情况提供更具针对性和可操作性的计划。

所以,在向模型提问前,可以先问自己几个问题:我要解决的核心问题是什么?我想让模型扮演什么角色(如老师、顾问)?我期望的理想输出是什么形式(如列表、大纲、详细解释)?模型需要哪些关键信息才能给出好答案?等等,先梳理好自己的思路,尽可能清晰地提供相关的背景、约束条件和期望的输出格式。甚至可以先让模型帮你梳理提问思路,例如“我将要问你一个关于XXX的问题,为了让你能给出更好的答案,你认为我需要提供哪些信息?”。

第二类:交互模式边界

4. 上下文遗忘问题

在长时间的多轮对话后,模型可能会“忘记”之前对话中的一些细节或要求。模型本身并不具备长期记忆能力,它只会基于当前输入的上下文(包括之前对话)进行处理并输出,而非真正的记忆。例如,在讨论了多个关于旅行目的地的偏好后,当再次询问“那么根据我之前提到的预算,哪个目的地最合适?”时,模型可能无法准确回忆起之前讨论过的预算范围。

所以,在进行多轮对话时,可以定期主动总结之前对话的关键点和要求,让模型确认是否正确理解。例如,“我们来总结一下目前讨论的要点:第一...第二...我的主要要求是...对吗?”。同时要注意在需要模型利用之前信息时,避免使用“这些”、“之前那些”等指代不清的词,而是主动将之前的重要内容简要复述到当前问题中。如果发现模型已经出现混淆,可以新开一个对话,并将之前总结好的对话核心内容作为新对话的上下文重新输入。

5. 暗示强化与思维定式

在多轮对话中,如果你持续围绕某个关键词或意图(即“暗示”)进行提问,模型可能会过度强化这个概念,并倾向于围绕这个关键词或意图不断给出相似的回答,此时模型可能会固执地认为这就是用户最想要的答案,难以接受新的视角或进行自我批判。

当发现模型陷入重复相似答案的时候,可以新开一个对话,针对旧对话中出现的问题进行梳理,重新提供一份清晰、全面的提示词,从新的角度设定问题。如果无法新开对话,也可以直接告诉模型“请暂时忘记之前所有的对话”或“请从XX角度重新思考这个问题”,明确引导它跳出之前的思维定式。或者让模型对它之前的回答进行反思和批判,例如“请对你刚才给出的答案进行批判性分析,指出可能的不足或偏见”。

6. 文本退化问题

当模型被要求一次性生成长篇文本时,随着生成长度的增加,后续文本的质量可能会下降,可能会出现内容重复、偏离主题、逻辑混乱或变得泛泛而谈的现象。即模型在一次性生成过长的文本时,模型可能无法始终保持开头部分的质量,导致输出的内容虎头蛇尾。

文本退化现象一般都出现在一次性生成的文本过长的情况,所以避免让模型一次性生成过长的文本,可以将内容按逻辑分成几个部分(如按章节、按模块)分别生成。先让模型生成一个详细的提纲,然后要求它根据提纲的一部分一部分地生成内容。在生成每一部分时,要注意多轮对话可能会发生遗忘的问题,每次生成时都尽量明确具体的要求和上下文。对于不满意的部分可以及时进行针对性的修改或重写,同时对提示词进行优化,必要时可以直接用优化好的提示词新开一轮对话。

第三类:数据固有边界

7. “知识过期”问题

模型自身的“知识”的时效性取决于其训练数据的截止日期,对于截止日期之后发生的事件、最新的研究成果、特定领域知识或非公开信息,模型可能无法提供准确的回答。

对于明显具有时效性的问题,要有意识地质疑模型的回答,并通过其他渠道核实。优先使用那些能为模型提供联网搜索或文档解析功能的工具。

8. “刻板印象”问题

模型的训练数据包含了人类社会现有的大量文本,所以模型不可避免的会学习到其中存在的各种社会偏见,如性别、文化、种族、地域等方面的刻板印象。例如,当要求模型生成一个关于医生或护士的故事时,模型可能默认将医生描绘为男性,护士描绘为女性,或者它可能会根据人们的文化背景对他们的偏好或能力做出假设。

面对刻板印象问题,可以先想一下如果模型的回答带有”刻板印象“会不会对我造成影响,会造成什么样的影响,这些影响是否能够忽略等等。对模型输出的内容保持批判,尤其是在涉及重要决策或可能产生社会影响的场合。对于可能会造成影响的偏见可以有针对性地添加提示词来让模型进行调整。

9. 跨模态理解缺失

模型主要通过文本来学习和理解世界,对于物理常识、空间关系、人类感官体验(如味觉、嗅觉、触觉)等的理解存在局限,因为模型只是从文本中学习到了这些代表人类感受的”符号“,而没有真正“体验”过这些符号所表示的具体感受。例如,让模型描述一下桌上几个物体的具体空间方位,它可能会描述得不够精确;让模型描述一种没吃过的食物混合起来的味道(如“巧克力蘸酱油”),它的描述可能基于文本关联而非真实感官体验,因而显得奇怪或不准确。

所以,尽量避免让模型描述需要强烈主观感官体验的内容。如果无法避免,尝试将主观感受的问题转化为更客观、可基于知识回答的科学问题。例如,不问“XX吃起来什么感觉?”,而是问“XX食物的主要化学成分是什么?这些成分通常给人带来何种味觉感受?”。


实用性总结与建议

以下是根据上面内容所总结出来的实用建议。

1. 提问应具体明确,并提供充分背景信息

由于模型无法主动推测用户意图,问题越模糊,得到的回答就越空泛。在提问前建议进行以下思考:

  • 角色设定: 明确模型需要扮演的角色。

  • 核心目标: 清晰表达要解决的主要问题及期望的结果。

  • 限制条件: 说明任何格式、字数、风格或内容方面的要求。

  • 背景信息: 提供关键背景以使回答更具针对性。

2. 注意事实准确性,并进行交叉验证

模型有时可能生成看似合理但实际错误的内容(即“幻觉”)。在医疗、法律、财务等或时效性较强的话题中,尤其需要谨慎。

  • 对于关键信息,建议开启联网搜索功能(如可用)以获取最新资料,或用户自行通过多个可靠信源进行交叉验证。

  • 需要注意的是,模型的输出最终仍须由人来核实与负责,尤其注意在高风险领域信息的准确性。

3. 将复杂任务拆解为多个步骤,避免单次请求过量输出

模型在处理高度复杂的逻辑推理或生成长文本时,可能出现错误或质量不均衡的情况。

  • 推理与计算类任务: 可要求模型解释推理过程以便于核对。涉及复杂计算时,要求提供公式或思路,让用户可以借助工具验算。

  • 长文本生成任务: 建议先列大纲,确认后再分部分撰写,最终整合。这种方法通常比一次性生成长文本效果更好。

4. 有效管理多轮对话,主动提供上下文辅助

模型不具备真正的记忆能力,在较长对话中可能遗忘先前的内容。

  • 若新问题依赖于之前的对话,应主动简要重述关键信息,避免使用模糊指代。

  • 如发现模型回答出现混淆或错误,有效方法是开启新对话,并明确输入此前已确认的核心信息及要求。

5. 保持批判性思维,认识模型的固有局限

模型的能力基于其所训练的数据,所以不可避免的带来了以下可能存在的问题:

  • 知识更新时间有限: 对于训练截止日期之后的事件或信息,可能无法提供准确回答。

  • 可能存在社会偏见: 回答可能反映出训练数据中所包含的性别、文化等方面的偏见,用户需加以辨别。

  • 缺乏真实体验: 模型通过文本进行学习,对于物理体验、感官描述等无法提供真实感受,相关描述仅为基于文本的推断。


所以,为什么我会认为大模型既聪明又“蠢”呢?或许是因为我之前一直都把它当成了一个可能会取代人类的“超级存在”,它太强大了,进化得太快了,快到足以让我们重新思考人类擅长的领域究竟在哪?但归根结底,它仍然是一个工具。我们要做的,是学会向它提出更精准的问题,养成严谨质疑和独立思考的习惯,并借助工具提升自我,这何尝不是属于我们人类的“进化”?

或许未来的某天,上述所有的技术边界都会被突破,到了那时,我们也许还会是我们,还是会继续思考,会不断质疑,会大胆提问,会严谨求证...我们都会被解放去做更有价值的事情。

感谢你阅读到这里,希望这篇文章能让你觉得有所收获,让你在使用AI时多一份从容,少一点迷茫。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐