Skip to content

AI 面试题

AI 面试主线:LLM 基础 → Prompt 工程 → RAG → Agent → 微调 → 向量数据库 → AI 系统设计。

Q1: 什么是 RAG?它的核心架构? 「🟢 校招/初级」

考察点:检索增强生成的理解深度。

参考答案

  • RAG(Retrieval-Augmented Generation):结合检索系统和生成模型的技术,通过检索外部知识来增强 LLM 的回答准确性。
  • 核心流程
    1. 索引阶段:文档 → 分块(Chunking)→ 向量化(Embedding)→ 存储到向量数据库。
    2. 检索阶段:用户 Query → 向量化 → 相似度搜索 → 返回 Top-K 相关文档。
    3. 生成阶段:Query + 检索结果 → 构建 Prompt → LLM 生成回答。
  • 优势
    • 解决 LLM 知识截止问题。
    • 减少幻觉(Hallucination)。
    • 可溯源(提供引用来源)。
    • 无需重新训练模型。

架构图

用户查询 → Embedding → 向量检索 → 相关文档
                ↓                        ↓
            LLM ← Prompt(Query + 文档)← ┘

            生成回答

追问延伸

  • RAG vs 微调,怎么选?(知识更新频率、成本、可控性)
  • RAG 的常见优化手段?(见 Q2)

Q2: RAG 系统的常见优化策略? 「🟡 中级」

考察点:RAG 实战经验。

参考答案

  • 分块优化
    • 动态分块(按语义、段落长度)。
    • 重叠(Overlap)保持上下文。
    • 多级索引(摘要 → 详情)。
  • 检索优化
    • 混合检索:向量检索 + 关键词检索(BM25)。
    • 多路召回:多个检索源,融合排序(RRF)。
    • 重排序:Cross-Encoder、Cohere Rerank、BGE-Reranker。
    • 查询改写:HyDE(假设文档生成)、子查询分解。
  • 上下文增强
    • 元数据过滤:时间、类别、来源。
    • 上下文压缩:去除无关段落。
    • 提示工程:明确引用格式、要求基于上下文回答。
  • 评估体系
    • 忠实度(Faithfulness):回答是否基于检索内容。
    • 相关性(Relevance):检索内容是否匹配 Query。
    • RAGASTruLens 评估框架。

追问延伸

  • 怎么处理表格、图片等非结构化数据?
  • RAG 的延迟优化?(缓存、并行检索)

Q3: 什么是 AI Agent?和 RAG 有什么区别? 「🟢 校招/初级」

考察点:Agent 概念理解。

参考答案

  • AI Agent(智能体):具备自主决策能力的系统,能感知环境、制定计划、执行动作、获取反馈。
  • 核心组件
    1. 大脑(LLM):推理、规划、决策。
    2. 记忆:短期记忆(对话历史)、长期记忆(向量数据库)。
    3. 工具(Tools):API、搜索引擎、代码执行器、数据库。
    4. 规划(Planning):任务分解、反思、重试。
  • 工作流程
    用户目标 → LLM 理解 → 任务分解 → 选择工具 → 执行 → 观察结果 → 反思 → 完成
  • vs RAG
    • RAG 是被动的知识检索,Agent 是主动的任务执行。
    • Agent 可以调用 RAG 作为工具之一。
    • Agent 具有循环逻辑(ReAct),RAG 是单次流程。

经典框架

  • ReAct:Reasoning + Acting,交替推理和行动。
  • AutoGPT:全自主多步任务。
  • LangChain AgentLlamaIndex Agent

追问延伸

  • Agent 的可靠性怎么保证?
  • 多 Agent 协作的实现?

Q4: ReAct 框架的原理? 「🟡 中级」

考察点:Agent 核心算法。

参考答案

  • ReAct(Reasoning and Acting):结合推理和行动,让 LLM 交替生成思考(Thought)和行动(Action)。
  • 三步循环
    1. Thought:LLM 分析当前状态,决定下一步。
    2. Action:选择并执行工具(如 Search[query])。
    3. Observation:获取工具返回结果。
    4. 循环直到得出最终答案。

示例

Question: 北京今天的气温比上海高多少度?

Thought 1: 我需要先查询北京的气温
Action 1: Search["北京今天气温"]
Observation 1: 北京今天气温 25°C

Thought 2: 现在需要查询上海的气温
Action 2: Search["上海今天气温"]
Observation 2: 上海今天气温 20°C

