Repository navigation
对训练队列进行优化的一些建议
#2033
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
在使用过程中,我发现执行队列任务的时候,会有一些过时的数据产生导致冗余的数据。
以
generateQA为例子,在逻辑中他会取一条训练记录并且加锁,假使 oneapi 的请求时常超过了加锁的时间会导致产生两条相同的数据集记录。先调用
pushDataListToTrainingQueueByCollectionId进行了插入,再去删除训练记录,如果此时训练记录已经不存在,并不会产生报错或者其他提示,当然为时已晚。简单的解决办法是,在调用
pushDataListToTrainingQueueByCollectionId对训练记录的存在与否进行检查,可以解决重复数据集的问题,但是这时候其实内存的开销是不必要的。我看到 OpenAI 的调用参数中支持
signal?: AbortSignal,我的想法是通过发布订阅,以训练记录id为发布订阅注册key,来提前中断有关 OpenAI 的调用,结束此次额外不必要的开销。可以就这样结束,也可以在此逻辑后进行重新调用,获取下一个训练记录。
All reactions