阿里国际 | AI应用研发工程师 | 商品智能 | 暑期实习一面

面试时间: 5.21

技术栈: Agent、Java、Python、Node、SQL、前端

面试题目

1.自我介绍

2.新闻数据来源、数量规模如何存储,数据库表如何设计的,存哪些字段

数据来源:RSS 订阅、爬虫抓取、第三方 API(如 NewsAPI)。存储规模达百万级时采用分库分表或时序分区。表设计核心字段:id、title、content、source、publish_time、category、embedding_vector(外链向量库)、create_time。按发布时间做范围分区,热数据放近期分区加速查询。

3.新闻向量数据库如何分区?文本编码方式,新闻词嵌入,如何召回,编码方式和召回方式如何

分区策略: 按类目/时间分 Collection 或 Partition,减小检索范围。编码方式: 使用 BGE / text-embedding-3 等模型将标题+摘要编码为 768/1536 维向量。召回方式: ANN 近似最近邻检索(HNSW / IVF_PQ),先粗召回 Top-K 再经 Reranker 精排。混合检索时可结合 BM25 稀疏召回 + 向量稠密召回做融合。

4.Multi-Agent 如何协调串接,用你实现的项目说明

典型架构:一个 Orchestrator Agent 负责任务拆解和路由,多个专项 Agent(如搜索 Agent、分析 Agent、生成 Agent)各司其职。协调方式:①顺序流水线(Pipeline):前一个输出作为后一个输入;②并行扇出(Fan-out):Orchestrator 同时调多个 Agent 再汇总;③对话式协商:Agent 之间通过消息队列交换中间结果。关键点在于统一的消息协议、错误重试机制和上下文共享(共享 Memory/State)。

5.Redis 在你的项目中具体使用的场景,为何要使用

场景: ①缓存热点新闻/用户画像,降低 DB 压力;②分布式锁(Redisson),防止爬虫重复抓取;③发布订阅(Pub/Sub)做实时消息通知;④排行榜/计数器(ZSet/INCR)。为何用: 内存级读写(10w+ QPS),数据结构丰富,天然支持 TTL 过期,集群模式水平扩展。

6.如何用 Skill 实现业务意图识别,如何计算意图识别准确率,出现过什么问题

实现: 为每个业务意图定义一个 Skill(包含描述 + 示例),LLM 根据用户输入匹配最相关的 Skill 触发对应流程。可配合 Few-shot prompt 或 Router 模型做分类。准确率计算: 标注测试集(query → 正确意图),跑批评估 Precision/Recall/F1。常见问题: ①意图边界模糊导致误分类;②多意图并存时只识别到一个;③新意图 OOD 样本被强行归类。解决方式:增加"拒识"兜底 + 多标签分类 + 定期补充训练样本。

7.使用 Claude Code 开发的 Vibe Coding 挑战:如何描述任务,如何制定开发规范,重启后再次接上上下文

描述任务: 用自然语言明确目标、约束、输入输出,分层次说清 What → Why → How。粒度适中,太笼统会跑偏,太细碎反而限制 AI 发挥。制定规范: 在 CLAUDE.md 中写明技术栈、代码风格、目录结构、禁止事项,Agent 每次启动自动加载。接上下文: ①利用 CLAUDE.md + Memory 持久化关键决策;②git log/diff 恢复进度;③用 TodoWrite/Plan 记录待办,重启后 Agent 可从断点继续。核心思路是把"脑中隐性知识"外化为项目文件。

#聊聊我眼中的AI##发面经攒人品##AI求职记录##我的求职进度条#
全部评论
感觉你这总结的很好
1 回复 分享
发布于 05-07 23:51 北京
请问博主收到二面了吗
点赞 回复 分享
发布于 05-08 20:17 广东

相关推荐

05-06 20:30
门头沟学院 Java
📍面试公司:阿里平头哥🕐面试时间:半个小时💻面试岗位:AI应用研发工程师❓面试问题:自我介绍介绍第一个项目讲一下你在这个项目中主要负责的部分、完成的任务,以及遇到什么难点,是怎么解决的?为什么选择用 Redis 做分布式锁?Redis 锁在高并发情况下遇到了什么问题?追问: 具体的锁误删场景是怎么发生的?追问: A如果在中途 Retry 了,还需要重新拿锁吗?Timeout 以后锁已经释放了,Java 进程还在进行怎么办?追问: 既然这个场景下 Redis setnx 不太适合,最后是怎么解决这个原子性问题的?介绍第二个项目追问: 这个项目是你自己业余时间做的,还是有真实用户来用?介绍一下 RAG的原理?它怎么满足你这个项目的需求?RAG 检索的具体链路是怎么设计的?追问: 简历上写提升了 97% 的召回率,这个具体是怎么算出来的?你这个大模型服务目前是怎么部署的?HR / 软性问题学校实验室经历:读研期间有没有做一些研究工作?导师/实验室那边的方向是什么?职业规划实习相关:什么时候可以入职?能实习多长时间?反问🙌面试感想:面试体验很差,首先面试官全程不开摄像头,然后没有手撕环节也很奇怪,最后就是反问环节问到部门在做什么,回复是'不方便透露',,,那其实就没什么可问的了。
查看17道真题和解析
点赞 评论 收藏
分享
04-28 03:25
门头沟学院 Java
给我面没招了,发点面经攒攒人品~1.实习拷打2.论文拷打3.毕业是否有发表论文的要求?4.你自己有没有准备要发表论文?5.请详细聊一聊你的项目经历。你可以先讲一下"生活优选"这个项目是怎么做的。6.这个项目是基于某个开源项目做了二次开发,还是从零开始搭建的?7.请讲一下这个项目的整体架构是怎样的。8.你觉得这个项目中最有挑战性或者最难的地方是哪里?9.你这个服务是分布式的,还是单机部署的?10.你最初在MySQL中实现秒杀逻辑时,具体是用什么SQL语句来保证不超卖和一人一单的?11.为什么你认为MysqI不能保证原子性?12.如果使用update table set stock=stock-1wherestock>0,这个语句本身是原子性的,为什么你会觉得它无法防止超卖?13.你在Redis中是如何实现秒杀逻辑的?具体用了什么数据结构或脚本?14.既然你的系统是单机部署,为什么不在JVM内存中使用本地锁,而要去使用Redis增加额外的开销和复杂度?15.你之前面试过哪些公司或团队?是什么方向的?16.你这个项目是如何部署的?17.有没有尝试过部署到云服务器上?18.是否使用过Docker或Kubernetes等容器技术?你对此有什么了解?19.你在项目中使用了乐观锁和悲观锁来解决订单支付与关单的并发问题,请详细讲一下具体是如何实现的。20.悲观锁在数据库层面如何显式加锁?21.乐观锁和悲观锁分别适用于什么场景?有没有选择的原则?
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

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