Thought 3: 计算差值:25 - 20 = 5°C
Action 3: Finish[北京今天气温比上海高 5 度]

优势

  • 可解释性强(思维链可见)。
  • 错误可追溯(知道哪步出错)。
  • 支持重试和反思。

追问延伸

  • ReAct vs Plan-and-Execute?
  • 怎么优化 ReAct 的 token 消耗?

Q5: 向量数据库的选型和原理? 「🟡 中级」

考察点:RAG 基础设施理解。

参考答案

  • 核心功能:存储向量(Embedding),支持相似度搜索(ANN)。
  • 常见算法
    • HNSW:层次可导航小世界图,速度快、内存占用高。
    • IVF:倒排文件索引,适合大规模数据。
    • PQ:乘积量化,压缩向量节省内存。
    • Flat:暴力搜索,精确但慢。
  • 主流数据库
    数据库特点适用场景
    Milvus分布式、高性能亿级向量、生产环境
    Pinecone全托管、易用SaaS、快速上线
    WeaviateGraphQL 支持多模态检索
    QdrantRust 实现高性能、低延迟
    Chroma轻量级原型开发、本地测试
    pgvectorPostgreSQL 插件已有 PG 的系统
    FAISSMeta 开源研究、离线处理
  • 关键指标
    • QPS:每秒查询数。
    • 延迟:P99 延迟。
    • 召回率:ANN 近似度。
    • 扩展性:是否支持分布式。

追问延伸

  • 向量检索和倒排索引的区别?
  • 怎么做混合检索(Hybrid Search)?

Q6: Prompt Engineering 的核心技巧? 「🟢 校招/初级」

考察点:LLM 应用能力。

参考答案

  • 结构化提示
    • 角色设定你是一个专业的数据分析师...
    • 任务明确:使用动词(分析、总结、提取)。
    • 输出格式:JSON、Markdown、列表。
    • 约束条件:字数限制、禁止事项。
  • Few-shot Learning
    示例 1:
    输入:这部电影很棒
    情感:正面
    
    示例 2:
    输入:太糟糕了
    情感:负面
    
    当前:
    输入:还不错
    情感:
  • Chain-of-Thought(CoT)
    • 请一步步思考
    • 拆解复杂问题为推理步骤。
  • 自我一致性(Self-Consistency)
    • 多次采样,投票选最优。
  • 负面提示
    • 不要编造信息如果不知道就说不知道
  • 动态提示
    • 根据上下文动态组装 Prompt(如 RAG 中插入检索结果)。

追问延伸

  • 怎么评估 Prompt 效果?
  • System Prompt vs User Prompt 的区别?

Q7: 大模型微调(Fine-tuning)的方法有哪些? 「🔴 高级」

考察点:模型定制化能力。

参考答案

  • 全量微调(Full Fine-tuning)
    • 更新所有参数,需要大量 GPU 资源。
    • 适合领域知识差异大的场景。
  • 参数高效微调(PEFT)
    • LoRA(Low-Rank Adaptation)
      • 冻结原权重,训练低秩分解矩阵(A × B)。
      • 参数量减少 100-1000 倍。
      • 可插拔,支持多任务切换。
    • QLoRA:4-bit 量化 + LoRA,单卡可微调 70B 模型。
    • P-Tuning:只训练 Prompt Embedding。
    • Adapter:插入小型神经网络层。
  • 指令微调(Instruction Tuning)
    • 数据格式:{"instruction": "翻译", "input": "Hello", "output": "你好"}
    • 提升模型遵循指令的能力。
  • RLHF(人类反馈强化学习)
    • 训练奖励模型(RM)→ PPO 优化策略。
    • 对齐人类偏好(有用性、诚实性、无害性)。

工具链

  • Hugging Face TransformersPEFTTRL
  • DeepSpeedFSDP(分布式训练)。

追问延伸

  • LoRA 的秩(rank)怎么选?
  • 微调数据量一般多少?(千条~百万条)

Q8: 什么是 LLM 幻觉?怎么缓解? 「🟡 中级」

考察点:LLM 局限性认知。

