Embeddings

Model name: embeddings

Model aliases:

  • openai_embeddings
  • nim_embeddings

About embeddings

OpenAI embeddings is a text-embedding model that enables use of any OpenAI API-compatible text-embedding model. It's suitable for text classification, clustering, and other text-embedding tasks.

Based on the name of the model, the model provider sets defaults accordingly:

  • When invoked as embeddings or openai_embeddings, the model provider defaults to using the OpenAI API.

  • When invoked as nim_embeddings, the model provider defaults to using the NVIDIA NIM API.

Supported aidb operations

  • encode_text
  • encode_text_batch

Supported models

  • Any text-embedding model that's supported by the provider.

Supported OpenAI models

  • Any text-embedding model that's supported by OpenAI. This includes text-embedding-3-small, text-embedding-3-large, and text-embedding-ada-002. See a list of supported OpenAI models here.
  • The default is text-embedding-3-small.

Supported NIM models

Creating the default with OpenAI model

SELECT aidb.create_model('my_openai_embeddings', 
                            'openai_embeddings',
                            credentials=>'{"api_key": "sk-abc123xyz456def789ghi012jkl345mn"'::JSONB);

As this example is defaulting the model to text-embedding-3-small, you don't need to specify the model in the configuration. But you do need to pass an OpenAI API key in the credentials. For that, you must pass credentials as a named parameter.

Creating a specific model

You can create any supported OpenAI embedding model using the aidb.create_model function. This example creates a text-embedding-3-large model with the name my_openai_model:

SELECT aidb.create_model(
  'my_openai_model',
  'openai_embeddings',
  '{"model": "text-embedding-3-large"}'::JSONB,
  '{"api_key": "sk-abc123xyz456def789ghi012jkl345mn"}'::JSONB 
);

Because this example is passing the configuration options and the credentials, unlike the previous example, you don't need to pass the credentials as a named parameter.

Model configuration settings

The following configuration settings are available for OpenAI models:

  • model The OpenAI model to use.
  • url The URL of the model to use. This value is optional and can be used to specify a custom model URL.
    • If openai_completions (or completions) is the model, url defaults to https://api.openai.com/v1/chat/completions.
    • If nim_completions is the model, url defaults to https://integrate.api.nvidia.com/v1/chat/completions.
  • max_concurrent_requests The maximum number of concurrent requests to make to the OpenAI model. The default is 25.

Model credentials

The following credentials may be required by the service providing these models:

  • api_key The OpenAI API key to use for authentication.

Could this page be better? Report a problem or suggest an addition!