树莓派是一款功能强大且价格低廉的微型计算机,它配备了四核Arm64 CPU,主频为1.8GHz,4GB DDR4内存,支持蓝牙和Wi-Fi,还配备了一些端口。尽管它的硬件配置并不豪华,但它能够运行Visual Studio Code进行.NET 7应用程序的调试,同时还能启动多个运行AI推理的Python模块。本文将详细介绍如何在树莓派上进行这样的开发工作。
树莓派400最初安装的是32位操作系统,原因不明。为了解决这个问题,需要前往树莓派官网下载最新的64位操作系统镜像。使用树莓派的Imager工具来烧录系统镜像到microSD卡上。在开始之前,请确保电脑上已经连接了microSD卡。最初选择了一张1TB的SD卡,但似乎它与Imager不兼容,于是换成了一张128GB的知名品牌SD卡。
使用Imager将新的64位操作系统镜像烧录到SD卡后,将其插入树莓派并开机。
这一步非常简单,感谢微软。在树莓派上打开终端窗口,输入以下命令:
sudo apt update
sudo apt install code
启动VS Code,登录账户,同步设置,然后就可以开始使用了。在树莓派上运行VS Code证明了树莓派的强大性能和VS Code的高效性。
在VS Code中,像平常一样克隆CodeProject.AI Server仓库。请确保树莓派SD卡上有足够的空间,几个GB应该就足够了。克隆完仓库后,需要进行一些设置。这同样非常简单。打开一个新的终端,进入仓库的/src文件夹。最简单的方法是通过VS Code的终端菜单选择'New Terminal',然后在终端窗口中输入'cd src'即可。或者,也可以从树莓派系统菜单中打开一个终端,然后进入CodeProject.AI Server仓库的/src目录。
进入目录后,运行以下命令:
bash setup.sh
这个设置脚本通常运行得很快,但Python 3.7的初始安装过程可能会非常慢。树莓派自带的是Python 3.9,但为了使用3.7,需要从源代码编译。幸运的是,Theo van der Sluijs为创建了一个脚本来处理这个问题。在Pi上,这个过程花了将近一个小时,其中大部分时间都花在了运行回归测试上。
安装完Python之后,接下来是.NET 7,这同样由另一个脚本处理,感谢Pete Gallaghar。不需要下载任何东西:setup.sh脚本已经包含了所有需要的东西,并且会为完成这些工作。
一旦运行时环境设置完成,模块安装就像在其他平台上一样简单。让脚本自动完成它的工作。Python虚拟环境将为需要的每个模块设置,每个模块将要运行的模型将被下载并放置在正确的位置。
运行完设置脚本后,就可以开始构建和启动了。这同样是一个非事件,因为只需要在VS Code的'Run and Debug'面板中选择'Build All & Launch Server Arm64'即可。
有单独的x64和Arm64构建,因为一些模块,如使用Microsoft.ML.OnnxRuntime的PortraitFilter,不支持Arm64,因此需要从Arm64构建中排除。点击下拉菜单旁边的箭头将启动服务器。可以像在任何其他VS Code安装中一样,在树莓派上调试和逐步执行服务器代码。启动后,会出现相同的仪表板UI,可以打开相同的资源管理器体验。
再次提醒,这是一款非常小的计算机,内存非常有限。倾向于使用每个模块允许的最小模型,但即便如此,推理时间也可能超过一秒。