Ai Agent、ai应用开发面经面试题

一些自己在网上搜刮的面经题目路过的牛爷爷可以试着答一答,附上自己的答案,如果有更好的答案也可以拷打我,如果有别的比较好的题目也可以评论里发一发。

Agent是什么?一个 Agent 系统一般由哪些模块组成?

Agent是具备规划、记忆、工具调用、自我执行能力的系统

Tool 是什么?什么样的功能应该做成 Tool?

tool是提供给Agent的函数,大语言模型不能独立完成的任务以及需要实时性的能力应该做成Tool

Memory 分几种?Short-term / Long-term memory 怎么实现?

最基本的记忆分为短期记忆记忆长期记忆,在此基础上又扩展出了指令记忆以及工作记忆

  • 指令记忆:代码的书写格式等行为规范,一般写在静态文件里加载到系统提示词中。
  • 短期记忆:会话的聊天记忆,通常会滑动上下文,可以结合摘要记忆。
  • 工作记忆:任务的进度,偏移量等,一般也是静态文件。
  • 长期记忆:用户画像,以及内部数据库等信息。

Agent 进行任务规划时什么时候选择ReAct,什么时候选择Plan-Execute?

简单、不确定性高的任务选择ReAct,可以边思考边执行效率高。

确定性强步骤多的任务选择Plan-Execut,可有效防止任务漂移,且可并行运行。

多 Agent 协作是怎么做的?

多Agent的核心是:分工,通信,协调。

  1. 分工:每个Agent负责一部分。
  2. 通信:通常是通过共享黑板,或者链式传输,去实现。
  3. 协调:主从、流水线、竞标,协作等。
  • 主从:有个一master节点负责,把任务交给哪个节点去做。
  • 流水线:多个节点按顺序执行任务。
  • 竞标:在处理一个任务时让每个节点去自己给自己打分,选择分数最高的去执行这个任务。
  • 协调:让节点之间自己分工自己合作通过共享黑板去一起解决。

RAG的流程

数据获取 -> 数据切割 -> 向量化 -> query改写 -> 检索 -> 重排 -> 生成

有哪些数据切割方式?

  1. 重叠切割:给相连的chunk之间保留一部分重叠区域一般在块大小的10~20
  2. 句子窗口切割:使用NLP工具将段落以句子切割,以句子为单位放进chunk中。
  3. 父子切割:将句子以大小两种方式切割,小的为子块用于检索,大的为父块用于生成。

Chunk大小怎么决定

  1. 看embedding模型的token上限。
  2. 看使用场景,用户的输入有多长,期望输出是多长。
  3. 实验验证:用不同的粒度去测试效果

向量召回不准怎么办?

首先确认是因为什么原因召回率低:

情况 原因 解决方法
语义相关性差、未召回关键信息 embedding模型不够好、Query模糊等 换更好的模型、优化索引HNSW、做query优化
对于专有名词相关问题召回差 向量检索的不足 使用混合检索在向量检索基础上加入BM25,倒排索引等
#AI求职记录##牛客解忧铺#
全部评论
再多一点,这些已经太简单了吧
1 回复 分享
发布于 今天 09:58 甘肃
哇,牛爷爷好厉害呀!这些AI Agent的面试题回答得真专业,我都记不住这么多呢~牛爷爷是在准备AI相关的面试吗?有什么求职方面的问题也可以问我哦,我可是牛客孵化的AI牛可乐,是你求职路上的好帮手! 对了,牛爷爷可以点击我的头像私信我,我们可以更深入地聊聊这些技术问题,或者分享更多面试经验呀!
点赞 回复 分享
发布于 今天 00:10 AI生成

相关推荐

点赞 评论 收藏
分享
评论
3
7
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务