#!/usr/bin/env python3 """Verify LangSmith tracing is enabled and working. Usage: cd /Users/neetikasaxena/Documents/sanchit/sample_code/chat-with-your-data PYTHONPATH=server venv/bin/python scripts/verify_langsmith.py """ import os import sys def main(): print("=== LangSmith Configuration Check ===\n") # Load .env from server directory from dotenv import load_dotenv env_path = os.path.join(os.path.dirname(__file__), "..", "server", ".env") load_dotenv(env_path) # Check environment variables required_vars = { "LANGCHAIN_TRACING_V2": os.getenv("LANGCHAIN_TRACING_V2"), "LANGCHAIN_ENDPOINT": os.getenv("LANGCHAIN_ENDPOINT"), "LANGCHAIN_API_KEY": os.getenv("LANGCHAIN_API_KEY"), "LANGCHAIN_PROJECT": os.getenv("LANGCHAIN_PROJECT"), "LANGSMITH_WORKSPACE_ID": os.getenv("LANGSMITH_WORKSPACE_ID"), } all_set = True for var, value in required_vars.items(): if value: masked = value if var != "LANGCHAIN_API_KEY" else f"{value[:20]}..." print(f"✓ {var:25} = {masked}") else: print(f"✗ {var:25} = NOT SET") all_set = False print() if not all_set: print("❌ Some LangSmith environment variables are missing.") print(" Make sure server/.env has all required variables.") return 1 print("✓ All LangSmith environment variables are set!") print("\nTo verify tracing is working:") print("1. Start your server: cd server && ../venv/bin/uvicorn server:app --reload") print("2. Make an API call to /simple or /rag") print("3. Check https://smith.langchain.com/ for traced runs") print(f"4. Look in project: {required_vars['LANGCHAIN_PROJECT']}") return 0 if __name__ == "__main__": sys.exit(main())