第三方框架适配
主要介绍一下第三方框架每个抽象出来的模块需要适配的具体的点。
如果使用llm_datadist管理cache的能力,则第三方框架适配点和仅支持D2D传输的框架适配点除了建链操作需要在每个节点进程上都要进行,其他保持一样。
而通过注册用户内存的方式则会有些变化。
- llm_datadist的初始化接口在框架的资源初始化模块调用。
- 找到框架的kv cache管理模块,将已申请的kv cache内存调用注册接口注册给llm_datadist。
- 找到框架的资源初始化模块,对外开放建链和断链接口,内部调用llm_datadist提供的建链和断链。
- 框架的推理模块需要拆分为Prefill和Decoder,需要能够达到这种效果。
- 提供查询内存注册接口和pull kv接口,具体实现调用llm_datadist提供的接口能力。
- 在使用kv cache前需要调用查询内存注册接口,确保cache已经注册完成。
- P侧调用一次模型推理仅执行Prefill模型,并输出Decoder阶段推理所需要的输入。
- D侧接收P侧推理完的数据作为新请求的输入,调用llm_datadist提供的pull kv的接口,拉取kv后,不会进入Prefill的流程,而直接进行增量推理。
- 在框架的资源释放模块先调用llm_datadist释放kv cache资源的相关接口,再调用unlink接口,最后调用llm_datadist的finalize释放所有资源。
父主题: 支持D2D/D2H/H2D传输