GoodMemGoodMem
ReferenceCLIEmbedder

Embedder Create

Embedder Create CLI command reference

goodmem embedder create

Create a new embedder

Synopsis

Create a new embedder in the GoodMem service with the specified configuration.

goodmem embedder create [flags]

Examples

  # Create an OpenAI embedder with a client-provided ID (defaults to DENSE)
  goodmem embedder create \
    --id "123e4567-e89b-12d3-a456-426614174000" \
    --display-name "OpenAI Ada" \
    --provider-type OPENAI \
    --endpoint-url "https://api.openai.com/v1" \
    --model-identifier "text-embedding-3-small" \
    --dimensionality 1536 \
    --cred-api-key "sk-..."

  # Create an OpenAI embedder (server-generated ID)
  goodmem embedder create \
    --display-name "OpenAI Ada" \
    --provider-type OPENAI \
    --endpoint-url "https://api.openai.com/v1" \
    --model-identifier "text-embedding-3-small" \
    --dimensionality 1536 \
    --cred-api-key "sk-..."

  # Create a Cohere embedder with inline credentials
  goodmem embedder create \
    --display-name "Cohere Embedder" \
    --provider-type COHERE \
    --endpoint-url "https://api.cohere.com" \
    --model-identifier "embed-english-v3.0" \
    --dimensionality 1024 \
    --cred-api-key "YOUR_COHERE_API_KEY"

  # Create a Jina embedder with inline credentials
  goodmem embedder create \
    --display-name "Jina Embedder" \
    --provider-type JINA \
    --endpoint-url "https://api.jina.ai" \
    --model-identifier "jina-embeddings-v3" \
    --dimensionality 1024 \
    --cred-api-key "YOUR_JINA_API_KEY"

  # Create a Voyage AI embedder with inline credentials
  goodmem embedder create \
    --display-name "Voyage AI" \
    --provider-type VOYAGE \
    --endpoint-url "https://api.voyageai.com/v1" \
    --model-identifier "voyage-3-large" \
    --dimensionality 1024 \
    --cred-api-key "pa-..."

  # Create a vLLM embedder without credentials for local deployment
  goodmem embedder create \
    --display-name "Local vLLM" \
    --provider-type VLLM \
    --endpoint-url "http://localhost:8000/v1" \
    --model-identifier "all-MiniLM-L6-v2" \
    --dimensionality 384 \
    --label environment=dev \
    --label team=ml

  # Create a TEI embedder (defaults api-path to /embed) pointing at a local Qwen3 deployment
  goodmem embedder create \
    --display-name "Local Qwen3-0.6B" \
    --provider-type TEI \
    --endpoint-url "http://qwen3.embed.goodmem.ai:8010" \
    --model-identifier "Qwen3-Embedding-0.6B" \
    --dimensionality 1024 \
    --label environment=dev \
    --label team=search

  # Create a DashScope text embedder in Singapore using the native API
  goodmem embedder create \
    --display-name "DashScope text-embedding-v3" \
    --provider-type DASHSCOPE \
    --endpoint-url "https://dashscope-intl.aliyuncs.com" \
    --model-identifier "text-embedding-v3" \
    --dimensionality 1024 \
    --dashscope-api-dialect EMBEDDING_NATIVE_TEXT \
    --cred-api-key-prompt

  # Verify a DashScope endpoint and dialect before creating the embedder
  goodmem doctor embedder "https://dashscope-intl.aliyuncs.com" \
    --model "text-embedding-v3" \
    --probe-dialect \
    --cred-api-key-prompt

  # Create a Gemini Developer API embedder using an API key
  goodmem embedder create \
    --display-name "Gemini Developer API" \
    --provider-type GEMINI \
    --endpoint-url "https://generativelanguage.googleapis.com" \
    --api-path "/v1beta" \
    --model-identifier "gemini-embedding-2" \
    --dimensionality 1536 \
    --max-sequence-length 8192 \
    --gemini-api-backend developer \
    --cred-api-key-prompt

  # Create a Gemini Google Cloud embedder using ADC (location omitted; server defaults to global)
  goodmem embedder create \
    --display-name "Gemini Google Cloud" \
    --provider-type GEMINI \
    --endpoint-url "https://aiplatform.googleapis.com" \
    --api-path "/v1" \
    --model-identifier "gemini-embedding-2" \
    --dimensionality 1536 \
    --max-sequence-length 8192 \
    --gemini-api-backend google-cloud \
    --gemini-project-id "my-resource-project" \
    --cred-gcp \
    --cred-gcp-scope "https://www.googleapis.com/auth/cloud-platform" \
    --cred-gcp-quota "my-billing-project"

  # Create an embedder for another user (requires admin permissions)
  goodmem embedder create \
    --display-name "Team Embedder" \
    --provider-type OPENAI \
    --endpoint-url "https://api.openai.com/v1" \
    --model-identifier "text-embedding-3-small" \
    --dimensionality 1536 \
    --cred-api-key "YOUR_API_KEY" \
    --owner 123e4567-e89b-12d3-a456-426614174000

Options

      --api-path string                Optional API operation path; omitted values use a provider- and dialect-specific default
      --cred-api-key string            API key for provider endpoint (use "-" to read from piped stdin)
      --cred-api-key-file string       Read API key from file (file should be mode 0600)
      --cred-api-key-prompt            Prompt for API key interactively (requires TTY, input hidden)
      --cred-gcp                       Use Google Application Default Credentials
      --cred-gcp-quota string          Quota project for Google ADC requests
      --cred-gcp-scope strings         Additional Google ADC OAuth scope (can be specified multiple times)
      --dashscope-api-dialect string   DashScope API dialect for DashScope resources only (EMBEDDING_NATIVE_TEXT, EMBEDDING_NATIVE_CONTENTS, or OPENAI_COMPATIBLE)
      --description string             Description of the embedder
      --dimensionality int32           Output vector dimensions (required)
      --display-name string            Display name of the embedder (required)
      --distribution-type string       Embedding distribution type (DENSE, SPARSE) - defaults to DENSE
      --endpoint-url string            Provider endpoint base URL without the operation path (required)
      --gemini-api-backend string      Gemini API backend for Gemini resources only (developer or google-cloud); omitted uses the server default developer
      --gemini-location string         Google Cloud location; requires --gemini-api-backend google-cloud; omitted defaults to global
      --gemini-project-id string       Google Cloud resource project; requires --gemini-api-backend google-cloud
  -h, --help                           help for create
      --id string                      Optional: Client-provided UUID for the embedder (16 bytes). Server generates if omitted.
  -l, --label strings                  Labels in key=value format (can be specified multiple times)
      --max-sequence-length int32      Maximum input sequence length
      --modality strings               Supported modalities (TEXT, IMAGE, AUDIO, VIDEO)
      --model-identifier string        Model identifier (e.g., text-embedding-3-small) (required)
      --monitoring-endpoint string     Optional monitoring endpoint
      --owner string                   Owner ID for the embedder (requires admin permissions)
      --provider-type string           Provider type (OPENAI, VLLM, TEI, LLAMA_CPP, VOYAGE, COHERE, JINA, DASHSCOPE, GEMINI) (required)
      --version string                 Optional version information

Options inherited from parent commands

      --api-key string   API key for authentication (can also be set via GOODMEM_API_KEY environment variable)
      --server string    GoodMem server address (gRPC API)

SEE ALSO