Skip to main content

Overview

OpenAI provides state-of-the-art embedding models including text-embedding-3-small and text-embedding-3-large.

Quick Start

from praisonaiagents import embedding

result = embedding("Hello world", model="text-embedding-3-small")
print(f"Dimensions: {len(result.embeddings[0])}")

CLI Usage

praisonai embed "Hello world" --model text-embedding-3-small

Setup

export OPENAI_API_KEY="sk-..."

Available Models

ModelDimensionsMax TokensUse Case
text-embedding-3-small15368191Cost-effective, general purpose
text-embedding-3-large30728191Highest quality
text-embedding-ada-00215368191Legacy model

Custom Dimensions

OpenAI’s v3 models support dimension reduction:
from praisonaiagents import embedding

# Reduce to 256 dimensions for efficiency
result = embedding("Hello world", model="text-embedding-3-large", dimensions=256)
print(f"Dimensions: {len(result.embeddings[0])}")  # 256

Batch Embeddings

from praisonaiagents import embedding

texts = ["Hello", "World", "AI agents"]
result = embedding(texts, model="text-embedding-3-small")
print(f"Generated {len(result.embeddings)} embeddings")

Async Usage

import asyncio
from praisonaiagents import aembedding

async def main():
    result = await aembedding("Hello world", model="text-embedding-3-small")
    print(f"Dimensions: {len(result.embeddings[0])}")

asyncio.run(main())

Pricing

ModelPrice per 1M tokens
text-embedding-3-small$0.02
text-embedding-3-large$0.13
text-embedding-ada-002$0.10