README.md

API列表

注:当前API列表是从接口类型维度进行展示,如需从功能特性维度查看API使用,请参见功能特性介绍

API概览

API详情

注:后续API中带有(TorchRec)标记的表示该API为TorchRec原生API,其他API为Rec SDK Torch提供。

创表接口

API 功能描述
HashEmbeddingBagConfig HashEmbeddingBagCollection的入参,用于配置表的大小、dim、数据类型等。
HashEmbeddingBagCollection 创建带Pooling和哈希映射的单机表对象。
EmbCacheEmbeddingBagConfig EmbCacheEmbeddingBagCollection的入参,用于配置表的大小、dim、数据类型等。
EmbCacheEmbeddingBagCollection 创建带pooling、哈希映射和多级缓存的单机表对象。
EmbCacheEmbeddingConfig EmbCacheEmbeddingCollection的配置类接口,用于配置表的大小、dim、数据类型等。
EmbCacheEmbeddingCollection 创建带哈希映射和多级缓存的单机表对象。

数据接口

API 功能描述
JaggedTensor(TorchRec) 持有稀疏id和特征长度的类,用于查表。
KeyedJaggedTensor(TorchRec) 通过引入键(通常是特征名称)来扩展JaggedTensor,以标记不同的特征组。

优化器接口

API 功能描述
apply_optimizer_in_backward(TorchRec) 指定模型在反向传播时使用的优化器。一般用于指定稀疏表参数反向传播时使用的优化器。
in_backward_optimizer_filter(TorchRec) 用于过滤掉被指定为backward_optimizer的参数。
KeyedOptimizerWrapper(TorchRec) 用于封装过滤掉表的参数的优化器。
CombinedOptimizer(TorchRec) 将多个优化器合并为一个。

分表接口

API 功能描述
ShardingEnv(TorchRec) 保存分布式相关参数。
Topology(TorchRec) 保存分布式环境网络设备拓扑参数。
ParameterConstraints(TorchRec) 指定分表计划的查询范围。
get_default_hybrid_sharders 获取分表器。
EmbeddingShardingPlanner(TorchRec) 创建分表计划器,用于搜索最合适的分表计划。
EmbCacheEmbeddingBagCollectionSharder 创建EmbCacheEmbeddingBagCollectionSharder分表器,用于将EmbCacheEmbeddingBagCollection分片到不同的设备上。
EmbCacheEmbeddingCollectionSharder 创建EmbCacheEmbeddingCollectionSharder分表器,用于将EmbCacheEmbeddingCollection分片到不同的设备上。
DistributedModelParallel(TorchRec) 将传入的Module变为分布式的Module,并执行分表计划。

pipeline接口

API 功能描述
HybridTrainPipelineSparseDist 创建纯显存模式流水查表。
EmbCacheTrainPipelineSparseDist 创建多级缓存流水查表。

多级缓存管理接口

API 功能描述
InitializerType 权重初始化类型枚举,定义嵌入表权重的初始化方式。
Saver 多级缓存稀疏表保存加载功能类,提供多级缓存稀疏表数据(稀疏表Embedding,Embedding对应的优化器参数等)的保存、加载接口。

准入淘汰管理接口

API 功能描述
JaggedTensorWithTimestamp 该接口是一个扩展自JaggedTensor的类,用于表示带有时间戳信息的Jagged Tensor。该类在JaggedTensor的基础上增加了一个_timestamps属性,存储与values对应的时间戳信息。用于特征淘汰时计算时间。
KeyedJaggedTensorWithTimestamp 该接口是一个扩展自KeyedJaggedTensor的类,用于表示带有时间戳信息的Keyed Jagged Tensor。该类在KeyedJaggedTensor的基础上增加了一个_timestamps属性,存储与values对应的时间戳信息。用于特征淘汰时计算时间。
AdmitAndEvictPolicyType 准入淘汰策略类型枚举,定义嵌入表特征准入和淘汰的策略类型。
ShowClickParams 该接口表示基于展示点击(show/click)策略的参数配置。该类提供了配置展示点击准入和淘汰功能的参数,允许用户根据展示次数和点击次数控制特征的准入和淘汰行为。
AdmitAndEvictConfig 该接口表示单个嵌入表的准入和淘汰配置。该类提供了配置嵌入表特征准入和淘汰功能的参数,允许用户根据特定条件控制特征的准入和淘汰行为。支持两种策略类型:基于计数的策略(POLICY_COUNT)和基于展示点击的策略(POLICY_SHOWCLICK)。

自定义算子

Rec SDK Torch提供了部分自定义算子,用于处理稀疏表数据和加速模型训练,详情请参考自定义算子中的自定义算子列表。