美团后端暑期二面

虽然嘴上说着不想再面了,但是今晚身体还是诚实地准时点开了面邀链接。部门是核心本地商业,偏向酒旅下面的景点。本来准备了一个工作流项目和一个优惠券秒杀项目,结果全程都是ai和ai coding相关,完全没问第二个项目,也没有手撕,供大家参考。

  1. 这两个项目都不是实验室的课题吧?都是你在GitHub或其他平台上自己学习实践的项目,然后做了相应的改造,对吗?
  2. 看一下你这个工作流编排平台,它产生的背景或要解决的问题是什么?
  3. 我能不能理解为它类似Coze、Dify这类工作流编排产品?
  4. 你提到和它们有所区分,具体做了哪些改进或不同之处?
  5. 你说这是自研层面的东西,整体设计思路是怎样的?
  6. 其中稳定性能力建设这部分,有没有参考其他商业化或偏产品化的做法?对比下来功能上有什么异同?
  7. 你刚才提到借鉴了Claude和OpenAI的一些东西,具体借鉴了什么?
  8. 你在上下文管理中提到了优先级,这个优先级具体是怎么定的?
  9. 摘要这个过程具体是怎么执行的?
  10. 你怎么评估摘要结果是否比较符合你的场景要求?摘要结果可以干预吗?能通过某些参数控制哪些信息保留、哪些舍弃吗?
  11. 摘要服务是独立的一个AI接口,还是直接调用大模型、通过提示词让它处理?
  12. 对话进行多少轮之后开始触发执行摘要动作?为什么是这个数值?
  13. 你刚才提到“定制化”,具体可以定制的是哪些部分?
  14. “Agent的组”是什么概念?
  15. 你对Agent是怎么定义的?什么是Agent?
  16. 从你当前的工作流编排平台来看,它似乎不需要动态决策,只需要检查当前结果是A状态还是B状态,然后定制化地走向一个节点。如果只是这种数据流转关系,应该算不上Agent。动态决策体现在哪里?你自己评估一下,当前这个编排平台是不是一个Agent?
  17. 在这个工作流编排平台里会涉及压缩和超出上下文窗口的问题吗?为什么会超出?是因为中间处理的工作流节点太多吗?一般一次工作流里会串联多少个节点?
  18. 这里的工具都有哪些类型?比如生成PPT这类功能可以做到吗?
  19. 你当前这个编排平台处理的事务边界是什么?是什么样的事情都能做、通过加新节点来支持一切,还是只处理语音、图文等几类定型的工作流能力?
  20. 整体的实现思路,是不是把类似转语音等服务包装成一层工具接口,然后让大模型去唤起和触发执行?
  21. 你当前做的这个东西,和现在比较火的Agent,区别是什么?
  22. 我这里要用哪个工具,是让Agent自己决策,还是我在编排流程时就指定好要用哪个工具?
  23. 看起来这偏向于上一代的一些AI思想,其实就是定制化的工作流编排,和Agent没什么关系。Agent本身不需要这些,所有工具是平级的,具体用A工具还是B工具,取决于面临问题的复杂度和相关性,这个过程完全由Agent决策,这才是Agent层面的边界参考。你同意吗?
  24. 你刚才提到的那个能自我进化的Agent是什么?最近Coze、Cursor等提出的一些思想,你有了解吗?
  25. 关于Agent底层设计思想和整体编码能力的控制方式,你有更具体的了解吗?
  26. 你没注意到刚才简历上coding项目已经做过了吗?那我们聊聊这个项目。能分享一下从拿到题目开始,你初期怎么分析,以及过程中如何和AI协作完成任务的?
  27. 先不说一二三问,从你个人视角来看,这个初始代码本身存在什么问题?
  28. 第一步中,AI有给你补充新的设计缺陷吗?
  29. 从补充的这些分析里,你觉得哪些需要采纳,哪些可以不采纳?你有做过判断吗?
  30. 比如“边界突刺”的问题,如果不是让AI来写,而是人自己实现,正确做法应该怎么写?
  31. 实现滑动窗口这类问题通常有哪些解法或算法?
  32. 你更倾向于用哪种算法?需要自己去决策,为什么AI推荐了这个方案?它推荐的方案和你实际要解决的问题场景是否匹配?因为这取决于你要交付的第三步,应该明确告诉AI“我的场景是什么,应该用什么方法”。你有做过这样的分析和取舍吗?
  33. 那对于不支持分布式部署这个问题,如果让你自己来解,你有什么解法?
  34. 基于高并发的性能考虑,应该更偏向于用Redis这类缓存中间件。那Redis做这件事如何保证原子性?检测和扣除是什么逻辑?你用的是减法,那什么情况下需要用到Lua脚本?
  35. 关于第二个问题(高并发),你怎么理解它?
  36. AI提出的并发问题分析,除了你自己的想法之外,有补充新的点吗?你觉得有不需要考虑,或者提得特别好的点吗?
  37. 第三个问题是“用于生产环境可用”的方案,你交付的是哪个文档?这里面的整体架构是怎么设计的?考虑了哪些算法、组件、稳定性措施?展开讲讲。
  38. 这里有个问题:它在前面分析时推荐了某个算法,最终实现的却是固定窗口,为什么前后不一致?
  39. 为什么这里涉及降级策略?
  40. 那本地限流和Redis分布式限流的关系是什么?本地是一个单机方案,多实例部署时如何同步信息,负载均衡怎么做?
  41. 如果我现在要求换一下指标,比如内存占用可以放宽一点,但对本地时钟偏差的容忍度要更严格,你会怎么调整策略?
  42. 在算法选型部分,最终关键结论是什么?为什么选择了滑动窗口?中间取舍的逻辑是什么?那滑动窗口本身的劣势又在哪里?
  43. 滑动窗口的起止时间粒度是什么样的?如果粒度是毫秒级,对请求平滑度有什么影响?

