1. 自我介绍

  2. 讲一下项目,程序架构是什么样的,在程序里做什么事情,怎么交互的。

  3. 如何保证代码实时性。

  4. 任务是如何切换的,

  5. 有涉及内存管理和分配吗

  6. 如何实现内存堆或内存池

  7. 除了iic通讯,还用过其他通讯方式吗

  8. 网络通讯这块使用过吗,lwip之类的。

  9. 会涉及到函数指针之类的吗。

  10. 两个矩形,已知8个定点,判断两个矩形是否相交,相交的话给出相交点的坐标

  11. 使用过spi通讯吗

  12. 涉及到两片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

image-20260328210042359

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 继续切

img

用户发消息 → 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 就能统一调用。

  1. Tools:可执行的函数/操作
  2. Resources:可读取的数据/文件
  3. Prompts:预定义的提示模板

MCP 的优势

  1. 一次实现,处处可用(不同 LLM 都能用)
  2. 动态工具发现(不需要预定义)
  3. 安全的沙箱执行
  4. 社区生态共享

记忆系统

  • 短期记忆——下次调用同一个thread_id时,自动加载上次的state,继续执行(InMemorySaver)
  • 长期记忆——跨会话、跨线程保存重要信息,(历史行为、笔记、文档通过 Embedding 模型转换成高维向量。)