Spaces:
Runtime error
Runtime error
| import json | |
| from langchain_community.vectorstores import FAISS | |
| from langchain_openai import OpenAIEmbeddings | |
| import os | |
| OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY") | |
| def load_events(filename): | |
| with open(filename, 'r') as f: | |
| events_data = json.load(f) | |
| return events_data | |
| def store_events_in_faiss(events_data): | |
| embeddings = [] | |
| event_summaries = [] | |
| for event in events_data: | |
| summary = summarize_event(event) # Function to extract relevant summary text | |
| event_summaries.append(summary) | |
| embeddings.append(embed_text(summary)) # Function to embed summary using OpenAI | |
| # Initialize FAISS and store embeddings | |
| openai_embedding_model = OpenAIEmbeddings(model="text-embedding-ada-002", openai_api_key=OPENAI_API_KEY) | |
| faiss_db = FAISS.from_texts(texts=event_summaries, embedding=openai_embedding_model) | |
| return faiss_db | |
| def summarize_event(event): | |
| # Initialize summary components | |
| event_type = event.get('event_type', 'Unknown') | |
| object_ = event.get('object', {}).get('label', 'Unknown') | |
| location = event.get('location', 'Unknown') | |
| timestamp = event.get('timestamp', 'Unknown') | |
| # Create summary string | |
| summary = f"Event Type: {event_type}, Object: {object_}, Location: {location}, Timestamp: {timestamp}" | |
| return summary | |
| def embed_text(text): | |
| # Placeholder for embedding logic using OpenAI | |
| return text | |
| filename = 'camera.json' | |
| events_data = load_events(filename) | |
| faiss_db = store_events_in_faiss(events_data) | |