embeddings_example.py
1 """ 2 Embeddings Capability Example 3 4 Demonstrates text embedding generation using PraisonAI capabilities. 5 Both `embed` and `embedding` work identically - use whichever you prefer. 6 """ 7 8 from praisonai import embed, embedding # Both work from top-level 9 # Or: from praisonai.capabilities import embed, embedding 10 11 # Single text embedding using embed() 12 print("=== Single Text Embedding (using embed) ===") 13 result = embed( 14 input="Hello, world!", 15 model="text-embedding-3-small" 16 ) 17 print(f"Embedding dimensions: {len(result.embeddings[0])}") 18 print(f"First 5 values: {result.embeddings[0][:5]}") 19 print(f"Usage: {result.usage}") 20 21 # Same thing using embedding() alias 22 print("\n=== Single Text Embedding (using embedding alias) ===") 23 result = embedding( 24 input="Hello, world!", 25 model="text-embedding-3-small" 26 ) 27 print(f"Embedding dimensions: {len(result.embeddings[0])}") 28 29 # Multiple text embeddings 30 print("\n=== Multiple Text Embeddings ===") 31 result = embed( 32 input=["Hello", "World", "AI"], 33 model="text-embedding-3-small" 34 ) 35 print(f"Number of embeddings: {len(result.embeddings)}") 36 for i, emb in enumerate(result.embeddings): 37 print(f" Text {i+1}: {len(emb)} dimensions") 38 39 # With custom dimensions (for models that support it) 40 print("\n=== Custom Dimensions ===") 41 result = embed( 42 input="Hello world", 43 model="text-embedding-3-large", 44 dimensions=256 45 ) 46 print(f"Reduced dimensions: {len(result.embeddings[0])}")