Búfer para almacenar datos de tensores de cadena.
Los valores se almacenan como una matriz de TF_TString
, envuelto internamente con tensorflow::tstring
, que es esencialmente una versión portátil de std::string
.
Los datos del búfer deben inicializarse solo una vez, llamando a ERROR(/#init(NdArray, Function))
, y el búfer debe haber sido asignado con suficiente espacio (use ERROR(/#computeSize(NdArray, Function))
de saber exactamente cuántos bytes se requieren para almacenar los datos).
Una vez que se han inicializado sus datos, el búfer es de solo lectura, ya que no es posible cambiar de forma segura un valor sin reinicializar todos los datos.
Métodos públicos
estática <T> larga | computeSize ( ByteSequenceProvider <?> byteSequenceProvider) Calcula cuántos bytes se requieren para almacenar los datos dados en un búfer de cadena. |
DataBuffer <byte []> | copyTo ( DataBuffer <byte []> dst, tamaño largo) Escriba las referencias de los objetos en la matriz de origen en este búfer. |
byte[] | getObject (índice largo) |
<T> vacío | |
booleano | isReadOnly () |
DataBuffer <byte []> | setObject (valores de bytes [], índice largo) |
largo | tamaño () |
DataBuffer <byte []> | rebanada (índice largo, tamaño largo) |
Métodos heredados
Métodos públicos
public static long computeSize ( ByteSequenceProvider <?> byteSequenceProvider)
Calcula cuántos bytes se requieren para almacenar los datos dados en un búfer de cadena.
Parámetros
byteSequenceProvider | produce secuencias de bytes |
---|
Devoluciones
- número de bytes necesarios para almacenar los datos.
public DataBuffer <byte []> copyTo ( DataBuffer <byte []> dst, tamaño largo)
Escriba las referencias de los objetos en la matriz de origen en este búfer.
Si hay más valores para copiar que el tamaño del búfer de destino, es decir, size > dst.size()
, no se transfieren valores y se lanza una BufferOverflowException. Por otro lado, si hay más valores para copiar que el tamaño del búfer de origen, es decir, > src.size()
, se lanza una BufferUnderfloatException.
De lo contrario, este método copia n = size
valores de n = size
de este búfer en el búfer de destino.
Parámetros
dst | el búfer de destino en el que se copian los valores; no debe ser este búfer |
---|---|
Talla | número de valores para copiar al búfer de destino |
Devoluciones
- este búfer
byte público [] getObject (índice largo)
public void init ( ByteSequenceProvider <T> byteSequenceProvider)
Inicialice los datos de este búfer.
Si bien no se aplica mediante programación, es obligatorio que se llame a este método solo una vez después de la creación del búfer. El búfer debe haber sido asignado de acuerdo con el mismo conjunto de datos, llamando a ERROR(/#computeSize(NdArray, Function))
para asegurarse de que haya suficiente espacio para almacenarlo.
Parámetros
byteSequenceProvider | produce secuencias de bytes para usar como datos tensoriales |
---|