全部评论

相关推荐

1. 自我介绍2. 数据库事务隔离级别,并分别说明每种隔离级别的底层实现原理。3. InnoDB如何实现读已提交和可重复读这两种隔离级别?4. 如何判断一个数据版本对当前事务是可见的?5. 可见性算法原理(不会。面试官一点一点提示,直到完整推出来)6. Redis的持久化机制7. RDB快照是如何实现快速生成某一时刻完整内存状态的?(ReadView快照)8. 快照的快和记录瞬间的状态分别是怎么做到的?(不会)9. 快照一种是同步的,阻塞了其他命令的执行,内存不变。那还有一种方式是通过 fork 一个子进程的方式。现在你能够想到为什么通过 fork 子进程就能实现内存快照吗?(不会。很绝望,我记得我两个月前看过这块,但现在完全忘了)10. Spring的IOC容器主要实现了哪些核心功能?11. 如果自行实现一个简化版的IOC容器,应该如何进行设计与实现?12. 如何解决IOC容器中Bean之间的依赖注入问题?(尝试扯三级缓存,但是面试官说没有循环依赖,忘了spring,自己设计。最后说了DFS好像可以的)13. 如何并行初始化?(拓扑排序)14. 浅挖第一个玩具项目(我介绍的亮点一拷打全是冗余设计,最后讲着讲着自己都没绷住)15. 最大的技术困难是什么?手撕:给定一个只能顺序访问且长度未知的数据流,等概率随机选取k个整数返回,且不能将所有数据加载到内存中。(好像是什么蓄水池抽样算法,瞎蒙了居然对了,面试官都夸我运气好直觉好)反问:1)主站还是temu:主站,基础架构;2)主管面还是技术面:pdd只有三轮技术面;3)哪里要提升:基础需要再深入一点,至少简历上写了的要搞明白会赢吗?感觉自己表现很一般,好多不知道的八股一直往下挖,就算我说了不会,面试官也不停提示,希望我能当场想出来,压力完了。后面到项目那块气氛还是比较轻松的,算法也狗运做出来了,最后和和气气两次握手结束面试。希望能有好运
查看16道真题和解析
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

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