Java 开发实习生(商品方向)一面面经
完整信息
本篇目录
#实习##实习挂面##实习面试记录#8.31官网投递, 9.4电话约面, 9.7一面(当天临时改时间到9.9), 第二天秒挂
面试全程拷打项目, 无八股, Hot100 前缀和
请做一下自我介绍。
介绍一下你的 Coding Agent 项目,它主要解决什么问题?
你在 Coding Agent 项目中做了哪些工作?遇到了哪些问题?如何解决的?
(猪包在这里讲了大概8分钟自己开发实际遇到的问题与解决办法,自我感动了属于是)
一轮完整的 ReAct 流程是怎样实现的?
模型如何判断需要调用哪些工具?
如果 Agent 拥有几千个工具,如何避免将所有工具描述都放入上下文?
这个 Agent 使用了什么技术栈?是否使用了 LangChain 等框架?
主 Agent 与 Sub-agent 之间如何通信和传递结果?
Sub-agent 如何判断任务已经完成?
Sub-agent 是否设置最大循环次数?如何避免无限循环、成本失控和上下文溢出?
MCP 和 Skill 有什么区别?
一个 Skill 通常包含哪些内容?什么样的能力适合封装成 Skill?
超长工具输出在什么情况下会自动落盘?
超长工具输出落盘后,摘要如何生成?摘要包含哪些信息?
历史消息如何压缩?压缩时保留哪些内容?
如何处理历史消息压缩造成的信息丢失?
危险命令拦截和权限控制是如何实现的?
除了 rm -rf,还需要拦截哪些危险命令?危险命令列表如何维护?
Sub-agent 是否继承主 Agent 的权限?高风险操作由谁确认?
一个完整的 Agent 需要包含哪些模块?
用户记忆如何识别、持久化和加载?
如果只保存用户消息,不保存模型回答,可能产生什么问题?
如何保证记忆的顺序性和可检索性?
如何判断用户引用的是哪一轮历史消息或哪一段摘要?
上下文压缩时,如何区分重要信息和无效闲聊?
Checkpoint 和状态恢复是如何实现的?
Agent 的状态机是如何设计的?
算法题:H100, 给定一个整数数组,找出和最大的连续子数组,并返回其最大和。
感受: 拷打项目真的很痛苦. 实习经历没问, 就单纯拷打了40分钟项目.
猪包第一个项目做的coding agent, 感觉是遇到行家了, 我做的是玩具, 面试官问很多边际情况, 但是也感觉很离谱.
比如:
1.如何调用subAgent, 但如何防止无限loop下去的问题. 我回答大多聚焦在: 一个兜底最大轮数(比如300轮)+ 模型自己不可能无限推理下去, 但是很显然面试官很不满意, 我也没考虑过这些问题.
2.上下文压缩怎么处理的, 如何避免信息熵减. 在近n轮对话保留, 前面的压缩, 一定会遇到信息熵减的情况, 你是怎么规避的.(我真的答不出来啊, 只做了一个简单的llm压缩, 明显看出面试官不满意, 就结束问题继续下一个了 )
- 用户记忆如何保存的. 我做的主要是 对每轮用户的prompt进行关键词提取, 识别到 用户的prompt有"项目使用java 21"就对应llm 提取关键词和实体落盘, 但是面试官提到, 如果 是以下的对话怎么办,如何落盘:
user:"使用java 21" assistant:"我建议使用java 23" user: "同意" ,这种情况你只对user的prompt落盘就得到错误信息了
我回答说确实没考虑到,没做. - 说到项#牛客AI配图神器#目级记忆: 还提到如果项目级别记忆有1w行,如何怎样等等.......
- 还有就是对主Agent调用subagent之间的消息如何传递追问很深入, 但是我确实没做太多的考虑........
- checkpoint 状态机.
被拷打麻了, 要死了[牛泪]
配图文字
投递岗位:Java开发实习生(商品方向)-【电商】
意向地点:杭州,北京
渠道:官网
环节:不合适
投递时间:2026.09.01
本篇目录
当前问题0133
- 01
请做一下自我介绍。
- 02
介绍一下你的 Coding Agent 项目,它主要解决什么问题?
- 03
你在 Coding Agent 项目中做了哪些工作?遇到了哪些问题?如何解决的?
- 04
一轮完整的 ReAct 流程是怎样实现的?
- 05
模型如何判断需要调用哪些工具?
- 06
如果 Agent 拥有几千个工具,如何避免将所有工具描述都放入上下文?
- 07
这个 Agent 使用了什么技术栈?是否使用了 LangChain 等框架?
- 08
主 Agent 与 Sub-agent 之间如何通信和传递结果?
- 09
Sub-agent 如何判断任务已经完成?
- 10
Sub-agent 是否设置最大循环次数?如何避免无限循环、成本失控和上下文溢出?
- 11
MCP 和 Skill 有什么区别?
- 12
一个 Skill 通常包含哪些内容?什么样的能力适合封装成 Skill?
- 13
超长工具输出在什么情况下会自动落盘?
- 14
超长工具输出落盘后,摘要如何生成?摘要包含哪些信息?
- 15
历史消息如何压缩?压缩时保留哪些内容?
- 16
如何处理历史消息压缩造成的信息丢失?
- 17
危险命令拦截和权限控制是如何实现的?
- 18
除了 rm -rf,还需要拦截哪些危险命令?危险命令列表如何维护?
- 19
Sub-agent 是否继承主 Agent 的权限?高风险操作由谁确认?
- 20
一个完整的 Agent 需要包含哪些模块?
- 21
用户记忆如何识别、持久化和加载?
- 22
如果只保存用户消息,不保存模型回答,可能产生什么问题?
- 23
如何保证记忆的顺序性和可检索性?
- 24
如何判断用户引用的是哪一轮历史消息或哪一段摘要?
- 25
上下文压缩时,如何区分重要信息和无效闲聊?
- 26
Checkpoint 和状态恢复是如何实现的?
- 27
Agent 的状态机是如何设计的?
- 28
算法题:H100, 给定一个整数数组,找出和最大的连续子数组,并返回其最大和。
- 29
如何调用subAgent, 但如何防止无限loop下去的问题. 我回答大多聚焦在: 一个兜底最大轮数(比如300轮)+ 模型自己不可能无限推理下去, 但是很显然面试官很不满意, 我也没考虑过这些问题.
- 30
上下文压缩怎么处理的, 如何避免信息熵减. 在近n轮对话保留, 前面的压缩, 一定会遇到信息熵减的情况, 你是怎么规避的.(我真的答不出来啊, 只做了一个简单的llm压缩, 明显看出面试官不满意, 就结束问题继续下一个了 )
- 31
user:"使用java 21" assistant:"我建议使用java 23" user: "同意" ,这种情况你只对user的prompt落盘就得到错误信息了
- 32
还有就是对主Agent调用subagent之间的消息如何传递追问很深入, 但是我确实没做太多的考虑........
- 33
checkpoint 状态机.
