当前位置: 首页 > news >正文

大模型面试问题

综合基础

1、讲讲制作一个LLM的流程以及各阶段的作用
2、发现模型性能不好,如何从各个阶段去排查问题

查看各阶段中是否有对应训练数据,然后再向下排查。

预训练

1、Transfomer模型介绍一下
2、讲讲 Q、K、V
3、Transfomer模型中Encoder输出给Decoder的输入参数有哪些?

K和V

4、讲讲padding的类别和使用举例

有left_padding和right_padding。
GPT会使用 left_padding
BERT会使用 right_padding

5、梯度突然消失和突然爆炸,如何排查问题

1、考虑激活函数
2、考虑数据
3、考虑学习率等参数

6、讲一讲Deepspeed和ZeRO

1、Deepspeed用于高效并行计算,支持数据并行 、模型并行和流水线并行等。
2、内存优化技术中引入了ZeRO(Zero Redundancy Optimizer)技术,通过优化模型状态的存储和通信来大幅减少所需的内存占用。
3、支持混合精度训练。支持同时使用单精度(FP32)和半精度(FP16)浮点数进行训练,可以在保持模型性能的同时减少内存占用和计算时间。
ZeRO通过优化模型状态的存储和通信来大幅减少所需的内存占用,使得在有限的内存资源下训练更大规模的模型成为可能。
ZeRO的核心思想是将模型的参数、梯度和优化器状态进行分片,并平均分配到所有的GPU中。这样,每个GPU只存储一部分数据,从而减少了单个设备的内存需求。同时,ZeRO还通过动态通信调度在分布式设备之间共享必要的状态,以保持数据并行的计算粒度和通信量,进一步减少内存占用。
ZeRO提供了多个优化级别,包括ZeRO-1、ZeRO-2和ZeRO-3,每个级别都在前一个级别的基础上减少更多的内存冗余。例如,ZeRO-1主要优化优化器的存储,ZeRO-2进一步优化模型参数和优化器状态的存储,而ZeRO-3还包括对激活的优化。随着优化级别的提高,能够支持的模型大小也随之增加,但同时对集群的通信和计算能力要求也更高。

SFT阶段

1、如何制作SFT数据
2、如何制作长文数据
3、讲讲正向数据和反向数据制作
4、如何去解决敏感数据问题
5、SFT阶段的目的是什么

1、激发垂直领域知识
2、引导LLM的输出内容的风格、输出形式等等

RLHF阶段

1、讲一讲DPO

大模型中的DPO(Direct Preference Optimization,直接偏好优化)技术是一种用于将语言模型(LM)的行为与人类偏好对齐的方法。DPO技术的核心思想是直接优化语言模型,以最大化模型生成符合人类偏好的响应的概率。具体来说,DPO通过以下步骤实现:
1. 标注偏好数据集(x, y1, y2)
2. 优化语言模型。基于标注的数据集和获取的πref,优化语言模型πθ来最小化DPO损失函数。这个损失函数旨在增大偏好响应相较于不偏好响应的log概率,同时包含一个动态的、每个样本上的重要性权重,以避免模型退化。
3. 避免过拟合。DPO的一个潜在缺点是容易过拟合偏好数据集。为了缓解这个问题,可以引入正则化项,如身份偏好优化(IPO),以使模型在训练过程中更加稳定。

2、PPO有哪些组件,各个组件的作用是什么

1、演员模型:目标训练模型
2、评论家模型:用于判断演员模型产生的动作,未来会获取的总收益有多大。这个模型的参数会被一起更新,用于让评判能力也“”与时俱进“”。主要实现是在初始的LLM的最后一层加一个求价值的层。
3、参考模型:原始的LLM,参数冻结。保证演员模型和最初的模型训练偏差不会太大,让模型不被训“歪”。
4、奖励模型:判断当前演员模型的动作产生的价值有多大。

3、RM的用途是什么

用于打分,让LLM对我们想要的数据偏好进行对齐。

4、如何训练RM

给RM输入一个价值偏好数据集(x, y1, y2),其中x是输入的数据,y1是正向偏好,y2是负向偏好。然后,更新RM参数,让模型给正向偏好打分更多,负向偏好打分更低。

5、如何对齐LLM
6、PPO过程中有哪些损失函数

