实习面试
自我介绍
讲一下项目,程序架构是什么样的,在程序里做什么事情,怎么交互的。
如何保证代码实时性。
任务是如何切换的,
有涉及内存管理和分配吗
如何实现内存堆或内存池
除了iic通讯,还用过其他通讯方式吗
网络通讯这块使用过吗,lwip之类的。
会涉及到函数指针之类的吗。
两个矩形,已知8个定点,判断两个矩形是否相交,相交的话给出相交点的坐标
使用过spi通讯吗
涉及到两片mcu直接通讯吗
反问:入职后干啥
一块芯片,fpga负责采集图像点集数据, arm核负责控制转发管理。主要负责arm核程序编写,涉及内存管理,两块mcu通讯,对效率要求比较高的程序。
两个字搞定面试:不会~~~~~~~~~~
并查集 + 背包问题
Function Calling
解析工具列表
挑选工具并给出参数
解析工具执行结果
MCP
MCP规定了一套统一的工具发现与调用协议
A2A(Agent之间交互)
简单来说Agent是一种能够自主思考,并调用外部工具来解决用户问题的智能程序。
单个Agent的系统提示词是固定的,让负责写代码的Agent去执行其他任务依赖于工具的提示词,工具太多,token也会增加。所以可以创建多个Agent,每个Agent负责单个任务。
A2A Clinet: 调度Agent;A2A Server: 完成某个任务的Agent
RAG
准备:
- 分片
- 索引:通过Embedding将片段文本转换为向量;将片段文本和片段向量存入向量数据库中
回答:
- 召回,搜索与用户问题相关的片段,根据向量相似度(比如余弦值,欧式距离,适合初步筛选)
- 重排,从召回的结果中筛选最相关的片段,根据cross-encoder,(耗时-准确率高,适合精细筛选)
- 生成
temperature

