淘天一面(后端社招)

1.讲一下你们的搜索架构
2.输入一个关键词后是如何处理的? 会经历哪些系统, 整个流程是什么样的?
3.讲一下重构的方案,具体体现了什么技术力?整个过程遇到的最大难点是什么?
4.如何排查gc问题的? 怎么确认哪一个是大对象?
5.分页是怎么做的? 如何支持千人千面? 不同用户不同筛选项每次返回分页顺序不同,怎么设计排序逻辑?
6.排序所需的数据是如何回流回去的?
7.多级缓存是如何设计的? redis的zset用来干什么,底层原理?多线程并发请求redis是安全的吗?
8.java写多线程程序怎么写?线程池参数怎么设计的?有没有遇到过线程池导致的性能问题?
  假如设定多个线程池,如何确定其和cpu核数的关系?
  还有没有用过其他线程池, ForkJoinPool?
9.解释一下配注解,比如RefreshScope是怎么实现实时拉取配置的?
10.讲一下配置中心的整体架构? 修改文件后,如何同步到客户端的?客户端的ip存在哪里?心跳是谁发给谁?
11.讲一下RPC的架构。
12.设计一个agent需要考虑哪些方面?
全部评论
最后一题问的AI: 一、目标与边界定义 Agent 的核心目标是什么? 单一任务 vs 通用助手 能力边界:哪些事情它该做,哪些不该做 用户画像:面向谁,使用场景是什么 二、感知层(Perception) 接收什么类型的输入?(文本、图片、语音、结构化数据) 如何解析和理解用户意图(NLU / Prompt 理解) 上下文窗口管理:多轮对话的历史如何压缩和保留 三、记忆系统(Memory) 类型 说明 短期记忆 当前会话上下文(Context Window) 长期记忆 向量数据库、用户偏好持久化 工作记忆 任务执行过程中的中间状态 外部知识 RAG 检索增强,接入知识库 四、规划与推理(Planning) 任务分解:复杂任务如何拆成子任务(CoT / ReAct / ToT) 执行策略:顺序执行 vs 并行执行 vs 条件分支 失败处理:重试机制、降级策略、兜底方案 反思能力:Self-reflection,执行后评估是否达标 五、工具调用(Tool Use) 哪些能力需要通过工具扩展?(搜索、代码执行、API调用、数据库查询) 工具的选择策略(如何判断用哪个工具) 工具调用的安全性(权限、防注入、沙箱隔离) 工具失败后的处理逻辑 六、行动执行(Action) 输出类型:文本回复 / 代码 / 结构化数据 / 触发副作用(发消息、写文件) 副作用控制:不可逆操作需要人工确认 幂等性设计:避免重复执行 七、多 Agent 协作(Multi-Agent) 是否需要 Orchestrator + Sub-Agent 架构 Agent 间通信协议 任务分配与结果汇总 竞争与协作策略 八、安全与对齐(Safety & Alignment) Prompt 注入防护:防止用户绕过指令 权限最小化:Agent 只拥有完成任务所需的最低权限 输出审核:有害内容过滤 人类监督点:在关键操作前暂停等待确认 目标对齐:避免 Agent 为完成目标而采取不期望的手段 九、可观测性与调试(Observability) 推理过程可追溯(Trace / Span) 工具调用日志 错误定位能力 性能监控(延迟、Token 消耗、成功率) 十、评估与迭代(Evaluation) 如何定义 Agent 成功的标准? 自动化测试集设计(典型场景、边界案例) Human-in-the-loop 反馈收集 A/B 对比不同策略效果
点赞 回复 分享
发布于 04-15 17:11 北京
佬,考虑一下我们这里吗 https://careers.pddglobalhr.com/campus/grad?t=rkN9OyXTXK
点赞 回复 分享
发布于 04-13 17:10 上海

相关推荐

评论
2
6
分享

创作者周榜

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