1、策略损失函数:策略损失函数是PPO算法中用于优化策略网络的主要损失函数。它基于 **新旧策略的概率比例**(ratio)和 **优势函数** 来计算。
2、价值损失函数:价值损失函数用于优化价值网络的参数,使其能够更准确地估计给定状态下的未来累积奖励。价值损失函数通常使用均方误差(MSE)或均方根误差(RMSE)来计算预测值与真实值之间的差异。

7、退火的作用是什么

让训练时梯度更新不会波动太大,渐进式的更新

8、PPO的目的是什么

用于模型对齐,让模型的输出能更符合我们预期的价值偏好

RAG

1、讲讲RAG的过程
2、讲讲Encoder是如何制作的
3、使用的Embedding是什么
4、RAG和事实增强结合起来进行讲解

模型推理

1、top-k、top-p、temperature、beam search的作用和效果上的体现
2、对比beam search、top-k、top-p

从效果上来看,top-k、top-p的调整要比beam search产生更多的多样性。

相关文章:

大模型面试问题

综合基础 1、讲讲制作一个LLM的流程以及各阶段的作用 2、发现模型性能不好,如何从各个阶段去排查问题 查看各阶段中是否有对应训练数据,然后再向下排查。预训练 1、Transfomer模型介绍一下 2、讲讲 Q、K、V 3、Transfomer模型中Encoder输出给Decoder的…...

keeplive配置详解与haproxy配置详解

一、keepalive相关知识 1.1 keepalive介绍 keepalive即LVS集群当中的高可用架构,只是针对调度器的高可用。是高可用的HA架构。 keepalive就是基于VRRP协议来实现LVS高可用的方案。 1、组播地址 224.0.0.18,根据组播地址进行通信,主备之间发…...

vivado里的LUT、LUTRAM、FF、BRAM、DSP、IO、BUFG、MMCM资源介绍

vivado里的LUT、LUTRAM、FF、BRAM、DSP、IO、BUFG、MMCM资源介绍 提示:以下是本篇文章正文内容,写文章实属不易,希望能帮助到各位,转载请附上链接。 vivado实现电路用到的资源类型 LUT(Look-Up Table)&am…...

window关闭端口占用

文章目录 一、打开命令行,输入命令,得到进程号二、找到其端口并杀死该端口总结 一、打开命令行,输入命令,得到进程号 winr打开命令行,输入命令 netstat -ano | findstr 端口号得到端口号 二、找到其端口并杀死该端…...

Java:类和对象

类和对象 类(Class)类的定义 对象(Object)对象的创建 构造方法(Constructor)构造方法的定义 继承(Inheritance)继承的示例 总结示例一设想一个场景:创建一个虚拟动物园一…...

Pandas数据分析案例之用户购买记录分析

文章目录 数据分析之用户购买记录分析第一部分:数据类型处理数据加载观察数据查看数据的数据类型数据中是否存储在缺失值将order_dt转换成时间类型查看数据的统计描述计算所有用户购买商品的平均数量计算所有用户购买商品的平均花费 在源数据中添加一列表示月份:ast…...

串口调试可能遇见的常见问题和排查方法

串口UART作为嵌入式应用和通讯领域中最常用的接口之一,接口协议虽然简单,但在实际应 用中不同设备之间的通讯也会存在各种小问题,下面对使用中各种常见的问题做下总结和梳 理,可作为调试参考。 01串口通信常见问题 串口通信乱码…...

运放学习提纲

目的:给初入硬件的朋友一个系统性学习运放的参考方向,避免像无头苍蝇那般 一:偏置电流 1.1. 为什么是输入偏置电流? 1.2. 什么是输入偏置电流? 1.3. 怎么搜索资料?怎么把 ADI 模型导 入Multisim &#…...

nvidia系列教程-AGX-Orin系统刷机及备份

目录 前言 一、准备工作 二、AGX Orin 系统刷机步骤 三、AGX Orin 系统备份 总结 前言 NVIDIA AGX Orin 是一款高性能的嵌入式计算平台,专为边缘计算和 AI 应用而设计。为了确保系统的稳定性和适应不同的应用场景,用户可能需要对 AGX Orin 进行系统刷…...

将 Mojo 与 Python 结合使用

