本发明涉及fpga,尤其涉及一种基于fpga的人工智能设备。
背景技术:
1、大模型(large model),也称基础模型(foundation model),是指具有大量参数和复杂结构的机器学习模型,能够处理海量数据,完成各种复杂的任务。
2、例如,随着大模型技术的发展,在自然语言文本生成领域已广泛使用。目前,通常基于云服务形式线上生成文本,但对于某些领域而言,隐私要求较高。例如,律师事务所有很严格的隐私要求,客户的案件详情需要严格保密,因此多数律师事务所要求不能使用在线的大模型辅助生成案件描述等文本内容,防止客户的隐私被上传至公网而导致潜在泄漏风险。
3、因而,亟待提供一种能够实现大模型本地部署的人工智能设备,同时需要考虑设备的效率和功耗。
技术实现思路
1、针对上述现有技术的不足,本发明的目的在于提供一种基于fpga(现场可编程门阵列)的人工智能设备,以通过本地部署的大模型实现相应ai功能,并能保证合理的功耗和效率。
2、为了实现上述目的,本发明采用以下技术方案:
3、一种基于fpga的人工智能设备,包括接口组件以及与所述接口组件相连的ai组件;
4、所述接口组件用于进行数据交互,包括接收用户输入信息;
5、所述ai组件包括部署有预设大模型的fpga芯片,所述fpga芯片用于基于所述大模型生成与所述用户输入信息对应的ai处理结果。
6、进一步地,所述大模型包括流水线处理阶段和串行处理阶段,所述fpga芯片支持先后加载流水线处理镜像文件和串行处理镜像文件;
7、当加载所述流水线处理镜像文件时,所述fpga芯片用于通过第一数据处理模块执行所述流水线处理阶段;
8、当加载所述串行处理镜像文件时,所述fpga芯片用于通过第二数据处理模块执行所述串行处理阶段。
9、进一步地,所述第一数据处理模块包括多个并行的流水线处理单元,所述流水线处理单元包括依次通信连接的第一前处理单元、第一矩阵乘加器和第一后处理单元,其中,所述第一前处理单元用于对接收到的数据进行相应前处理,所述第一矩阵乘法器用于对所述第一前处理单元的输出结果进行相应矩阵运算,所述第一后处理单元用于对所述第一矩阵乘法器的输出结果进行相应后处理。
10、进一步地,所述第二数据处理模块包括一非流水线处理单元,所述非流水线处理单元包括依次通信连接的第二前处理单元、第二矩阵乘加器和第二后处理单元,其中,所述第二前处理单元用于对接收到的数据进行相应前处理,所述第二矩阵乘法器用于对所述第二前处理单元的输出结果进行相应矩阵运算,所述第二后处理单元用于对所述第二矩阵乘法器的输出结果进行相应后处理。
11、进一步地,所述前处理包括缩放处理;
12、所述后处理包括累加、平方累加、取最大值、指数累加、掩码、gelu激活、bypass处理。
13、进一步地,所述第一矩阵乘法器和第二矩阵型乘法器均采用pe阵列结构。
14、进一步地,所述fpga芯片还包括状态机控制模块,所述状态机控制模块用于对所述大模型进行任务分割,以得到不同任务层,并将各任务层分配到相应的流水线处理单元或非流水线处理单元进行运行,同时用于在上一任务层操作结束后启动下一任务层运行。
15、进一步地,所述设备还包括与所述fpga芯片连接的外存储器,以用于存储所述大模型的模型参数;
16、所述fpga芯片还包括用于访问所述外存储器的外存访问模块,所述状态机控制模块还用于控制所述外存访问模块读取相应的模型参数,并将相应模型参数传输至对应的流水线处理单元或非流水线处理单元。
17、进一步地,所述ai组件还包括与所述fpga芯片相连的mcu;
18、或者,所述fpga芯片集成有mcu;
19、其中,所述mcu用于接收所述用户输入信息,并控制所述fpga芯片基于所述大模型生成与所述用户输入信息对应的ai处理结果。
20、进一步地,所述ai组件包括多个所述fpga芯片,且其中一个所述fpga芯片为主fpga芯片,其余所述fpga芯片为从fpga芯片;
21、所述mcu与所述主fpga芯片相连、或者所述mcu集成于所述主fpga芯片中。
22、通过采用上述技术方案,本发明具有以下有益效果:
23、本发明的人工智能设备通过采用部署有预设大模型的fpga芯片,即可基于fpga芯片以线下形式实现相应ai功能,而无需采用在线形式,进而保证了数据的安全性;当大模型版本更新时,可以在fpga芯片中重新部署最新的大模型,不需要使用在线形式更新模型,进一步避免可能的数据泄漏。同时,fpga效率较高,功耗和成本较低,而且方便携带,可以作为移动平台使用。
1.一种基于fpga的人工智能设备,其特征在于,包括接口组件以及与所述接口组件相连的ai组件;
2.根据权利要求1所述的人工智能设备,其特征在于,所述大模型包括流水线处理阶段和串行处理阶段,所述fpga芯片支持先后加载流水线处理镜像文件和串行处理镜像文件;
3.根据权利要求2所述的人工智能设备,其特征在于,所述第一数据处理模块包括多个并行的流水线处理单元,所述流水线处理单元包括依次通信连接的第一前处理单元、第一矩阵乘加器和第一后处理单元,其中,所述第一前处理单元用于对接收到的数据进行相应前处理,所述第一矩阵乘法器用于对所述第一前处理单元的输出结果进行相应矩阵运算,所述第一后处理单元用于对所述第一矩阵乘法器的输出结果进行相应后处理。
4.根据权利要求3所述的人工智能设备,其特征在于,所述第二数据处理模块包括一非流水线处理单元,所述非流水线处理单元包括依次通信连接的第二前处理单元、第二矩阵乘加器和第二后处理单元,其中,所述第二前处理单元用于对接收到的数据进行相应前处理,所述第二矩阵乘法器用于对所述第二前处理单元的输出结果进行相应矩阵运算,所述第二后处理单元用于对所述第二矩阵乘法器的输出结果进行相应后处理。
5.根据权利要求3或4所述的人工智能设备,其特征在于,所述前处理包括缩放处理;
6.根据权利要求4所述的人工智能设备,其特征在于,所述第一矩阵乘法器和第二矩阵型乘法器均采用pe阵列结构。
7.根据权利要求4所述的人工智能设备,其特征在于,所述fpga芯片还包括状态机控制模块,所述状态机控制模块用于对所述大模型进行任务分割,以得到不同任务层,并将各任务层分配到相应的流水线处理单元或非流水线处理单元进行运行,同时用于在上一任务层操作结束后启动下一任务层运行。
8.根据权利要求7所述的内容生成设备ai设备,其特征在于,所述设备还包括与所述fpga芯片连接的外存储器,以用于存储所述大模型的模型参数;
9.根据权利要求1所述的人工智能设备,其特征在于,所述ai组件还包括与所述fpga芯片相连的mcu;
10.根据权利要求9所述的人工智能设备,其特征在于,所述ai组件包括多个所述fpga芯片,且其中一个所述fpga芯片为主fpga芯片,其余所述fpga芯片为从fpga芯片;