CoolFace
Apppublic

DataEyond/Agentic-Service-Data-Eyond

sourceHugging Faceupdated 5mo agoView on Hugging Face
0likes
embedder.py31 linesDownload Raw Back to db_pipeline
1import os2import hashlib3from openai import AzureOpenAI4from dotenv import load_dotenv5from database.data_schema import KnowledgeChunk6 7load_dotenv()8 9 10def embed_table(table_name: str, columns: list[dict], text: str, user_id: str) -> KnowledgeChunk:11    client = AzureOpenAI(12        api_key=os.getenv("azureai__api_key__embedding"),13        azure_endpoint=os.getenv("azureai__endpoint__url__embedding"),14        api_version=os.getenv("azureai__api__version__embedding"),15    )16    response = client.embeddings.create(17        input=text,18        model=os.getenv("azureai__deployment__name__embedding"),19    )20    embedding = response.data[0].embedding  # list[float], 1536 dims21    chunk_id = hashlib.md5(f"database:{user_id}:{table_name}".encode()).hexdigest()22    return KnowledgeChunk(23        id=chunk_id,24        user_id=user_id,25        content=text,26        embedding=embedding,27        source_type="database",28        source_name=table_name,29        metadata={"table_name": table_name, "column_count": len(columns)},30    )31