4.8 钉钉-S项目-暑期实习java研发一面

1.自我介绍
2.深度参与项目,产出
3.OCR为撒做文件识别;部署的哪个
4.传统的读取pdf docx api sdk有用过吗
5.文本内容为啥还要用ocr
6.pdf 图片内容;图片,图表的理解,怎么做;饼状图,折线图怎么提取语义信息
7.ocr背后的原理,给一个饼图,然后怎么输出内容
8.是否真的了解怎么识别 占比 类比这样的语义识别
9.有看过ocr调用,语义保留这样的指标的评估
10.怎么做评估;完全识别的指标又是怎么评估;九十分一百分怎么打分
完全识别
11.图表识别怎么评估打分,怎么评判,有哪些依据
12.为啥选768维度
13.讲下embedding模型,怎么做embedding
14.embedding模型底层;什么是token;为撒100wtoken最大token数
15.大语言模型参数了解吗;在显存消耗的哪个层面消耗的
16transfomer词表是怎么构建的吗
17.ES怎么构建的;这里面的关键词怎么构建的;BM25基于什么原理
18.一部分milvus语义召回,一部分ES关键词召回;怎么返回用户的
19.精排维度是多少,原理是什么
20.rerank精排基于什么;为撒精排效果更好
21.你觉得这些策略涉及有哪些问题;讲了四个问题
权重;向量维度;双向量检索的策略;切分策略(切分维度)
22.针对上述的你提的问题,说出自己解法
23.最核心的一个指标的什么;最核心的指标;归纳出最核心的一个综合指标
24.function calling mcp skill,解释概念;用到什么场景;分别解决了什么问题
答得不好
25.prompt engining ,context  engining,hareness enginering 解释什么问题
答得不好
26.抽象类和接口却别
27.jvm内存回收;什么情况下适合标记清除,什么标记整理
28存活时间怎么定义

