北京某小厂二面

[后端/AI工程实习生] - [CEO面](oc已拒)

面试问题速览

1. 请简单介绍一下自己。
2. 你是从什么时候开始接触编程的?第一个项目是什么时候做的?
3. 看你简历上提到了Go语言,可以讲讲它的优劣吗?
4. 你提到用Python做过模型微调,可以具体讲讲吗?(基于什么模型、用了多少数据等)
5. (深挖RAG项目)可以详细介绍一下你在智慧农业项目中RAG问答引擎的实现方案吗?为什么选择将PDF转为Markdown再处理,而不是直接用框架提供的工具?
6. (压力面/追问)RAG的局限性是什么?请举一个具体的负面例子,在什么场景下RAG并不能解决得很好?
7. 你对未来的技术方向有什么规划?更倾向于Java后端还是AI工程?
8. 考虑到你还在校,如何安排实习时间以确保投入度?

我的回答策略与分析

【针对问题】:Go语言的优劣势分析

【我的回答策略】
我重点阐述了Go语言在并发处理上的核心优势,提到了goroutine的轻量级特性和基于channel的CSP并发模型,并强调了它在高并发场景下相对于传统多线程模型的低开销。

【回答分析】
亮点:准确抓住了Go的核心特性,并提及了关键技术goroutine和channel。
复盘反思:这是一个明显的失分点。面试官问的是“优劣”,而我只答了“优”没答“劣”,这会显得对技术的理解不够全面和辩证。
改进建议:面试前应准备好技术的两面性。对于Go,可以补充几点不足,例如:1. 错误处理机制(大量的if err != nil)相对繁琐;2. 依赖管理在go mod出现前比较混乱;3. 泛型支持较晚,在某些场景下代码复用性不如Java。最好能结合与Java线程模型的对比,更能体现思考深度。

【针对问题】:RAG技术的局限性,并要求举出具体的负面案例

【我的回答策略】
我首先从理论层面切入,提出RAG依赖向量相似度检索,如果关键信息不包含明确的关键词或语义关联较弱时,可能会检索失败。但在面试官的持续追问下,我未能主动给出一个具体、有说服力的负面应用场景。

【回答分析】
亮点:在压力下没有放弃思考,尝试跟上面试官的思路。
复盘反思:这是本次面试的最大挑战和暴露出的主要不足。我的回答暴露了对技术的理解更多停留在“如何实现”,而缺乏对“技术边界和失效场景”的深入思考。这道题的本质是考察候选人的批判性思维和技术深度。
改进建议:对于这类开放性问题,一定要提前准备具体、有画面感的例子。复盘后,我认为以下几个RAG的负面案例会是更好的回答:
1. 多跳推理问题:当一个问题的答案需要结合多个独立的知识片段进行逻辑推理才能得出时,单次检索召回的上下文很可能是不完备的。
2. 精确统计与计算:例如提问“知识库中关于‘A项目’的文档,过去三个月更新了多少次?” RAG无法执行计数或精确计算。
3. 非结构化数据中的隐含关系:例如,无法直接回答“A和B两位作者合作过几篇论文?”除非知识库中有直接陈述这个事实的文本。
4. 反事实或否定性问题:例如提问“请给我念一首你知识库里没有的诗”,RAG的机制决定了它无法处理这种“在不存在中寻找”的问题。
全部评论

相关推荐

8.18 航图纵横北京500人+厂- 请简单做个自我介绍。- 你做的两个项目是在学校里自己做的吗?(追问:是否有模板,二次开发?)- 这两个项目中哪个熟悉一点,可以简单介绍一下?- 为什么要做多级缓存?- 你这个数据一致性是怎么保证的?(追问:有没有重试策略?Redis和本地缓存更新是分开还是原子操作?原子性如何保证?如果更新失败如何回滚?编程式事务如何实现?人工处理的细节?有监控报警吗?)- 请解释一下缓存穿透、缓存击穿和缓存雪崩,并分别说明你的解决方案。- **JWT双Token认证**,你这块是怎么做的?- 你知道JWT里边都分为哪些部分吗?- 你用ThreadLocal去存储,都是在哪些过程当中去存储的?(追问:请求结束后会释放吗?在哪个过程去释放?直接在注册接口里写吗?如果很多接口都需要存Token,如何避免重复工作?了解过滤器、拦截器吗?)- 你这个分布式锁是怎么用的?- 你知道Redis分布式锁它底层是怎么实现的吗?- 释放过程你看过吗?(追问:为什么要判断是不是当前线程持有的锁?什么情况下两个线程会持有同一把锁?)- 你集成的是什么大模型?怎么集成的?- RAG模式具体是怎么实现的?- 聊天记录持久化是怎么做的?持久化数据存到哪了?- 你知道什么是流式输出和非流式输出吗?- 了解过MCP吗?- 项目部署过吗?(追问:部署到线上抛异常怎么排查?根据关键字查日志怎么查?根据trace ID怎么查?)- 用到过线程池吗?- 线程池都有哪些参数?- 了解过异步编排吗?- Java本地锁有哪些?- `synchronized`是怎么实现的?(追问:`markword`的作用?与`volatile`的区别?)- 策略模式是怎么实现的?可以我说一下实现细节吗?- Kafka了解过吗?(追问:线上消息积压了怎么处理?为什么要一个消费者端对应一个partition?)- 反问我吐,被抓着直接问场景题,问我项目出现问题了怎么解决,方案是什么。我直接傻眼了/(ㄒoㄒ)/~~,然后一紧张脑子还抽抽了还把ThreadLocal这个东西是啥给忘了。
查看25道真题和解析
点赞 评论 收藏
分享
评论
3
3
分享

创作者周榜

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