Debuguj problemy w systemie TruthSeeker.
Input: Opis problemu lub symptom (np. "API nie odpowiada", "Qdrant timeout")
Steps
- •
Zidentyfikuj kategorię problemu
Symptom Kategoria Przejdź do API nie startuje Aplikacja Krok 2 Timeout / 500 Infrastruktura Krok 3 Błąd OpenAI Zewnętrzne API Krok 4 Playwright error Scraping Krok 5 Puste wyniki RAG Qdrant Krok 6 - •
Debug Aplikacji
Sprawdź logi:
bashcd c:\Users\Trzyb\Desktop\truthseeker uv run python -m src.api.main 2>&1 | tee debug.log
Sprawdź importy:
bashuv run python -c " import sys sys.path.insert(0, '.') from src.agents.orchestrator import Orchestrator from src.infrastructure.llm_client import LLMClient from src.infrastructure.qdrant_service import QdrantService print('Wszystkie importy OK') "Typowe problemy:
- •
ModuleNotFoundError→uv sync - •
ImportError→ sprawdź ścieżki w__init__.py
- •
- •
Debug Infrastruktury
Status kontenerów:
bashdocker-compose ps docker-compose logs --tail=50
Test połączeń:
bash# Qdrant curl http://localhost:6333/collections # PostgreSQL docker exec -it truthseeker-postgres-1 psql -U postgres -c "SELECT 1" # Redis docker exec -it truthseeker-redis-1 redis-cli ping
Restart infrastruktury:
bashdocker-compose down docker-compose up -d
- •
Debug OpenAI API
Test połączenia:
bashuv run python -c " import openai import os client = openai.OpenAI() response = client.chat.completions.create( model='gpt-4o-mini', messages=[{'role': 'user', 'content': 'test'}], max_tokens=5 ) print(f'API OK: {response.choices[0].message.content}') "Typowe błędy:
Błąd Przyczyna Rozwiązanie AuthenticationError Zły klucz Sprawdź OPENAI_API_KEY RateLimitError Limit Poczekaj lub upgrade planu Timeout Sieć Sprawdź proxy/firewall - •
Debug Playwright/Scraping
Test przeglądarki:
bashuv run python -c " import asyncio from playwright.async_api import async_playwright async def test(): async with async_playwright() as p: browser = await p.chromium.launch(headless=True) page = await browser.new_page() await page.goto('https://example.com') print(f'Title: {await page.title()}') await browser.close() asyncio.run(test()) "Jeśli błąd:
bashuv run playwright install uv run playwright install-deps # Linux/WSL
- •
Debug Qdrant/RAG
Sprawdź kolekcje:
bashcurl http://localhost:6333/collections | python -m json.tool
Sprawdź zawartość kolekcji:
bashuv run python -c " from qdrant_client import QdrantClient client = QdrantClient('localhost', port=6333) collections = client.get_collections().collections for col in collections: info = client.get_collection(col.name) print(f'{col.name}: {info.points_count} punktów') "Reset kolekcji (UWAGA: usuwa dane!):
bashcurl -X DELETE http://localhost:6333/collections/<nazwa>
- •
Generuj raport debugowania
Zbierz wszystkie informacje:
bashecho "=== SYSTEM INFO ===" > debug-report.txt python --version >> debug-report.txt docker --version >> debug-report.txt echo "=== DOCKER ===" >> debug-report.txt docker-compose ps >> debug-report.txt echo "=== QDRANT ===" >> debug-report.txt curl -s http://localhost:6333/collections >> debug-report.txt echo "=== ENV ===" >> debug-report.txt type .env | findstr /V "KEY\|SECRET\|PASSWORD" >> debug-report.txt
Output Po zidentyfikowaniu problemu:
- •Opisz przyczynę
- •Podaj rozwiązanie
- •Zweryfikuj naprawę