这里列下六个ai概念和解释
24. Function Calling、MCP、Skill:概念、场景与解决的问题
这三个概念其实代表了 AI 智能体(Agent)与工具交互的三个不同层级:底层协议、通信标准、业务封装。
1. Function Calling (函数调用)
概念:这是大模型的一种底层能力。它让模型不仅能输出文本,还能输出结构化的数据(如 JSON),告诉程序“我要调用哪个函数,参数是什么”。
解决的问题:解决了“模型说不清楚,程序读不懂”的问题。它打破了模型只能聊天的限制,让模型有了“手”,能触发外部动作。
场景:
简单的工具调用:查天气、计算器、查询数据库。
提取结构化信息:把用户的一段话转换成 JSON 对象。
2. MCP (Model Context Protocol,模型上下文协议)
概念:由 Anthropic 提出的标准化通信协议。你可以把它理解为 AI 界的 USB-C 接口。它定#牛客AI配图神器#义了一套标准,让 AI 应用(Client)能统一地连接到各种数据源和工具(Server)。
解决的问题:解决了“连接碎片化”和“上下文孤岛”的问题。以前每接一个工具都要写一套适配代码,现在只要工具支持 MCP 协议,AI 就能直接连,不用重复造轮子。
场景:
企业级应用集成:统一连接本地文件、Google Drive、Slack、GitHub 等。
跨平台工具共享:开发者开发一个 MCP Server,所有支持 MCP 的 AI 客户端都能用。
3. Skill (技能)
概念:这是面向业务的能力封装。它通常是一个包含指令、脚本、资源和提示词的“文件夹”或集合。Skill 往往基于 Function Calling 构建,但更复杂。
解决的问题:解决了“工具零散,无法完成复杂业务”的问题。它把一个个原子化的函数(如“查航班”、“查酒店”)组合成一个有意义的业务能力(如“订机酒套餐”)。
场景:
复杂任务处理:比如“帮我策划一次旅行”,Skill 会自动规划步骤,依次调用查天气、订机票、订酒店的函数。
垂直领域专家:比如“法律助手 Skill”,里面封装了查法条、写文书的特定流程和提示词。
📌 总结对比表
表格
概念本质定位核心解决问题形象比喻
Function Calling底层交互协议模型输出结构化指令神经信号(告诉手要动)
MCP通信与调度层统一连接标准,避免重复开发USB 接口(通用插头)
Skill业务能力层复杂任务编排与封装操作手册(怎么做菜)
🧠 25. Prompt Engineering、Context Engineering、Harness Engineering
这三个概念代表了 AI 应用开发从“手工作坊”到“系统工程”的进化过程。
1. Prompt Engineering (提示词工程)
解释:这是最早期的阶段。核心是“写咒语”。通过精心设计自然语言指令(如“你是一个专家,请一步步思考...”),引导模型输出更好的结果。
局限:它是一次性的、静态的。如果任务太复杂,光靠一段话很难控制模型。
2. Context Engineering (上下文工程)
解释:这是目前的主流趋势。核心是“构建信息流水线”。
它不再只关注那一句提示词,而是关注如何把最有效的信息(知识、历史、工具描述)在恰当的时机喂给模型。
它包括 RAG(检索增强)、记忆管理、摘要压缩等技术。
解决问题:解决了模型“记性差”、“知识过时”和“幻觉”问题。它把模型从一个“聊天机器人”变成了一个“拥有外部知识库的专家”。
3. Harness Engineering (编排工程/智能体工程)
注:Harness 在这里通常指“智具编排”或“系统 harness”,类似于 LangChain 或 AutoGen 这类框架所做的工作。
解释:这是最高阶的阶段。核心是“系统级管控”。
它不仅仅是给信息,而是设计一个工作流。比如:先让模型 A 写代码,再让模型 B 审查代码,如果报错再让模型 A 修改。
它涉及多智能体协作、循环反馈、工具调用的逻辑编排。
解决问题:解决了复杂任务的自动化执行和可靠性问题。
📌 一句话总结进化史
Prompt Engineering:教模型“怎么说话”。
Context Engineering:给模型“参考资料和记忆”。
Harness Engineering:给模型“ teammates(队友)和工作流程”。
全部评论
拼多多招27届实习生啦 https://careers.pddglobalhr.com/campus/intern/detail?t=dRvUVvcTiA
点赞 回复 分享
发布于 04-10 14:10 上海

相关推荐

