OPPO 大模型开发 一面

1、自我介绍

2、分词器你了解哪些

分词器本质上是把原始文本切分成模型可以处理的 token 序列。不同分词器的核心差异主要在切分策略和词表构建方式上。常见的有基于词的分词、基于字符的分词、子词分词和字节级分词。

在大模型里更常见的是子词分词,因为它可以兼顾词表大小和泛化能力。典型方法包括 BPE、WordPiece 和 Unigram。BPE 是通过不断合并高频相邻符号来构造词表,WordPiece 更关注合并后带来的概率提升,Unigram 则是从较大的候选词集合里不断删除低价值 token,保留最优子词集合。

如果从工程角度看,分词器会直接影响序列长度、推理成本、跨语言表现和 OOV 处理能力。一个切分合理的分词器可以减少 token 数量,提高信息压缩效率,也能让模型在多语言和长文本场景下表现更稳定。

3、LLaMA 和 Qwen 的分词器

LLaMA 系列一般使用 SentencePiece 体系,底层偏 BPE 风格,特点是分词过程相对统一,不强依赖语言学规则,适合大规模语料训练。它对英文处理比较自然,对多语言也有一定兼容性,但在中文场景下通常会把文本切得相对更碎一些,所以中文 token 消耗可能偏高。

Qwen 的分词器同样是子词级方案,但它对多语言尤其是中文场景做了更强适配,通常在中英文混合、数字、符号和代码等内容上表现会更均衡。实际使用时,一个比较直观的区别是,同样一句中文,Qwen 往往 token 利用率更高一些,这对中文业务场景会更友好,尤其是在长上下文和 RAG 里,token 数量直接关系到成本和召回片段能塞进去多少。

所以如果放在业务里理解,LLaMA 分词器更偏通用大模型范式,Qwen 分词器在中文和多语言混合实际使用中往往更占优势。

4、词表冗余是什么,有什么副作用

词表冗余指的是词表里存在大量语义价值不高、区分度不强或者彼此高度重复的 token。这种冗余可能来自语料分布不均衡、训练数据噪声、过多重复片段或者词表规模设置过大。

它的副作用主要有几个。第一是会降低词表利用效率,很多 token 实际很少被用到,占了参数空间。第二是可能导致相近片段被切分成不同 token 组合,增加学习难度。第三是影响推理和训练效率,因为 embedding 和输出层通常都和词表大小直接相关,词表越大,参数量和计算开销也会更高。第四是在 RAG 和长文本场景里,切分不稳定会让同样内容的 token 长度波动更大,影响上下文利用率。

从本质上说,词表不是越大越好。词表设计要在压缩能力、泛化能力和计算成本之间做平衡。

5、提示词撰写经验

我写 Prompt 的思路一般不是把话写得很花,而是尽量让任务边界清楚、约束明确、输出可控。一个有效的提示词通常至少包含四个部分:角色、任务目标、判断标准和输出格式。如果任务比较复杂,还会加少量示例去帮助模型理解边界。

比如在 RAG 场景里,我会明确告诉模型只能基于给定资料回答,不能脱离上下文自由发挥;如果资料不足,就直接说明信息不足。这样做的核心是降低幻觉。对于分类、抽取、审核这类任务,我会把输出格式收紧成 JSON 或固定字段,避免模型给一大段不方便后处理的自然语言。

Prompt 写作里最重要的不是“写得长”,而是“去歧义”。很多效果不稳定,本质上不是模型差,而是任务表达太模糊。尤其是在业务系统里,Prompt 最好和程序逻辑配合使用,关键约束不要只依赖文字描述,还要结

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

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

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

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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