ChatGPT-Next-Web [Bug] 模型返回的公式显示不正确

m2xkgtsf  于 3个月前  发布在  其他
关注(0)|答案(8)|浏览(77)

很抱歉,我无法回答你的问题。我的能力是自然语言处理,我可以帮你翻译文本、回答问题、提供建议等。但是,我不会计算GPU内存大小。如果你需要帮助,请告诉我你需要什么样的帮助,我会尽力为你提供帮助。

ewm0tg9j

ewm0tg9j1#

检测到问题:请求体的语言不是英语,自动翻译。

标题: [Bug] 模型返回的公式显示不正确

📦 部署方法

官方安装包

🌐 软件版本

2.14.0

💻 系统环境

Windows

📌 系统版本

win11

🌐 浏览器

Edge

📌 浏览器版本

Edge 126.0.2592.113, NextWeb客户端版本

🐛 问题描述

返回的公式显示不正确,使用Gpt4o接口

📷 重现步骤

问题:以Qwen1.5 32B为例,如何根据模型参数配置和LoRa配置计算用于LoRa微调的GPU内存大小?请提供详细的计算公式和计算结果。

🚦 预期结果

公式正常显示

uurv41yg

uurv41yg2#

可以提供一下模型输出的原始文本吗,我测试一下

gmxoilav

gmxoilav3#

检测到问题正文的语言不是英语,请自动翻译。
你能提供模型输出的原始文本吗?我会测试一下。

xmd2e60i

xmd2e60i4#

要计算LoRA微调使用的GPU内存大小,我们需要了解LoRA的参数量和模型的参数量。LoRA的主要思想是通过引入低秩矩阵来减少微调的参数量,从而减少计算和内存需求。

1. 模型参数计算

首先,我们计算原始模型的参数量。模型参数主要包括以下几个部分:

  • 嵌入层:
  • 词嵌入:( \text{vocab_size} \times \text{hidden_size} )
  • 位置嵌入:( \text{max_position_embeddings} \times \text{hidden_size} )
  • 注意力层:
  • Q, K, V 投影矩阵:( 3 \times (\text{hidden_size} \times \text{hidden_size}) )
  • 输出投影矩阵:( \text{hidden_size} \times \text{hidden_size} )
  • 前馈层:
  • 上投影矩阵:( \text{hidden_size} \times \text{intermediate_size} )
  • 下投影矩阵:( \text{intermediate_size} \times \text{hidden_size} )
  • 层归一化:
  • 两个参数(均值和方差):( 2 \times \text{hidden_size} )

计算公式如下:
[
\begin{aligned}
\text{Total parameters} &= \text{vocab_size} \times \text{hidden_size} + \text{max_position_embeddings} \times \text{hidden_size}
&\quad + \text{num_hidden_layers} \times (3 \times (\text{hidden_size} \times \text{hidden_size}) + \text{hidden_size} \times \text{hidden_size} )
&\quad + \text{num_hidden_layers} \times ((\text{hidden_size} \times \text{intermediate_size}) + (\text{intermediate_size} \times \text{hidden_size}) )
&\quad + \text{num_hidden_layers} * (2\times\text{hidden_size})
\end{aligned}
]
将参数代入:
[
\begin{aligned}
\text{Total parameters} &= 152064\times5120+32768\times5120
&\quad +64\times(3\times(5120\times5120)+5120\times5120)
&\quad +64\times((5120\times27392)+(27392\times5120))
&\quad +64*(2\times5120)
\end{aligned}
]

2. LoRA参数计算

LoRA参数量主要取决于低秩矩阵的秩和所选的目标模块。对于每个目标模块,我们引入两个低秩矩阵 (A) 和 (B),其中 (A) 的维度为 ( hidden_size * r ), (B) 的维度为 ( r * hidden_size )。
计算公式如下:
[
\text{LoRA parameters}=num_hidden_layers\timessum_{\text{module}\in\text{target_modules}}(\text{hidden_size}\times r+r\times\text{hidden_size})
]
将参数代入:
[
\text{LoRA parameters}=64\times7\times(5120\times8+8\times5120)=64\times7\times81920=36700160
]

31moq8wy

31moq8wy5#

我想我找到问题了,是因为作为变量名称一部分的下划线需要进行转义,需要像处理美元符号那样对 text 里的特殊符号添加斜杠。

vwkv1x7d

vwkv1x7d6#

检测到问题正文的语言不是英语,自动翻译。
我认为我找到了问题,那就是变量名中的下划线需要转义,而在\text中的特殊符号需要像美元符号一样用斜杠表示。

ie3xauqp

ie3xauqp7#

我想我找到问题了,是因为作为变量名称一部分的下划线需要进行转义,需要像处理美元符号那样对 text 里的特殊符号添加斜杠。

好的,等你新版本修复。

ujv3wf0j

ujv3wf0j8#

检测到问题,正文的语言不是英语,需要自动翻译。
我认为我找到了问题,那就是变量名中的下划线需要转义,而在\text中的特殊字符需要像美元符号一样用斜杠表示。
![image]( https://private-user-images.githubusercontent.com/40236765/355297189-291f9dcc-7391-4a7a-bf11-651fffd60b66.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3Mi OiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI5MjY2MzcsIm5iZiI6MTcyMjkyNjMzNywicGF0aCI6Ii80MDIzN jc2NS8zNTUyOTcxODktMjkxZjlkY2MtNzM5MS00YTdhLWJmMTEtNjUxZmZmZDYwYjY2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EW UxTQTUzUFFLNFpBJTJGMjAyNDA4MDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODA2VDA2Mzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0 dXJlPTRjYjhiZDUyMDE2OTYxY2UwZjY5YmIxM2YyZjE0ZjExYmQ3NTE3MTJiYzUxNGFiOWFkMWMwOTJlMTNiMTQ4MWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lk PTAmcmVwb19pZD0wIn0.rh3yShCsWzaTnPDdM16FOGMz663WvYmRGsxkhCz1TCw)
好的,等待你的新版本修复它。

相关问题