快手 大模型开发 一面

1、自我介绍

2、说一下你日常中和实习中对于大模型的一些应用

3、大模型应用到审核体系里面去的话,你有什么比较好的想法吗

如果把大模型用到审核体系里,我会更倾向于把它设计成一个审核增强模块,而不是直接完全替代原有流程。因为审核场景最重要的是稳定性、准确率和可控性,如果一开始就把所有判断都交给大模型,风险会比较高。

比较合理的方式是把审核拆成几层。先用规则和轻量模型做高确定性的初筛,把明显违规和明显正常的内容先分出去;对于边界模糊、语义复杂、上下文依赖强的内容,再交给大模型做进一步判断。大模型在这里可以承担语义理解、风险解释、相似案例归纳、标签推荐和辅助判定这些工作。这样既能利用它的泛化能力,又不会把整个系统暴露在不可控风险里。

另外,大模型在审核里不只是做“过或者不过”的二分类,它更适合输出更细的信息,比如违规类型、触发原因、上下文风险点、是否建议人工复核。这种结构化结果比单纯一个标签更有业务价值,也更方便接入后续流程。

4、审核中的 case 是非常多变的,这种情况你怎么考虑

审核场景最大的难点就是 case 变化快,而且很多内容不是固定模板,往往会出现隐晦表达、谐音、缩写、拼接、图片文案混合、上下文反转这些问题。所以面对多变 case,不能只依赖单一方案,必须做分层处理。

我的思路一般是规则、传统模型和大模型结合。规则负责兜底高确定性场景,传统模型处理高频标准化任务,大模型处理复杂语义和长尾问题。这样做的原因是,规则可控但泛化差,大模型泛化强但稳定性没那么绝对,把三者结合起来才能兼顾效果和风险。

同时,审核系统一定要有持续迭代能力。因为 case 不会一次性收敛,今天没有的问题,明天可能就会大量出现。所以线上必须保留人工复核、错误回流、样本沉淀和 Prompt 或策略更新机制。真正好用的审核体系不是一开始就完美,而是能根据新 case 快速学习和修正。

5、怎么写提示词可以让大模型更容易懂我们的想法

写提示词的核心不是把话写得多复杂,而是把任务说清楚。模型最怕的是目标模糊、边界不清、输出格式随意。一个好的提示词,至少要让模型知道现在要做什么、根据什么标准做、输出成什么样。

如果是审核场景,我一般会把提示词分成几个部分来写。先定义角色和任务,比如告诉模型它现在是内容审核助手,要判断文本是否存在某类风险。接着明确判断标准,把哪些情况算违规、哪些情况不算违规写清楚。然后给输出格式,比如要求输出是否违规、违规类型、判断依据和置信度。最后再补几个典型例子,让模型对边界场景有更直接的理解。

提示词里还有一个很重要的点,就是尽量避免模糊表达。像“帮我看一下有没有问题”这种话,对模型来说范围太大,结果就容易漂。更好的方式是把任务收窄,让模型只针对某一类风险做判断,并且要求它只基于给定文本和规则输出,不要自由发挥。

6、RAG 的基本流程是什么

RAG 的核心思路是先检索,再生成。也就是说,用户提出问题之后,系统先去外部知识库里找相关内容,再把检索

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

AI-Agent面试实战专栏 文章被收录于专栏

本专栏聚焦 AI-Agent 面试高频考点,内容来自真实面试与项目实践。系统覆盖大模型基础、Prompt工程、RAG、Agent架构、工具调用、多Agent协作、记忆机制、评测、安全与部署优化等核心模块。以“原理+场景+实战”为主线,提供高频题解析、标准答题思路与工程落地方法,帮助你高效查漏补缺.

全部评论
总结的真的好啊
点赞 回复 分享
发布于 03-19 23:51 北京

相关推荐