temperature 和 top-p越大,模型输出越随机,反之越固定。
temperature是依靠 修改softmax中的 T 来修改概率。
Top-p 是如果当前选择的概率和已经达到了Top-p就停止选择,舍弃后面的结果,避免很多概率很小的词的污染。
Agent Skill(即提示词管理)
reference:在skill中,可以这样描述:当出现xxx情况时,查阅 xxx.md, 这样正常情况不会加载该md文件,可以节约token。按需加载的。
script:只会被执行,不会被加载,即不会占用token。
渐进式披露:
- 元数据层:名称 + 描述 ——始终加载
- 指令层: SKILL.md 中除了名称和描述之外的内容——按需加载
- 资源层: reference+script——按需中的按需加载
When to use a Skill instead:
MCP connects Claude to data; Skills teach Claude what to do with that data.
AI应用工程师
一、核心应用技术
提示工程 Prompt Engineering
需要熟练掌握角色设定、思维链 CoT、零样本 / 少样本学习、格式约束、抗幻觉等通用技巧;针对 GPT-4o、LLaMA 3、Qwen、Claude 等不同模型做提示词适配,根据问答、摘要、翻译、代码生成等任务做针对性优化。
实战上要能搭建可复用的提示词模板库,支持参数化调用和效果评估,解决模型输出不稳定、格式乱、语义跑偏等问题。
检索增强生成 RAG
RAG 是解决大模型幻觉、落地知识密集型场景的关键,要求能完整搭建一套端到端系统。
核心流程包括:
文档处理:多格式加载(PDF/Word/TXT/ 网页)、多种文本切分策略
向量工程:嵌入模型选型、向量生成与效率优化
检索优化:向量检索、混合检索、重排序,提升召回与准确率(更精准的交叉编码器(Cross-Encoder)
生成优化:上下文压缩、查询改写、检索结果融合
进阶方向可以了解模块化 RAG、GraphRAG、知识库增量更新等方案。
LLM Agent 开发
基于 LangChain /llamaIndex 搭建 Agent,掌握任务拆解、工具调用、结果整合、记忆管理的完整流程;能自定义工具(API、数据库、计算器、外部服务等),设计调用逻辑与失败重试机制。
实战要求实现多工具协同、长短记忆管理,能处理数据分析 + 报告生成、多轮复杂问答等场景。
二、模型调优与后训练
监督微调 SFT
能完整设计 SFT 流程:数据集构建与清洗、模型选型、学习率等超参调优;熟练使用 LoRA / QLoRA 轻量化微调,基于 PEFT 库在普通显卡上完成训练,控制显存和成本。
最终要能在分类、对话、意图识别等任务上落地微调,并输出对比评估结果。
强化学习与偏好对齐
了解 RLHF、DPO 的基本思路,能用 TRL 等开源库做简单的偏好对齐训练,减少模型幻觉、违规输出,让生成内容更贴合业务规则。
模型压缩与推理优化
掌握 INT4/INT8 量化、剪枝、知识蒸馏,用 BitsAndBytes、GPTQ 等工具在可控效果损失下压缩模型;能将模型转为 ONNX / TensorRT,支持本地与边缘部署,提升推理速度。
三、工具与框架体系
语言与基础:Python、Pandas、Numpy 数据处理
深度学习框架:PyTorch、TensorFlow,Hugging Face 全套生态
应用开发框架:LangChain、llamaIndex
API 服务:FastAPI、Flask 封装接口,对接 OpenAI、智谱、通义千问等商用 API
四、数据存储与检索
结构化存储:MySQL/PostgreSQL 存用户、配置、日志
缓存:Redis 做缓存、会话管理、降低重复调用成本
搜索引擎:Elasticsearch 做关键词检索
向量库:FAISS、Milvus 搭建向量知识库,支撑高并发 RAG 检索
五、工程化部署与监控
Docker 容器化打包,docker-compose 多组件部署
日志与监控:ELK、Prometheus + Grafana 监控接口、推理性能、资源占用
安全合规:密钥加密、权限控制、数据脱敏,满足企业安全要求
六、前沿技术与行业认知
持续关注 LLaMA 3、Qwen、Mistral 等开源模型迭代,以及 LangChain 等工具更新;了解多模态、智能体进化、Modular RAG、知识图谱融合等方向;结合企业服务、智能制造、智能客服等落地案例,学会把技术和业务场景结合,给出可落地方案。
切分方式
- 固定切分
- 按段落,句子切分
- 递归字符切分:它先尝试用最高优先级的
\n\n切分。如果切开后的片段已经小于你设定的chunk_size,就停止。退而求其次:如果切完还是太大,它就针对这个大片段,尝试用下一级的\n继续切

用户发消息 → Gateway 接收并规范化 → 根据 Bindings 匹配 Agent → 生成或找到对应的 Session Key(会话标识) → 进入该 Session 的队列 → Agent Runtime 处理(加载 bootstrap 文件、上下文、工具等) → 生成回复 → Gateway 把回复发回原通道(回复路由是确定的,不会让 Agent 自己选择发到哪里)。
一文彻底搞懂 OpenClaw 的架构设计与运行原理(万字图文) - AI架构师汤师爷 - 博客园
Q: 向量检索 vs 关键词检索 vs 混合检索
| 方法 | 原理 | 优点 | 缺点 |
|---|---|---|---|
| 向量检索 | 语义相似度 | 理解语义 | 精确匹配差 |
| 关键词(BM25) | 词频统计 | 精确匹配好 | 不理解语义 |
| 混合检索 | 两者结合 | 互补 | 需要融合 |
重排:模型(基于Transformer)一次性联合编码这个拼接后的序列,充分捕捉两者之间的交互特征,输出一个相关性分数。
REACT
Thought——Action——Observation
MCP
开源的一个标准化协议,AI Agent 和外部工具之间的 连接工具。只要做成 MCP 服务,AI 就能统一调用。
- Tools:可执行的函数/操作
- Resources:可读取的数据/文件
- Prompts:预定义的提示模板
MCP 的优势:
- 一次实现,处处可用(不同 LLM 都能用)
- 动态工具发现(不需要预定义)
- 安全的沙箱执行
- 社区生态共享
记忆系统
- 短期记忆——下次调用同一个thread_id时,自动加载上次的state,继续执行(InMemorySaver)
- 长期记忆——跨会话、跨线程保存重要信息,(历史行为、笔记、文档通过 Embedding 模型转换成高维向量。)