03-31 16:42
中南大学 Java
人生第一次面试,从中午开始就紧张的不行,吞了两粒普萘洛尔,面试的时候确实一点没紧张了。问了快四十个问题,面经写出来才发现问题这么多,怎么记得看面经都是只有一二十个,是不是大家发的时候都精简了一些导致的?鼠鼠实力还是不够,死锁居然没想起来,aba问题一句话的事,也没看过,场景题也只能凭自己经验瞎编,没提前准备好在面试官人比较好,没答上来也给提示,说没关系。(感觉面试官也有点紧张,让我放松了不少)没有手撕也比较惊讶,不知道是出于何考虑。希望能有二面吧,给我一点正向反馈吧,压力真的是爆了问题:1. 请花大概五到十分钟,介绍一下你的项目经验,以及整体遇到的问题和如何解决的。2. 本地生活服务平台项目,是你一个人完成的还是团队合作完成的?3. 这个项目(本地生活服务平台)中,你觉得遇到了最重要、最难的问题是什么?你是如何解决的?4. 经过你这个缓存设计之后,你的整个系统 QPS 可以到多少?假如说我现在要扛 1 万 QPS 的话,你觉得整个系统还需要做什么升级改造?5. 你怎么样去识别哪些数据是热点数据的?6. 假如说你的系统一直运行得很好,突然某天出现了宕机,你觉得应该怎么去定位?大概的流程知道吗?7. 你觉得秒杀系统这种商品购买和普通的商品购买,它会有什么不同?整个系统需要考虑什么因素?8. 如果系统现在能扛 1000 QPS,瞬间来了 3000-4000 个客户秒杀,可能会发生什么?应该有什么措施去对抗/缓解这种情况?9. 你滑动窗口限流用的是什么组件?大概是怎么实现的?10. 针对第一个 下单资格判断Lua脚本,脚本主要的逻辑是什么?11. 如果配合 Lua 脚本的话,有没有什么注意事项?12. 假如因为不小心写了个 bug,这个 Lua 脚本执行需要 10 秒或者 20 秒,你觉得这个时候系统可能会发生什么情况?13. 假设 Redis 的 Lua 脚本正在执行一个扣减操作还没执行完,这时候其他客户端的请求打过来了,它会阻塞吗?还是不阻塞?14. 你们的项目里面用到 Caffeine,为什么用它?主要用它做什么?架构设计上有什么考虑?15. Caffeine 的淘汰策略你大概知道吗?16. 系统运行中如果出现慢 SQL,一般是什么原因?以及如何定位慢 SQL 问题?17. 假如系统用户量非常庞大(两三千万),要给数据库去加索引的话,这个索引加起来可能耗时两三个小时,在执行索引时需要注意什么?18. 你怎么样去测你的 QPS?你评估出来的 1000 QPS 主要是关注哪些指标?19. 本地生活服务平台是在公司里面的经历,还是你们自己的一个学习项目?20. 对于 Kafka 了解吗?它是怎么样保证消息顺序的?21. 即便做了缓存缓解压力,MySQL 还是可能有瓶颈,你觉得这个时候需要做哪些对 MySQL 的优化?22. 你说数据库做主从分离,读从库时,怎么样去保持主库和备库的数据一致性?23. 你们整个系统有没有用到什么监控?你觉得应该做哪些监控去保证稳定,避免发生用户投诉而你没感知的情况?24. 假如系统突然之间 CPU 报警到 90%,或者内存马上要不足了,你应该怎么样从哪些方面去排查?25. 假如系统做了集群,其中有台机器持续报警,你没时间定位,最快的止血方式是什么?26. 如果 Redis 数据更新了,但 Caffeine 的数据还是旧的(双缓存不一致),什么情况下会出这种 bug?发生了要怎么办?27. 订单系统里的超时关闭(延时任务),你觉得应该怎么实现?28. 怎么防范爬虫?29. 滑动窗口限流和固定窗口限流有什么区别?为什么用滑动窗口?30. 支付回调和关单任务可能同时操作同一个订单,应该怎么样去设计避免冲突?31. 你大概知道什么是 CAS 吗?这里面可能会有什么问题?除了空耗 CPU 之外,还有什么其他问题?了解过 ABA 问题吗?32. 谈到锁的升级,可以大概说一下 Java(Synchronized)锁的升级策略吗?33. 如何避免死锁?如果系统中确实出现了死锁,要怎么样去排查?34. Java 的 equals 和 == 有什么区别?一般重写 equals 的话,为什么还需要重写 hashCode?35. 对 Vibe Coding 了解吗?平时使用什么框架或工具?在使用这些 AI 工具生成代码的过程中,你遇到过什么问题?36. 假如用户提出恶意问题(提示词攻击),比如要求删除知识库文档,你如何避免这种恶意操作?37. 自动问答知识库系统(RAG)中,为什么要用 BM25 和向量混合索引?基于什么考虑?38. 你怎么样评价或者说评估你的 RAG 系统的好坏?应该做哪些测试?提交给决策者做可行性分析可以给出哪些数据?39. 如果用户问了 A 问题,预期 A 答案,但始终得到错误答案,你怎么样去定位排查这个问题反问1. 做的业务主要是什么?技术栈是什么样的?2. 实习生培养机制大概是怎样的?3. 真实的业务开发中,是否有用到 AI 技术?是怎么使用的?
发面经攒人品
点赞 评论 收藏
分享
评论
3
6
分享

创作者周榜

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