B1acB1rd commited on
Commit
3f2c201
·
1 Parent(s): 8db5262

Fix numpy array boolean error - convert embedding to list

Browse files
backend/ingestion/scheduler.py CHANGED
@@ -319,7 +319,7 @@ class IngestionScheduler:
319
  competition_level=roi_result["competition_level"],
320
  social_engagement=raw.get("social_engagement", 0),
321
  extra_data=enhanced_metadata,
322
- embedding=embedding
323
  )
324
 
325
  db.add(opportunity)
 
319
  competition_level=roi_result["competition_level"],
320
  social_engagement=raw.get("social_engagement", 0),
321
  extra_data=enhanced_metadata,
322
+ embedding=embedding.tolist() if hasattr(embedding, 'tolist') else embedding
323
  )
324
 
325
  db.add(opportunity)
backend/intelligence/novelty.py CHANGED
@@ -49,11 +49,13 @@ class NoveltyDetector:
49
  Returns:
50
  dict with novelty_score, is_duplicate, most_similar_id
51
  """
52
- if not embedding:
 
53
  return {
54
  "novelty_score": 1.0,
55
  "is_duplicate": False,
56
- "most_similar_id": None
 
57
  }
58
 
59
  # Get recent opportunities with embeddings
@@ -74,7 +76,7 @@ class NoveltyDetector:
74
  most_similar_id = None
75
 
76
  for opp in recent:
77
- if opp.embedding:
78
  similarity = self.cosine_similarity(embedding, opp.embedding)
79
  if similarity > max_similarity:
80
  max_similarity = similarity
 
49
  Returns:
50
  dict with novelty_score, is_duplicate, most_similar_id
51
  """
52
+ # Check if embedding is None or empty (numpy arrays can't use 'if not embedding')
53
+ if embedding is None or (hasattr(embedding, '__len__') and len(embedding) == 0):
54
  return {
55
  "novelty_score": 1.0,
56
  "is_duplicate": False,
57
+ "most_similar_id": None,
58
+ "is_new": True
59
  }
60
 
61
  # Get recent opportunities with embeddings
 
76
  most_similar_id = None
77
 
78
  for opp in recent:
79
+ if opp.embedding is not None and len(opp.embedding) > 0:
80
  similarity = self.cosine_similarity(embedding, opp.embedding)
81
  if similarity > max_similarity:
82
  max_similarity = similarity