caikit.interfaces.nlp.data_model.text_generation

Data structures for text generation representations

Attributes

log

Classes

FinishReason

Create a collection of name/value pairs.

GeneratedToken

A DataObject is a data model class that is backed by a @dataclass.

GeneratedTextResult

A DataObject is a data model class that is backed by a @dataclass.

TokenStreamDetails

A DataObject is a data model class that is backed by a @dataclass.

GeneratedTextStreamResult

A DataObject is a data model class that is backed by a @dataclass.

Module Contents

caikit.interfaces.nlp.data_model.text_generation.log[source]
class caikit.interfaces.nlp.data_model.text_generation.FinishReason(*args, **kwds)[source]

Bases: enum.Enum

Create a collection of name/value pairs.

Example enumeration:

>>> class Color(Enum):
...     RED = 1
...     BLUE = 2
...     GREEN = 3

Access them by:

  • attribute access:

>>> Color.RED
<Color.RED: 1>
  • value lookup:

>>> Color(1)
<Color.RED: 1>
  • name lookup:

>>> Color['RED']
<Color.RED: 1>

Enumerations can be iterated over, and know how many members they have:

>>> len(Color)
3
>>> list(Color)
[<Color.RED: 1>, <Color.BLUE: 2>, <Color.GREEN: 3>]

Methods can be added to enumerations, and members can have their own attributes – see the documentation for details.

NOT_FINISHED = 0
MAX_TOKENS = 1
EOS_TOKEN = 2
CANCELLED = 3
TIME_LIMIT = 4
STOP_SEQUENCE = 5
TOKEN_LIMIT = 6
ERROR = 7
class caikit.interfaces.nlp.data_model.text_generation.GeneratedToken[source]

Bases: caikit.core.DataObjectBase

A DataObject is a data model class that is backed by a @dataclass.

Data model classes that use the @dataobject decorator must derive from this base class.

text: py_to_proto.dataclass_to_proto.Annotated[str, FieldNumber(1)]
logprob: py_to_proto.dataclass_to_proto.Annotated[float | None, FieldNumber(3)]
rank: py_to_proto.dataclass_to_proto.Annotated[int | None, FieldNumber(4)]
class caikit.interfaces.nlp.data_model.text_generation.GeneratedTextResult[source]

Bases: caikit.core.DataObjectBase

A DataObject is a data model class that is backed by a @dataclass.

Data model classes that use the @dataobject decorator must derive from this base class.

generated_text: py_to_proto.dataclass_to_proto.Annotated[str, FieldNumber(1)]
generated_tokens: py_to_proto.dataclass_to_proto.Annotated[int, FieldNumber(2)]
finish_reason: py_to_proto.dataclass_to_proto.Annotated[FinishReason, FieldNumber(3)]
producer_id: py_to_proto.dataclass_to_proto.Annotated[caikit.interfaces.common.data_model.ProducerId, FieldNumber(4)]
input_token_count: py_to_proto.dataclass_to_proto.Annotated[int, FieldNumber(5)]
seed: py_to_proto.dataclass_to_proto.Annotated[numpy.uint64 | None, FieldNumber(6)]
tokens: py_to_proto.dataclass_to_proto.Annotated[List[GeneratedToken] | None, FieldNumber(7)]
input_tokens: py_to_proto.dataclass_to_proto.Annotated[List[GeneratedToken] | None, FieldNumber(8)]
class caikit.interfaces.nlp.data_model.text_generation.TokenStreamDetails[source]

Bases: caikit.core.DataObjectBase

A DataObject is a data model class that is backed by a @dataclass.

Data model classes that use the @dataobject decorator must derive from this base class.

finish_reason: py_to_proto.dataclass_to_proto.Annotated[FinishReason, FieldNumber(1)]
generated_tokens: py_to_proto.dataclass_to_proto.Annotated[numpy.uint32, FieldNumber(2)]
seed: py_to_proto.dataclass_to_proto.Annotated[numpy.uint64 | None, FieldNumber(3)]
input_token_count: py_to_proto.dataclass_to_proto.Annotated[int, FieldNumber(4)]
class caikit.interfaces.nlp.data_model.text_generation.GeneratedTextStreamResult[source]

Bases: caikit.core.DataObjectBase

A DataObject is a data model class that is backed by a @dataclass.

Data model classes that use the @dataobject decorator must derive from this base class.

generated_text: py_to_proto.dataclass_to_proto.Annotated[str, FieldNumber(1)]
tokens: py_to_proto.dataclass_to_proto.Annotated[List[GeneratedToken] | None, FieldNumber(2)]
details: py_to_proto.dataclass_to_proto.Annotated[TokenStreamDetails | None, FieldNumber(3)]
producer_id: py_to_proto.dataclass_to_proto.Annotated[caikit.interfaces.common.data_model.ProducerId, FieldNumber(4)]
input_tokens: py_to_proto.dataclass_to_proto.Annotated[List[GeneratedToken] | None, FieldNumber(5)]