Moka

收藏
企业服务
500-999人
C轮
北京
查看官网
上传简历
职位类型
全部
最新
热门
04-17 14:44
门头沟学院 Java
RAG与知识库构建● RAG知识库中存入的向量数据来源于哪里?● 你的文本分块(Chunking)具体是怎么做的?● 深度追问: 如果让你重新设计一个RAG系统,你了解哪些文档分块的最佳实践(比如单一窗口切多大合适)?● 深度追问: 如果采用“大分块+小分块”的父子结构策略,几万字文档的大分块具体要怎么切出来?● 深度追问: 采用固定大小切分时,如何避免语义被割裂?Agent记忆管理(短期与长期记忆)● 短期记忆是如何实现的?● 深度追问: 当对话达到设定的5轮并进行了一次压缩后,如果后续对话继续增加(第6、7、8轮...),你的系统是如何再次处理和压缩这些上下文的?● 长期记忆是如何实现的?● 深度追问: 选择在什么时机进行长期记忆的持久化保存?● 深度追问: 如果用户在同一个Session中聊了完全不同的多个话题,你在压缩总结并存入向量库之前,会如何设计提示词(Prompt)?为什么必须要做这一步总结提炼?● 深度追问: 长期记忆成功保存后,后续的具体使用场景和机制是什么?存储在哪里?系统架构与工程化挑战● 从前端到后端,你是如何准确判断和捕获Session关闭的触发时机(特别是用户直接关闭浏览器页面的情况)的?● 在执行长期记忆的持久化时,如何保证数据库写入一定成功(例如遇到报错、需要重试时如何处理以防止记忆丢失)?● 你的项目集成了哪些MCP(Model Context Protocol)工具?ELK和Prometheus是如何协同工作的?● 你的Agent是只能被动响应用户的提问,还是能做到主动发现异常并给出提示/解决方案?● 场景题: 如果抛给你一条执行非常慢的SQL语句,你的Agent从头到尾的分析和处理链路是怎样的?AI编程工具的日常实践● 平时写代码在用什么IDE和AI模型?● 使用Cursor时,有什么最佳实践能让生成的代码更加准确?● 深度追问: 开发前的需求分析是你自己做,还是借助AI来做?● 深度追问: 在让Cursor最终修改代码前,生成的代码是以什么样的“中间态”交给你进行Review的?● 深度追问: 使用Cursor时,有没有自定义过相关的规则文件(如 .cursorrules)?
查看21道真题和解析
点赞 评论 收藏
分享
04-02 14:15
门头沟学院 Java
努力拥抱AI中…1. 实习拷打2. 视频进度的redis缓存和定时任务异步落库的方案介绍一下3. 视频进度定时任务该从redis里面扫哪些数据4. 视频进度的hash结构是采用视频章节作为key,value部分是用户id作为key,field 里面又是一个map这样的吗(这里被带偏了,真正的结构不是这样的,后面就全是被面试官追着问)5. 这个value中的map里的数据什么时候会被删除掉呢6. 那这个redis 的hash结构的map内部的key和value来去设置过期时间吗,redis有提供这样的方法吗7. 重新设计这一块的Hash结构该怎么设计,有效期该怎么进行一个设计8. 用户一个视频没有观看完,在中间就进行了一个关闭,你是怎么去判断这个关闭的9. 前端超过了10秒没有给你提交是怎么判断用户离开这个页面,有一次请求超时了丢包了该怎么考虑10. rabbitmq如何实现一个延迟功能11. 如果前端因为网络原因一直无法提交后续的,这个进度是有一部分的丢失,这个该怎么解决呢12. 简单介绍一下微途旅行的项目13. agent用到了哪些工具14. 如何管理这个agent的多轮对话,记忆化15. 会考虑做一个消息的裁剪吗16. 每一次对话都会从mysql里面把用户所有的历史的绘画全部都取出来吗?17. agent背后的调用的模型是什么18. 你再调MCP server的时候,然后你会提供了两种模式,本地的模式和sse远程的模式。为什么会有两种模式呢?19. 多节点部署的时候你的后端是怎么向后端通讯的,sse还是websocket20. SSE和websocket的区别是什么?为什么?然后你要你觉得你采用的是这个sse21. 如果你是后端是多级的部署的话,你其实又存在于多轮对话,那就意味着你的这个agent一定是一个无状态的。因为我每一次用户新的多轮对话的新的输入,它都有可能会打到不同的节点OK,你的这个agent会有问题吗?
查看20道真题和解析
点赞 评论 收藏
分享
04-15 13:06
门头沟学院 Java
1.Java 有哪些基本数据类型?2.char 类型占几个字节?3.基本数据类型和包装类有什么区别?4.Java 中常用的集合类有哪些?5.HashSet 的底层数据结构是怎样的?6.HashMap 的 put 方法执行过程是怎样的?7.HashMap 中判断 Key 相等是通过什么方式?8.Java 中的 equals 和 == 有什么区别?9.HashMap 扩容时是怎么处理的?10.扩容后,原数组下标和新数组下标有什么对应关系?11.高低位是如何判断的?12.多线程与并发 (JUC)Java 中加锁的方式有哪些?13.synchronized 和 ReentrantLock 有什么区别?14.ReentrantLock 的公平锁和非公平锁在实现上有什么区别?15.synchronized 的锁升级过程是怎样的?16.锁可以降级吗?17.线程池执行任务的流程是怎样的?18.核心线程数满了之后,为什么先放入队列,而不是直接启动非核心线程?19.核心线程可以被销毁吗?20.线程在执行任务过程中抛出异常会有什么影响?21.InnoDB 的事务隔离级别有哪些?22.可重复读(RR)是通过什么机制实现的?23.MVCC 的原理是什么?24. 结合索引查询、Read View 和 Undo Log,详细讲讲查询一条数据版本的全过程。25.InnoDB 索引的数据结构是怎样的?26.B+ 树和 二叉树有什么区别?27.MVCC 加临键锁)能彻底解决幻读问题吗?28.举个无法解决的 Case。29.间隙锁在 RC(读已提交)和 RR(可重复读)级别下有什么区别?30.Redis 的 IO 模型是怎样的?31.Redis 6.0 之后引入多线程的作用是什么?32.Redis 中的大 Key 需要怎么去删除?33.Redis 内存不足时的淘汰策略有哪些?34.如何用 Java 设计一个 LRU 缓存,实现 O(1) 的查询和修改?35.第一段实习经历的离职原因是什么?36.在运维平台项目中,负责了哪些功能,解决了什么问题?37.通过 Dubbo Filter 记录慢请求日志的具体实现细节是什么?38.Dubbo Filter 的设计模式是什么?39.如何从全局视角统计慢请求(例如按时间段、高频接口 Top 排行)?40.是否有接入完整的监控大盘?41.项目中遇到过哪些棘手的技术问题?42.如果定时同步 Redis 的过程失败了,有什么告警和重试的策略?43.平时编程会使用 AI 工具吗?44.使用什么工具和模型?45.AI 生成代码和手敲代码的比例大概是多少?46.AI 领域的 MCP 协议和 Agent Skills 概念有什么区别?
点赞 评论 收藏
分享
03-28 10:27
已编辑
门头沟学院 Java
没有手撕算法环节一面 技术面1.==和equal的区别2.主要考察的是对jvm的理解吧静态变量 实例变量 局部变量的存储在jvm哪个位置,什么时候会释放2.集合遍历的时候能删除元素吗3.SpringBean的生命周期4.设计模式 讲一讲策略模式 然后问了一下优缺点5.如何做一个接口限流 一分钟限制一百次?我答用redis在拦截器层直接做就好了 有请求过来用户标识对应的接口路径请求次数+1  用过期时间来维护一分钟然后我突然想到了边界性问题 万一是还剩五秒过期请求了80次然后过期后的五秒钟又请求了80次 不是还会突破限流吗 然后我在那里想这个 卡了一下面试官问有什么疑问吗 我重新回答了一下 说可能会临界窗口突刺 这种情况要用滑动窗口了 他说没事 不用考虑这种复杂情况 就是很简单的做限流就好了 所以考察的应该是redis的简单使用吧6.在5的基础上问的 说这个接口限流要一起给同事用 怎么操作 其实我没太听明白这道题的意思 我问了两遍啥意思 还是没太听懂 最后他引导了我一下 我答出来了 原来考察的是aop 用注解的形式对方法进行功能增强拓展7.在6的基础上问了spring三大特性应该就没了…中间可能有一点点遗漏的问题 前一段时间面的 不太记得了 但一面整体难度偏低二面 技术面纯项目 无自我介绍1.让我说说我的项目2.问我项目中用到微信支付 出现一笔订单支付两次的情况怎么办 第一次支付了回调没过来 第二次又支付了 这一点我没考虑过 我一直觉得一笔订单只能支付一次 支付过的订单就没法支付了 微信服务端会替我处理好 下来问了问ai 还真有可能出现这种情况 还是太才疏学浅了3.问微信支付回调中 如果我代码逻辑有问题 或者网络抖动 没有回调成功 边界性问题我怎么处理的我稍微答出来一点点 微信回调避免业务逻辑耦合 直接推rabbitmq处理 其它是真想不到了 因为我做的平台和pdd这种电商平台是完全不一样的 实体产品可能网络恢复后还可以做重发货处理 但我是虚拟产品 用户也不用注册没有标识 都是匿名操作 退出页面 我也没办法继续操作了 只能用户手动补偿 我觉得面试官没太理解我的项目的机制 他直接按传统的货物交易平台来直接问我经典的场景问题了 导致我对他的问题感觉无从下手 因为很多策略都不通用4.问我对ai的了解和使用5.分享一下用ai的技巧6.prompt在哪个文件里改…基本就没了 二面整体感觉强度挺大的 每一个点都要刨根问底 你回答的时候他觉得你会的就会直接跳过 然后你不会的 他就会一直逮着问 问的很具体很细致 给我营造了一种我什么都答不上来的感觉 到后面直接压力爆炸了 感觉二面应该是G了
查看14道真题和解析
点赞 评论 收藏
分享
1.自我介绍;2.项目介绍;3.项目里登录权限怎么做的;4.过滤器有哪几类?——我这里忘记有了5.elasticsearch为什么比mysql的查询性能高;6.如果我想搜apple打成了appee为什么相关的信息还是能搜出来7.如果不用es还什么方案能应对并发访问8.索引有哪些数据结构9.能描述一下这些数据结构的优缺点吗?10.如果基于age字段建立了索引,查20-30岁的人索引是怎么查的?如何加速查询的?11.索引失效的场景;12.如何排查慢查询;13.两个索引,优化器通过什么方式决定走哪个索引呢?14.索引的设计原则;15.那如果是一个很长的字段,我就想给他设计索引怎么办?16.你项目里面qps数据是怎么来的?17.那你是如何防止超卖的呢?还有其他解决方案吗?18.zookeeper了解吗?(逆天,这个还问)19.redis分布式锁在集群模式下有什么问题,怎么解决?20.redis持久化有哪些方式?21.如果RDB这种方式下,我一直set某个key,那我的日志文件会出现很臃肿,怎么解决?(这里是面试官一步一步引导才打出来的)22.redis的key有哪些删除策略?23.具体是怎么删除的?(好像是问redis内部怎么去删除的,我晕这是问内部原理吗)24.redis里面的数据结构有哪些?试用场景?25.那你觉得里面的string和java中的string有啥区别?(这个是真不知道,我就说了性质不一样,笑死)26.redis集群部署方案?27.事务的特性;28,这些特性怎么实现的?29.事务的隔离界别有哪些?30.你这个项目里有用到canal,能给我讲讲他的原理吗31.你项目用到rabittmq为什么不用其他呀?32.消息幂等性你是怎么保证的?33.uuid能做mysql表里数据的主键id吗,这两个都唯一啊?34.如果不用uuid怎么保证唯一性;35.讲讲雪花算法实现原理吧36.限流算法有哪些?37.spring中bean的生命周期?38.你第二个项目对话持久化怎么存储的呀?39.如果ai调用function calling出现幻觉,出现了业务偏差,你有啥解决方案吗?40.jvm类加载器哪些?41.后端微服务之间怎么实现负载均衡?42.nacols出了服务注册还有什么功能呀?
点赞 评论 收藏
分享
分享我的面试经验
模拟面试
真实面试体验,快速补齐短板
应聘感受
暂无应聘感受
牛客网
牛客网在线编程
牛客网题解
牛客企业服务