63 lines
2.2 KiB
Python
63 lines
2.2 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Test script to debug the grounding data flow
|
|
"""
|
|
|
|
import asyncio
|
|
import sys
|
|
import os
|
|
|
|
# Add the backend directory to the path
|
|
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
from services.linkedin_service import LinkedInService
|
|
from models.linkedin_models import LinkedInPostRequest, GroundingLevel
|
|
|
|
async def test_grounding_flow():
|
|
"""Test the grounding data flow"""
|
|
try:
|
|
print("🔍 Testing grounding data flow...")
|
|
|
|
# Initialize the service
|
|
service = LinkedInService()
|
|
print("✅ LinkedInService initialized")
|
|
|
|
# Create a test request
|
|
request = LinkedInPostRequest(
|
|
topic="AI in healthcare transformation",
|
|
industry="Healthcare",
|
|
grounding_level=GroundingLevel.ENHANCED,
|
|
include_citations=True,
|
|
research_enabled=True,
|
|
search_engine="google",
|
|
max_length=2000
|
|
)
|
|
print("✅ Test request created")
|
|
|
|
# Generate post
|
|
print("🚀 Generating LinkedIn post...")
|
|
response = await service.generate_linkedin_post(request)
|
|
|
|
if response.success:
|
|
print("✅ Post generated successfully!")
|
|
print(f"📊 Research sources count: {len(response.research_sources) if response.research_sources else 0}")
|
|
print(f"📝 Citations count: {len(response.data.citations) if response.data.citations else 0}")
|
|
print(f"🔗 Source list: {response.data.source_list[:200] if response.data.source_list else 'None'}")
|
|
|
|
if response.research_sources:
|
|
print(f"📚 First research source: {response.research_sources[0]}")
|
|
print(f"📚 Research source types: {[type(s) for s in response.research_sources[:3]]}")
|
|
|
|
if response.data.citations:
|
|
print(f"📝 First citation: {response.data.citations[0]}")
|
|
else:
|
|
print(f"❌ Post generation failed: {response.error}")
|
|
|
|
except Exception as e:
|
|
print(f"❌ Error during test: {str(e)}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(test_grounding_flow())
|