airflow.providers.openai.operators.openai

OpenAIEmbeddingOperator

接受输入文本并使用指定的模型生成 OpenAI 嵌入的 Operator。

OpenAITriggerBatchOperator

触发 OpenAI Batch API 端点并等待批处理完成的 Operator。

模块内容

class airflow.providers.openai.operators.openai.OpenAIEmbeddingOperator(conn_id, input_text, model='text-embedding-ada-002', embedding_kwargs=None, **kwargs)[source]

基类: airflow.models.BaseOperator

接受输入文本并使用指定的模型生成 OpenAI 嵌入的 Operator。

参数:
  • conn_id (str) – 要使用的 OpenAI 连接 ID。

  • input_text (str | list[str] | list[int] | list[list[int]]) – 用于生成 OpenAI 嵌入的文本。可以是字符串、字符串列表、整数列表或整数列表的列表。

  • model (str) – 用于生成嵌入的 OpenAI 模型。

  • embedding_kwargs (dict | None) – 传递给 OpenAI create_embeddings 方法的额外关键字参数。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: OpenAIEmbeddingOperator embedding_kwargs 的可能选项,请参阅: https://platform.openai.com/docs/api-reference/embeddings/create

template_fields: collections.abc.Sequence[str] = ('input_text',)[source]
conn_id[source]
input_text[source]
model = 'text-embedding-ada-002'[source]
embedding_kwargs[source]
property hook: airflow.providers.openai.hooks.openai.OpenAIHook[source]

返回 OpenAIHook 的实例。

execute(context)[source]

创建 Operator 时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文信息,请参阅 get_template_context。

class airflow.providers.openai.operators.openai.OpenAITriggerBatchOperator(file_id, endpoint, conn_id=OpenAIHook.default_conn_name, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), wait_seconds=3, timeout=24 * 60 * 60, wait_for_completion=True, **kwargs)[source]

基类: airflow.models.BaseOperator

触发 OpenAI Batch API 端点并等待批处理完成的 Operator。

参数:
  • file_id (str) – 必填。要触发的批处理文件的 ID。

  • endpoint (Literal['/v1/chat/completions', '/v1/embeddings', '/v1/completions']) – 必填。要触发的 OpenAI Batch API 端点。

  • conn_id (str) – 可选。要使用的 OpenAI 连接 ID。默认为 'openai_default'。

  • deferrable (bool) – 可选。在可推迟模式下运行 Operator。

  • wait_seconds (float) – 可选。检查之间的秒数。仅当 deferrable 为 False 时使用。默认为 3 秒。

  • timeout (float) – 可选。等待请求完成的超时时间(秒)。仅当 deferrable 为 False 时使用。默认为 24 小时,这是 OpenAI Batch API 的 SLA。

  • wait_for_completion (bool) – 可选。是否等待批处理完成。如果设置为 False,Operator 在触发批处理后立即返回。默认为 True。

另请参阅

有关如何使用此 Operator 的更多信息,请参阅指南: OpenAITriggerBatchOperator

template_fields: collections.abc.Sequence[str] = ('file_id',)[source]
conn_id = 'openai_default'[source]
file_id[source]
endpoint[source]
deferrable = True[source]
wait_seconds = 3[source]
timeout = 86400[source]
wait_for_completion = True[source]
batch_id: str | None = None[source]
property hook: airflow.providers.openai.hooks.openai.OpenAIHook[source]

返回 OpenAIHook 的实例。

execute(context)[source]

创建 Operator 时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文信息,请参阅 get_template_context。

execute_complete(context, event=None)[source]

当触发器触发时调用此回调;立即返回。

依赖触发器抛出异常,否则假定执行成功。

on_kill()[source]

如果任务被取消,则取消批处理。

此条目有帮助吗?