27届-暑期实习-字节-飞连-一面
📍面试公司:字节跳动-飞连
🕐面试时间:23.3.6
💻面试岗位:后台开发
❓面试问题:
1、自我介绍
智能问答系统:
1、这个项目中你做了什么,说说你认为的难点?(RAG文本分片优化)
2、写的是智能问答系统,为什么会涉及用户的大文件上传呢?是用户自己上传文件还是构建知识库这样的?
3、用户给出问题之后,提示词是怎么拼出来的?
4、如果用户问题检索出来的内容比较多的情况下,是怎么操作的?会进行多轮对话吗?(这里我当时没理解面试官什么意思,后面理解了,面试官应该问的是像豆包页面那种用户自己上传附件,然后通过问题,去检索这个刚刚上传的附件里的内容,但是如果这个大文件内容检索出来比较多的话,因为有上下文token限制,所以问我如何处理这方面的)
5、继续上面的场景提问,那么你们是每次进行提交重新进行检索生成,还是会有预处理?(说实话我没搞懂这里)
6、这个通义千问模型是用来干什么的?
7、有没有对用户问题和对应答案进行一个记录,用来节省Token?
8、websocket实现长连接,这个断点续传是怎么做的?
9、那如果是在对话过程中呢?出现了网络问题,你是如何实现断点续传的?(其实这里还要考虑网络问题的话,跟模型API连接也会断开,无法生成对应的内容,可能需要优化一下异常处理的内容)
基础知识
10、Springboot是如何解决循环依赖的?
11、JVM中的垃圾回收算法?
12、Java中一般保证并发安全怎么做?
13、Redis实现分布式锁?
黑马点评
14、秒杀系统,高并发请求,如果保证不超卖?
15、生产者这边有150个消息,如何保证不超卖呢?(使用Redis预存库存,然后配合Lua脚本来进行预扣减,保证只发送150个消息)
16、如果生产者有102个消息,但是mysql这边只有100个库存呢?你会怎么做?
17、你这个项目是什么状态下写的,是横向还是自己学习的?
手撕:
第一题不会
第二题-编辑距离
🙌面试感想:
推了三次字节,还是勇敢面对了,面试官虽然看起来严肃,但是人也是不错的,也是一步步引导的。
周五晚上还在面试,强度确实比较高HH。
第一题手撕不会,面试官给我换了一个编辑距离。
面试结果:
一面过,还以为直接被挂了,竟然还通过了,那就再体验下二面了,随缘
查看5道真题和解析