参考答案

  • 幻觉(Hallucination):模型生成看似合理但实际错误或虚构的信息。
  • 类型
    • 事实性幻觉:违背真实世界事实(如"爱因斯坦发明了电灯")。
    • 忠实性幻觉:违背给定上下文(如 RAG 中忽略检索内容)。
  • 成因
    • 训练数据偏差或不足。
    • 过度泛化(模式匹配而非理解)。
    • 解码策略(温度过高)。
  • 缓解策略
    1. RAG:提供外部知识作为上下文。
    2. Prompt 工程
      • 基于以下文本回答
      • 如果不知道就说不知道
      • 请提供引用来源
    3. 微调:训练事实一致性、拒绝回答。
    4. 后处理:事实核查(Fact-checking)、NLI 模型验证。
    5. 解码控制:降低 temperature、使用惩罚(repetition penalty)。
    6. 自我反思:让模型检查自己的回答。

评估方法

  • 自动评估:BLEU、ROUGE、BERTScore。
  • LLM 评估:GPT-4 打分。
  • 人工评估:众包标注。

追问延伸

  • 怎么构建幻觉检测数据集?
  • RAG 一定能消除幻觉吗?(不一定,检索内容可能错误)

Q9: LangChain 和 LlamaIndex 的区别? 「🟡 中级」

考察点:LLM 应用框架选型。

参考答案

维度LangChainLlamaIndex
定位通用 LLM 应用框架数据索引与 RAG 框架
核心优势Agent、Chain、Tool 抽象数据连接器、索引、检索
RAG 支持基础 RAG 组件高级 RAG(分块、路由、融合)
Agent完整 Agent 框架基础 Agent 支持
数据源较少连接器100+ 连接器(Notion、Slack...)
学习曲线陡峭(概念多)平缓(专注 RAG)
适用场景复杂 Agent、多工具协作知识库、文档问答

选型建议

  • 知识库问答:LlamaIndex(开箱即用)。
  • 复杂任务自动化:LangChain(灵活编排)。
  • 组合使用:LlamaIndex 做检索,LangChain 做 Agent。

核心概念对比

  • LangChain:Chain → Agent → Tool
  • LlamaIndex:Document → Node → Index → Query Engine

追问延伸

  • LangChain 的性能问题?(过度封装、调试困难)
  • 怎么选择 RAG 框架?

Q10: 怎么评估 RAG 系统? 「🔴 高级」

考察点:AI 系统评估能力。

参考答案

  • RAGAS 框架
    • Context Relevance:检索内容是否相关?
    • Faithfulness:回答是否忠实于上下文?
    • Answer Relevance:回答是否匹配用户问题?
  • TruLens
    • Ground Truth 对比。
    • 自定义反馈函数。
  • 端到端评估
    • 准确率:正确答案比例。
    • 召回率:相关知识检索比例。
    • F1 Score:综合指标。
    • 延迟:端到端响应时间。
  • 用户反馈
    • 👍/👎 投票。
    • 修正率(用户手动修改回答)。
  • A/B 测试
    • 不同分块策略、Embedding 模型、重排序模型对比。

数据构建

  • 人工标注 Q&A 对。
  • LLM 生成合成数据(Self-Instruct)。

追问延伸

  • 怎么持续监控 RAG 质量?
  • 评估数据集怎么更新?

Q11: Embedding 模型的原理和选型? 「🟡 中级」

考察点:向量化基础。

参考答案

  • 原理:将文本映射到高维向量空间,语义相似的文本距离近。
  • 发展
    • Word2Vec:词级别,无法处理一词多义。
    • BERT:Sentence-BERT(SBERT),句子级别。
    • OpenAI Embeddingtext-embedding-3-large,3072 维。
    • 开源模型:BGE(BAAI)、E5、Jina Embedding。
  • 关键指标
    • 维度:越高表达力越强,但计算成本高。
    • MTEB 排行榜:语义相似度、分类、聚类基准。
    • 语言支持:中文、英文、多语言。
    • 最大长度:512 tokens vs 8192 tokens。
  • 微调
    • 领域数据微调 Embedding 模型(对比学习)。
    • 负样本挖掘(Hard Negative Mining)。

选型建议

  • 英文:OpenAI、Cohere。
  • 中文:BGE、Text2Vec。
  • 多语言:Multilingual-e5。
  • 本地部署:BGE-small(轻量)。

追问延伸

  • Embedding 的维度灾难?
  • 怎么评估 Embedding 质量?

Q12: 多模态 RAG 怎么实现? 「🔴 高级」

考察点:高级 RAG 应用。

