字节跳动

全栈开发工程师(Agent)一面面经

完整信息

14 条问法 · 18 道题

本篇目录
#发面经攒人品# 1.自我介绍 2.项目介绍(utbench是如何去衡量模型生成效果的?) 3.实习经历(sql多表查询和慢查询问题,如何去解决的?) 4.agent是怎么调用工具的? 5.agent还有其他调用方式吗? 6.agent怎么去判断是否需要调用工具,MCP协议解决了什么问题?怎么解决的? 7.agent的上下文窗口满了怎么办,如何去进行压缩,有哪几种方式? 8.RAG的具体流程 9.embedding,rag如何检索向量? 10.agent的memory是如何进行管理的?都存在哪些地方? 11.多agent系统,agent之间如何协作?多agent之间的上下文怎么管理?任务状态如何去进行传递? 12.多agent系统的工作流程和生成效果如何去做量化评估? 手撕题: 1.力扣56.合并区间 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 2.力扣146.LRU缓存,带输入输出版本。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void put(int key, int value) 如果关键字 key 已经存在,则变更其数据值 value ;如果不存在,则向缓存中插入该组 key-value 。如果插入操作导致关键字数量超过 capacity ,则应该 逐出 最久未使用的关键字。 函数 get 和 put 必须以 O(1) 的平均时间复杂度运行。 感觉对具体的细节还是没讲太到位,不过总体上都答的相对比较好,我觉得还行,面试官也觉得还行。
本篇目录
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
  7. 07
  8. 08
  9. 09
  10. 10
  11. 11
  12. 12
  13. 13
    以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。
  14. 14
    LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void put(int key, int value) 如果关键字 key 已经存在,则变更其数据值 value ;如果不存在,则向缓存中插入该组 key-value 。如果插入操作导致关键字数量超过 capacity ,则应该 逐出 最久未使用的关键字。 函数 get 和 put 必须以 O(1) 的平均时间复杂度运行。

相关公司