字节跳动 · 抖音电商

后端开发工程师一面面经

完整信息

50 条问法 · 39 道题

本篇目录

一、知识图谱与检索平台你负责知识图谱平台的哪一部分?

实习是什么时候开始的?两个多月主要做了什么? 原来使用的是 RAG 还是知识图谱? 接口背后是什么?是业务系统还是文档检索系统? 你是不是把原来的知识库替代了? 多文档关联检索是什么意思? 实体语义重复时会去重吗? “字节跳动公司”“北京字节跳动公司”“字节跳动”会合并吗? 实体如何去重?如何避免误伤? 实体合并需要人工审核吗?有没有系统化的处理手段? “苹果”既可能是水果,也可能是公司,这种一词多义怎么处理? 所以没有系统管理,主要依靠模型判断吗? KB → Document → Revision → Snapshot → Artifact → Deployment 为什么要这样设计? 构建失败以后能够断点续跑吗? 系统能够回滚吗? 同一个知识库是否只能同时存在一个构建任务? 两个构建任务同时走到最后一个发布节点时怎么办? 一个构建任务失败以后,另一个任务怎么办? Qdrant 和 Neo4j 中一个存储写入成功、另一个写入失败时怎么处理? 检索层是不是使用了两个数据库? 一个数据库写入成功、另一个数据库写入失败时怎么办? 线上应该以哪个版本为准?为什么要使用两个数据库? Dense、Sparse 和 RRF 分别是什么? 图谱查询为什么最多扩展三跳?为什么不是四跳? 三跳这个限制是基于现有数据集测试出来的吗?

二、Agent 与工作流两个任务会不会发生竞争,同时推进同一个状态?

Agent 的约束主要依靠程序设计还是提示词设计?通过校验能不能避免异常情况? 上下文压缩如何保证质量?如何避免重复压缩? Agent 是基于开源框架实现的吗? 如何避免 Agent 死循环或者工具连续超时? 工具如何分类?如果一个工具始终超时怎么办? 如果跳过的是自己提供的工具,会产生什么影响? 如何优化工具与 Agent 之间的 CLI/MCP 交互? 工具需要执行 100 秒,但 Agent 只能容忍 50 秒,会发生什么? 主节点必须等待工具结果时,应该如何处理长耗时任务?有没有心跳或者进度反馈?

三、数据平台与图数据库这个平台是什么?

平台的数据从哪里来? 如何保证数据一致性? 数据原本就是结构化的,为什么还要构建知识图谱? 使用 API 网关进行聚合查询,能不能替代图数据库?

四、MySQL、Redis 与并发控制MySQL 和 Redis 如何保证一致性?

删除缓存以后,大量请求会不会同时访问数据库,把数据库打垮? 什么是乐观锁和悲观锁? 高并发更新订单接口应该怎么设计? 数据库到底应该使用乐观锁还是悲观锁?为什么还需要 Redis 锁? Redis 分布式锁应该怎么设计? 接口应该在什么时候获取锁、什么时候释放锁? 查询时数据是 A,但真正修改时数据已经变成 B,应该怎么办?
本篇目录
  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
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50

相关公司