(图为首钢·百度Apollo Park大楼外景)
下午两点沙龙准时开始!屋里坐满了热情的开发者们,在大家的期待中,主持人小姐姐介绍了本次的嘉宾和沙龙议程。
这次沙龙一共有四个演讲议程:新版本升级的总体介绍、工程方向的技术分享、算法方向的技术分享、工具链方向的技术分享。
最让我印象深刻的是工程方向的技术分享。因为博主从事深度学习框架开发,深知如何统筹深度学习框架内部运作,发挥出算法的最大价值是非常具有挑战性的工作。
不同的开发者需求其实区别很大,一些基础的开发者可能还在学习熟悉框架的阶段,然而Apollo代码库中有将近80万行代码,如此庞大复杂的代码又被划分为感知模块、规划模块、技术模块等,刚入门级别的基础开发者其实很难弄清楚整体的框架模块和每个模块中的技术要点。然而对于博主这样的进阶开发者而言,我们需要针对不同的场景下充分扩展Apollo模块,但是原有代码的高度定制化和高度耦合性又使得扩展场景颇具挑战性。因此不同开发者的不同需求需要在框架侧予以支持。
本次Apollo在框架上引入了软件包管理机制,解耦发布流程中模块间的依赖关系打下了坚实的基础,不同需求的开发者可以通过直接复用的方式扩展Apollo组件,这种灵活性和可扩展性为开发者提供了更大的自由度,使得定制和整合不同模块变得更加高效和便捷。在老版本中,Apollo的所有源代码都需要全量下载,安装依赖的过程非常繁琐,环境安装和代码克隆配置的过程的的确确劝退了很多入门的小白选手。在最新的Beta版本不仅实现了按包进行下载,还能够按照不同业务功能拆包,让进阶开发者们更容易扩展自己的应用。
除此之外,Apollo还建立了面线点的开发者反馈收集机制,覆盖了不同需求、不同层次的开发者,对应不同的模块会有专门的技术专家负责,这大大提高了开源社区的运作效率。
愉快的时间总是过得很快,四位老师分享之后,沙龙的最后一个环节是自由交流,热情的开发者们把百度的工程师们团团围住交流问题,百度的工程师们也非常热情地回应开发者们,我也和老师交流一些了框架侧的问题。最后,我们还合了影,真是一个难忘的下午!
(图为合影)