I finally found my issue :
Everything was set up properly, issue came from the way I generated the zip from Windows os. Windows's Compress-Archive command doesn't respect ZIP standard and backslashes are used instead of forward slashes. Azure function run into a Linux consumption plan, which requires forward slashes. I used 7zip to generate the archive :
& $7ZipPath a -tzip $ZipName * .python_packages