maxframe.learn.contrib.llm.text.embed#

maxframe.learn.contrib.llm.text.embed(series, model: TextEmbeddingModel, dimensions: int | None = None, encoding_format: str | None = None, simple_output: bool = False, params: Dict[str, Any] | None = None, index=None, *, input: str | None = None, **kw)[源代码]#

使用文本 embedding 模型对 Series 中的文本内容生成 embedding。

参数:
  • series (Series or DataFrame) -- 包含待生成 embedding 文本数据的 maxframe Series,或与 input 一起使用、按行渲染文本 embedding 请求的 DataFrame。

  • model (TextEmbeddingModel) -- 用于生成 embedding 的文本 embedding 模型实例。

  • dimensions (int, optional) -- embedding 向量维度。如未指定,则使用模型默认值。

  • encoding_format (str, optional) -- embedding 的编码格式,例如 'float' 或 'base64'。如未指定,则使用模型默认值。

  • input (str, optional) -- 与 DataFrame 输入一起使用的文本模板。使用 {col_name} 作为占位符引用输入列。

  • simple_output (bool, optional) -- 是否直接返回 embedding 数据而不包含额外 metadata,默认为 False。

  • params (Dict[str, Any], optional) -- 额外的 embedding 配置参数,默认为 None。可包含模型特定设置。

  • index (array-like, optional) -- 输出 Series 的索引,默认为 None,此时会生成新的索引。

返回:

包含生成的 embedding 和成功状态的 DataFrame。列包括 'response'(embedding 向量)和 'success'(布尔状态)。如果 'success' 为 False,'response' 列会包含错误信息,而不是预期输出。

返回类型:

DataFrame

示例

>>> from maxframe.learn.contrib.llm.models.managed import ManagedTextEmbeddingModel
>>> import maxframe.dataframe as md
>>>
>>> # Initialize the embedding model
>>> embedding_model = ManagedTextEmbeddingModel(name="text-embedding-ada-002")
>>>
>>> # Create sample data
>>> texts = md.Series([
...     "Machine learning is a powerful technology.",
...     "Natural language processing enables computers to understand text.",
...     "Deep learning uses neural networks for pattern recognition."
... ])
>>>
>>> # Generate embeddings
>>> result = embed(texts, embedding_model, simple_output=True)
>>> result.execute()

备注

Preview: 此 API 处于预览状态,可能不稳定。接口可能在后续版本中变化。