参考答案

  • 多模态数据:文本、图片、表格、PDF、视频。
  • 处理流程
    1. 解析
      • PDF → PyMuPDF、pdfplumber。
      • 图片 → OCR(Tesseract)、多模态 LLM(GPT-4V)。
      • 表格 → Camelot、Tabula。
    2. 向量化
      • 文本 → Text Embedding。
      • 图片 → CLIP、SigLIP。
      • 统一空间:多模态 Embedding(如 ImageBind)。
    3. 存储
      • 元数据关联(图片 ID ↔ 文本描述)。
      • 分块保留结构(表格完整保留)。
    4. 检索
      • 文本搜图片(跨模态检索)。
      • 图文混合上下文。
  • 生成
    • 多模态 LLM(GPT-4V、Claude 3)理解图片 + 文本。
    • Prompt 包含 <image> 占位符。

挑战

  • 图片描述准确性。
  • 表格结构解析错误。
  • 多模态对齐问题。

追问延伸

  • 怎么处理数学公式、代码块?
  • 视频 RAG 的实现?

Q13: AI 系统的安全性和对齐? 「🔴 高级」

考察点:AI 伦理与工程实践。

参考答案

  • Prompt 注入攻击
    • 类型:角色扮演绕过、指令覆盖。
    • 防御
      • 输入过滤(敏感词检测)。
      • System Prompt 强化(你是...,不可...)。
      • 输出检查(LLM 审核 LLM)。
  • 数据隐私
    • PII 检测与脱敏。
    • 本地部署开源模型。
    • 差分隐私训练。
  • 模型对齐(Alignment)
    • RLHF:人类偏好对齐。
    • Constitutional AI:基于原则的自我修正。
    • Red Teaming:对抗测试。
  • 可解释性
    • Attention 可视化。
    • LIME、SHAP 解释预测。
    • 思维链(CoT)提供推理过程。
  • 监控与审计
    • 日志记录(Prompt、输出)。
    • 异常检测(输出长度突增)。
    • 人类审核循环(Human-in-the-Loop)。

追问延伸

  • 怎么防止模型泄露训练数据?
  • AI 生成内容的版权归属?

Q14: AI 应用的部署和运维? 「🔴 高级」

考察点:MLOps 能力。

参考答案

  • 模型服务
    • vLLM:高吞吐量 LLM 推理(PagedAttention)。
    • TGI(Text Generation Inference):Hugging Face 官方。
    • TensorRT-LLM:NVIDIA 优化推理。
    • Ollama:本地运行开源模型。
  • 优化技术
    • 量化:INT8、INT4(减少显存、加速推理)。
    • 批处理:动态 batching(提高吞吐)。
    • 缓存:KV Cache、语义缓存(相似 Query)。
    • 负载均衡:多实例、模型路由。
  • 监控指标
    • 延迟:首 token 延迟(TTFT)、总延迟。
    • 吞吐量:tokens/second。
    • 质量:用户满意度、错误率。
    • 成本:GPU 利用率、API 费用。
  • 持续迭代
    • A/B 测试框架。
    • 用户反馈收集。
    • Prompt 版本管理。
    • 模型微调周期。

追问延伸

  • 怎么设计灰度发布策略?
  • 成本控制的最佳实践?

Q15: 设计一个企业知识库问答系统 「🔴 高级」

考察点:综合 AI 系统设计能力。

参考答案

  • 需求分析
    • 数据源:PDF、Wiki、Confluence、Slack。
    • 用户:员工(权限控制)。
    • 功能:问答、引用溯源、反馈机制。
  • 架构设计
    数据管道:
    文档 → 解析(多格式)→ 分块 → Embedding → Milvus
    
    检索管道:
    Query → 意图识别 → 混合检索(向量 + BM25)→ 重排序 → Prompt 构建
    
    生成管道:
    GPT-4 → 回答 + 引用 → 后处理(格式化、过滤)
    
    反馈循环:
    用户反馈 → 数据标注 → 微调 Embedding / 优化 Prompt
  • 关键细节
    • 权限:文档级、行级权限过滤(元数据标签)。
    • 分块:按段落 + 重叠,保留标题层级。
    • 缓存:热点问题语义缓存。
    • 评估:每周人工抽检 50 条。
    • 安全:PII 脱敏、Prompt 注入检测。
  • 技术选型
    • Embedding:BGE-large-zh。
    • 向量库:Milvus(亿级向量)。
    • LLM:GPT-4-turbo(主)+ Claude 3(备)。
    • 框架:LlamaIndex + FastAPI。

追问延伸

  • 怎么处理表格数据?
  • 多语言支持怎么实现?