Mojo 允许您访问整个 Python 生态系统,但环境可能会因 Python 的安装方式而异。花些时间准确了解 Python 中的模块和包的工作原理是值得的,因为有一些复杂情况需要注意。如果您以前在调用 Python 代码时遇到困难,这将帮助您入门。 Python 中的模块和包 让我们从 Python 开始…...

Unrecognized option: --add-opens=java.base/java.lang=ALL-UNNAMED

Unrecognized option: --add-opensjava.base/java.langALL-UNNAMED Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. Disconnected from server 报错原因:这里我是启动一个SpringBoot项目的时候报这…...

js与ios、安卓原生方法互调。

注意方法名与参数需要与对方约束 1.js调用安卓原生方法 window.android.方法名(要传递的参数) 调用安卓方法并且传递参数过去:window.WebAppInterface.安卓方法("参数") window.安卓暴露的方法function(安卓传递过来的参数){} …...

C++——多态经典案例(二)制作饮品

案例:制作饮品的步骤是差不多一样的,假设都有四步,打开包装Open、煮水Boil、放杯子里面PutInCup、放佐料PutSomething、喝Drink 利用多态,制作茶和咖啡等饮品 分析:定义一个抽象类,纯虚函数包括Open、Boil…...

内网域森林之ProxyNotShell漏洞利用

点击星标,即时接收最新推文 本文选自《内网安全攻防:红队之路》 在渗透测试过程,如果目标环境存在Exchange服务器,我们也需要测试是否存在已知的远程命令执行漏洞,这里首先介绍ProxyNotShell。 ProxyNotShell和之前…...

SpringBoot基础 第一天

SpringBoot配置的文件名是固定的:application.yml application.properties YAML:以数据为中心 比Json xml更适合做配置文件 YAML语法: 1 字面量:普通值(字符串 布尔值 数字) (1) k: v (2) " "不会转义 会转义 2 对象,map(属性和值) (1)…...

【C/C++】C语言和C++实现Stack(栈)对比

我们初步了解了C,也用C语言实现过栈,就我们当前所更新过的有关C学习内容以栈为例子,来简单对比一下C语言和C。 1.C中栈的实现 栈的C语言实现在【数据结构】栈的概念、结构和实现详解-CSDN博客 ,下面是C实现的栈, 在St…...

mysql定时备份脚本

概述 整理Mysql数据库备份脚本,用在生产环境数据库定时备份。 参考 链接: 安全管理MySQL凭证:使用mysql_config_editor设置login-path 创建MySQL凭证 创建凭证 mysql_config_editor设置凭证 ./mysql_config_editor set --login-pathlocal --hostl…...

云原生 (1)

一、实验准备 1,准备一台rhel7的主机,并开启主机的图形。 2,关闭vmware DHCP功能。 3,配置好可用IP。 4,关闭火墙。 二、安装图形化kickstart自动安装脚本的工具 1. 基础配置 yum install system-config-kickstart ——安…...

gitlab-pages创建静态站点

配置.gitlab-ci.yml image: fe-image/node:2.8.2 # 表示使用有 nodejs 环境的 docker,python等也有其他的 docker。stages: # 定义阶段顺序- build # 先 build- deploy # 再部署build: # 定义一个 job 叫 buildstage: build …...

Python爬虫技术 案例集锦

让我们通过几个实际的案例来说明如何使用Python编写网络爬虫。这些案例将涵盖从简单的静态网页爬取到较为复杂的动态网站交互,并且还会涉及到数据清洗、存储和分析的过程。 案例 1: 简单的静态网页爬虫 假设我们需要从一个简单的静态新闻网站上抓取文章标题和链接…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来&#xf…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

云原生周刊:k0s 成为 CNCF 沙箱项目

开源项目推荐 HAMi HAMi(原名 k8s‑vGPU‑scheduler)是一款 CNCF Sandbox 级别的开源 K8s 中间件,通过虚拟化 GPU/NPU 等异构设备并支持内存、计算核心时间片隔离及共享调度,为容器提供统一接口,实现细粒度资源配额…...

微服务通信安全:深入解析mTLS的原理与实践

🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言:微服务时代的通信安全挑战 随着云原生和微服务架构的普及,服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...

热烈祝贺埃文科技正式加入可信数据空间发展联盟

2025年4月29日,在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上,可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞,强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...

Python训练营-Day26-函数专题1:函数定义与参数

题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...