Spaces:
Build error
Build error
| import os | |
| import pandas as pd | |
| import numpy as np | |
| from openai import OpenAI | |
| from dotenv import load_dotenv | |
| # Load environment variables | |
| load_dotenv() | |
| # 1) Вкажіть свій OpenAI ключ | |
| OPENAI_API_KEY = os.getenv("OPENAI_API_KEY") | |
| client = OpenAI(api_key=os.getenv("OPENAI_API_KEY")) | |
| # 2) Задайте назви файлів | |
| CSV_FILE = "messages_with_labels.csv" # ваш CSV із колонкою "Message" | |
| OUTPUT_EMB_FILE = "embeddings.npy" | |
| MODEL_NAME = "text-embedding-3-small" # або іншу модель | |
| # 3) Зчитайте CSV | |
| df = pd.read_csv(CSV_FILE) | |
| texts = df["Message"].fillna("").tolist() # на випадок, якщо є NaN | |
| embeddings_list = [] | |
| # 4) Викличте OpenAI API для кожного рядка | |
| for i, text in enumerate(texts): | |
| # Результат запиту до OpenAI | |
| response = client.embeddings.create( | |
| input=text, | |
| model=MODEL_NAME | |
| ) | |
| emb = response.data[0].embedding | |
| embeddings_list.append(emb) | |
| # 5) Переведемо список у np.array та збережемо | |
| embedding_matrix = np.array(embeddings_list, dtype=np.float32) | |
| np.save(OUTPUT_EMB_FILE, embedding_matrix) | |
| print(f"Embeddings saved to {OUTPUT_EMB_FILE} with shape {embedding_matrix.shape}") | |