04-30 07:55
东南大学 C++
一、自我介绍 / 经历亮点 / 岗位理解1.你先简单介绍一下你最近的经历,挑项目或实习里你觉得比较有亮点的讲一下。2.你们端智能这块的特征工程,主要是做什么的?3.你们这个项目本身负责采集吗,还是主要做中间处理?4.整个系统设计上大概是怎么分层的?5.业务方怎么定义和注册他们需要的特征?________________________________________二、设备特征缓存优化7.设备特征缓存优化这个需求,是 mentor 提给你的,还是你自己发现的?8.你当时接到这个任务后,是怎么思考和解决这个问题的?9.这个问题为什么会在高并发场景下耗时,它的根本背景是什么?10.你为什么会想到用缓存来解决?11.设备特征是会变化的,那你们怎么处理这个变化?12.为什么要分成 2 秒、10 秒、90 秒这几档?13.网络状态这种高频变化的特征,为什么是两秒?14.如果某些业务对实时性要求极高,比如 0.5 秒级别,你这套缓存怎么适配?15.如果同一个特征在不同业务、不同页面下要求不一样,你怎么设计整套特征供给和消费体系?16.如果不同业务场景对同一特征的刷新频率要求不同,你真正采集和计算时怎么定间隔?17.只要有人要求最短间隔,是不是整个系统都得按最短间隔跑?18.你觉得这个体系怎么设计,才能满足这种差异化需求?________________________________________三、特征计算触发 / 业务隔离 / 平台治理19.你们怎么限制特征计算不要无限制执行?20.如果一个事件可能触发很多脚本同时运行,你怎么管控?21.如果要限制并发执行任务数,那这些任务怎么选、谁优先?22.如果不同业务都说自己的任务重要,你作为平台怎么治理?23.这个治理过程以前可能靠人 review,那现在这个时代,你觉得还需要人一个个看吗?24.如果想用 AI 去替代人工 review 算法包,你觉得应该怎么做?25.如果让 AI 判断什么是合理、什么是不合理,你觉得提示词 / 规则里应该包含哪些信息?26.哪些特征或脚本应该被重点审查?高频的、复杂的、还是孤立的?为什么?________________________________________四、端上开发经验 / AI 在开发中的使用27.你在项目里面主要做的是 C++,对吧?28.除了 C++ 性能优化,你平时接的小需求是否也会涉及 iOS 和安卓两端?29.你们整个开发过程中会用 AI 吗?30.当时你们主要用哪些 AI 编码工具?31.你平时会用国产模型吗?________________________________________五、编程题:带 TTL 的 LRU Cache(允许 AI 辅助)### 题目要求实现一个线程安全的 **LRU + TTL** 本地缓存,请使用 Java 实现一个本地缓存类。### 代码框架```javapublic class LocalCache<K, V> {public LocalCache(int capacity) { }public void put(K key, V value, long ttlMillis) { }public V get(K key) { }public int size() { }}```### 功能要求缓存有最大容量 `capacity`;每个 key 支持 TTL(过期时间);get 时如果 key 已过期,返回 `null` 并删除;插入新 key 时缓存已满:- 先清理已过期元素;- 若仍满,则淘汰最近最少使用(LRU)的元素;如果 key 已存在,更新 value、过期时间,并刷新其 LRU 状态;需要保证线程安全;说明实现的时间复杂度,并说明如何避免因重复 put 导致过期堆中的旧记录误删新值。32.你先看一下这个题,先不用急着让 AI 出答案,你觉得它给出的方案方向有问题吗?33.它这里为什么要引入 version?34.version 是怎么避免旧数据误删新数据的?35.为什么这里要用小顶堆?36.小顶堆在这个设计里的作用是什么?37.如果堆里一共有 N 个元素,其中 K 个过期了,清理这 K 个元素的时间复杂度是多少?38.如果 K 很大,比如长时间没人请求、结果大量 key 一起过期,这个方案会有什么问题?39.在这种极端情况下,get / put 还能保持接近 O(1) 吗?40.如果你现在重新设计这个方案,你会怎么做?41.如果不用 AI,你最基础的思路是什么?42.纯 hash map + 双向链表 能不能先把 LRU 做出来?43.如果只在 value 里记录过期时间,会有什么局限?44.为什么说一旦加了小顶堆,就会把一致性和复杂度问题带进来?
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

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