Files
hotels/check_graphiti_data.py

78 lines
2.5 KiB
Python
Raw Permalink Normal View History

#!/usr/bin/env python3
from neo4j import GraphDatabase
NEO4J_URI = "bolt://localhost:7687"
NEO4J_USER = "neo4j"
NEO4J_PASSWORD = "supersecret"
driver = GraphDatabase.driver(NEO4J_URI, auth=(NEO4J_USER, NEO4J_PASSWORD))
with driver.session() as session:
print("=" * 70)
print("🔍 ПРОВЕРКА ДАННЫХ В NEO4J (group_id='hotel_spb')")
print("=" * 70)
# Проверяем эпизоды
result = session.run("""
MATCH (e:Episode)
WHERE e.group_id = 'hotel_spb'
RETURN count(e) AS episode_count
""")
episode_count = result.single()["episode_count"]
print(f"\n📄 Эпизодов в hotel_spb: {episode_count}")
if episode_count > 0:
# Примеры эпизодов
result = session.run("""
MATCH (e:Episode)
WHERE e.group_id = 'hotel_spb'
RETURN e.name AS name, e.content AS content,
size(e.embedding) AS emb_size
LIMIT 3
""")
print(f"\n🔍 Примеры эпизодов:")
for r in result:
print(f" Name: {r['name']}")
print(f" Embedding: {r['emb_size']} размерность")
print(f" Content: {r['content'][:120]}...")
print()
# Сущности
result = session.run("""
MATCH (e:Entity)
WHERE e.group_id = 'hotel_spb'
RETURN count(e) AS count
""")
entities = result.single()["count"]
print(f"🏷️ Сущностей: {entities}")
# Рёбра
result = session.run("""
MATCH ()-[r]->()
WHERE r.group_id = 'hotel_spb'
RETURN count(r) AS count
""")
edges = result.single()["count"]
print(f"🔗 Рёбер: {edges}")
else:
print("\n❌ Данных НЕТ!")
print(" Возможно данные загружались с другим group_id")
# Поищем недавно созданные эпизоды
result = session.run("""
MATCH (e:Episode)
WHERE e.created_at > datetime() - duration('PT10M')
RETURN e.group_id AS group_id, count(e) AS count
""")
print("\n Эпизоды созданные за последние 10 минут:")
for r in result:
print(f" group_id='{r['group_id']}': {r['count']} эпизодов")
print("\n" + "=" * 70)
driver.close()