Ctrl+K
Logo image Logo image

Site Navigation

  • API Reference
  • Examples

Site Navigation

  • API Reference
  • Examples

Section Navigation

  • PyFlink DataFrame
    • DataFrame
    • DataFrame Creation
    • Input / Output
    • SQL
    • Data Types
    • User Defined Functions
    • Configuration
    • Catalog
    • GPU Support
    • AI / LLM
    • Multimodal Expressions
  • PyFlink Multimodal
  • PyFlink Table
  • PyFlink DataStream
  • PyFlink Common

pyflink.dataframe.set_model_provider#

set_model_provider(name_or_provider: Union[str, pyflink.dataframe.ai.providers.ModelProvider], provider: Optional[pyflink.dataframe.ai.providers.ModelProvider] = None, **options) → None[source]#

Register a global model provider configuration.

The registered provider name is the Python-side lookup key accepted by provider= arguments, set_default_model_provider(), and returned by list_model_providers(). Registered provider names are unique registry keys; registering the same name again raises ValueError.

This lookup name is separate from ModelProvider.provider_identifier(), which returns the Flink Java provider identifier. Multiple registered names may point to providers with the same Java identifier, such as separate OpenAI-compatible providers for chat and embeddings.

Can be called in three ways:

  1. set_model_provider(model_provider) — use model_provider.provider_identifier() as the lookup name.

  2. set_model_provider("name", model_provider) — register under a custom lookup name. This allows registering multiple instances of the same provider type (e.g. one for chat, one for embeddings).

  3. set_model_provider("name", **options) — create a built-in provider when name matches a built-in provider identifier, otherwise create a GenericProvider with the given options.

Parameters
  • name_or_provider – Either a ModelProvider instance (form 1) or a lookup name string (forms 2 and 3).

  • provider – A ModelProvider instance to register under the custom lookup name (form 2 only).

  • **options – Model provider options (form 3 only, dispatches when name matches a built-in provider identifier, otherwise wraps in GenericProvider).

Example:

>>> import pyflink.dataframe as pf
>>> # Form 1: ModelProvider instance (registered as "openai-compat")
>>> pf.set_model_provider(pf.OpenAICompatProvider(
...     task="chat/completions"))
>>> # Form 2: Custom name + ModelProvider instance
>>> pf.set_model_provider("chat", pf.OpenAICompatProvider(
...     task="chat/completions"))
>>> pf.set_model_provider("embedding", pf.OpenAICompatProvider(
...     task="embeddings"))
>>> # Form 3: Generic string API
>>> pf.set_model_provider(
...     "openai-compat",
...     task="chat/completions")

previous

AI / LLM

next

pyflink.dataframe.set_default_model_provider

Show Source

Created using Sphinx 4.5.0.