hello-agents 2-3章习题

33 阅读8分钟

2-3章习题

总结:内容比想象中多。一天1小时只够看完课程,没什么时间思考了。习题只能pick部分写了一下,有时间再深入学习。

  1. 物理符号系统假说[1]是符号主义时代的理论基石。请分析:

    • 该假说的"充分性论断"和"必要性论断"分别是什么含义?
    • 结合本章内容,说明符号主义智能体在实践中遇到的哪些问题对该假说的"充分性"提出了挑战?
    • 大语言模型驱动的智能体是否符合物理符号系统假说?
  2. ✅专家系统MYCIN[2]在医疗诊断领域取得了显著成功,但最终并未大规模应用于临床实践。请思考:

    提示:可以从技术、伦理、法律、用户接受度等多个角度分析

    • 除了本章提到的"知识获取瓶颈"和"脆弱性",还有哪些因素可能阻碍了专家系统在医疗等高风险领域的应用?

       如何判定系统的可靠性?系统出现故障,责任是谁的?
      
    • 如果让现在的你设计一个医疗诊断智能体,你会如何设计系统来克服MYCIN的局限?

       MYCIN是完全基于规则的。如果在今天再设计一个智能体,应该还是会基于大模型,首先信息来源必须可靠,避免幻觉;需要专业人员进行check,提升模型的准确性。
      
    • 在哪些垂直领域中,基于规则的专家系统至今仍然是比深度学习更好的选择?请举例说明。

       数学、物理等公式计算
      
  3. 在2.2节中,我们实现了一个简化版的ELIZA聊天机器人。请在此基础上进行扩展实践:

    提示:这是一道动手实践题,建议实际编写代码

    • 为ELIZA添加3-5条新的规则,使其能够处理更多样化的对话场景(如谈论工作、学习、爱好等)
    • 实现一个简单的"上下文记忆"功能:让ELIZA能够记住用户在对话中提到的关键信息(如姓名、年龄、职业),并在后续对话中引用
    • 对比你扩展后的ELIZA与ChatGPT,列举至少3个维度上存在的本质差异
    • 为什么基于规则的方法在处理开放域对话时会遇到"组合爆炸"问题并且难以扩展维护?能否使用数学的方法来说明?
  4. 马文·明斯基在"心智社会"理论[7]中提出了一个革命性的观点:智能源于大量简单智能体的协作,而非单一的完美系统。

    • 在图2.6"搭建积木塔"的例子中,如果 GRASP 智能体突然失效了,整个系统会发生什么?这种去中心化架构的优势和劣势是什么?
    • 将"心智社会"理论与现在的一些多智能体系统(如CAMEL-WorkforceMetaGPTCrewAI)进行对比,它们之间存在哪些关联和不同之处?
    • 马文·明斯基认为智能体可以是"无心"的简单过程,然而现在的大语言模型和智能体往往都拥有强大的推理能力。这是否意味着"心智社会"理论在大语言模型时代不再适用了?
  5. ✅强化学习与监督学习是两种不同的学习范式。请分析:

    • 用AlphaGo的例子说明强化学习的"试错学习"机制是如何工作的

      下棋,正确or错误,进行反馈,继续下棋,准确率提升
      
    • 为什么强化学习特别适合序贯决策问题?它与监督学习在数据需求上有什么本质区别?

      因为强化学习在action之后,会根据反馈,进行反复调整,达成更好的决策。监督学习需要首先基于大量数据,通过数据来调整模型。
      
    • 现在我们需要训练一个会玩超级马里奥游戏的智能体。如果分别使用监督学习和强化学习,各需要什么数据?哪种方法对于这个任务来说更合适?

    • 在大语言模型的训练过程中,强化学习起到了什么关键性的作用?

  6. 预训练-微调范式是现代人工智能领域的重要突破。请深入思考:

    • 为什么说预训练解决了符号主义时代的"知识获取瓶颈"问题?它们在知识表示方式上有什么本质区别?
    • 预训练模型的知识绝大部分来自互联网数据,这可能带来哪些问题?如何缓解以上问题?
    • 你认为"预训练-微调"范式是否可能会被某种新范式取代?或者它会长期存在?
  7. ✅假设你要设计一个"智能代码审查助手",它能够自动审查代码提交(Pull Request),概括代码的实现逻辑、检查代码质量、发现潜在BUG、提出改进建议。

    • 如果在符号主义时代(1980年代)设计这个系统,你会如何实现?会遇到什么困难?

      输入规则,根据规则进行判定。困难:无法罗列全部规则
      
    • 如果在没有大语言模型的深度学习时代(2015年左右),你会如何实现?

      基于强化学习,给一定的规则,之后对审查的正误进行反馈,提升准确率
      
    • 在当前的大语言模型和智能体的时代,你会如何设计这个智能体的架构?它应该包含哪些模块(参考图2.10)?

    • 对比这三个时代的方案,说明智能体技术的演进如何使这个任务从"几乎不可能"变为"可行"

  8. 自然语言处理中,语言模型经历了从统计到神经网络的模型演进。

    • 请使用本章提供的迷你语料库(datawhale agent learnsdatawhale agent works),计算句子 agent works 在Bigram模型下的概率
    • N-gram模型的核心假设是马尔可夫假设。请解释这个假设的含义,以及N-gram模型存在哪些根本性局限?
    • 神经网络语言模型(RNN/LSTM)和Transformer分别是如何克服N-gram模型局限的?它们各自的优势是什么?
  9. Transformer架构[4]是现代大语言模型的基础。其中:

    提示:可以结合本章3.1.2节的代码实现来辅助理解

    • 自注意力机制(Self-Attention)的核心思想是什么?
    • 为什么Transformer能够并行处理序列,而RNN必须串行处理?位置编码(Positional Encoding)在其中起什么作用?
    • Decoder-Only架构与完整的Encoder-Decoder架构有什么区别?为什么现在主流的大语言模型都采用Decoder-Only架构?
  10. ✅文本子词分词算法是大语言模型的一项关键技术,负责将文本转换为模型可处理的 token 序列。那为什么不能直接以"字符"或"单词"作为模型的输入单元?BPE(Byte Pair Encoding)算法解决了什么问题? 字符的缺点是太小,没有语义,需要再重组;单词比较合适,但存在一些造词,无法被理解。因此BPE以单词为基点,对于部分造词再按语义进行分割,解决部分造词不存在的问题

  11. 本章3.2.3节介绍了如何本地部署开源大语言模型。请完成以下实践和分析:

    提示:这是一道动手实践题,建议实际操作

    • 按照本章的指导,在本地部署一个轻量级的开源模型(推荐Qwen3-0.6B),并尝试调整采样参数并观察其对输出的影响
    • 选择一个具体任务(如文本分类、信息抽取、代码生成等),设计并对比以下不同的提示策略(如Zero-shot、Few-shot、Chain-of-Thought)对输出结果的效果差异
    • 从性能、成本、可控性、隐私等维度比较闭源模型和开源模型
    • 如果你要构建一个企业级的客服智能体,你会选择哪种类型的模型?需要考虑哪些因素?
  12. 模型幻觉(Hallucination)[11]是大语言模型当前存在的关键局限性之一。本章介绍了缓解幻觉的方法(如检索增强生成、多步推理、外部工具调用)

    • 请选择其中一种,说明其工作原理和适用场景

      RAG是基于给定的文档进行生成,有根据,避免从互联网的海量信息生成幻觉。适用于基于确定的内容进行生成,比如总结一本书,基于文档库生成问答信息
      
    • 调研前沿的研究和论文,是否还有其他的缓解模型幻觉的方法,他们又有哪些改进和优势?

  13. 假设你要设计一个论文辅助阅读智能体,它能够帮助研究人员快速阅读并理解学术论文,包括:总结论文研究的核心内容、回答关于论文的问题、提取关键信息、比较多篇不同论文的观点等。请回答:

    • 你会选择哪个模型作为智能体设计时的基座模型?选择时需要考虑哪些因素?
    • 如何设计提示词来引导模型更好地理解学术论文?学术论文通常很长,可能超过模型的上下文窗口限制,你会如何解决这个问题?
    • 学术研究是严谨的,这意味着我们需要确保智能体生成的信息是准确客观忠于原文的。你认为系统中加入哪些设计能够更好的实现这一需求?