{
  "endpoints": [
    {
      "method": "POST",
      "path": "/api/prompt-optimizer/run-test",
      "description": "Gọi chatbot API để chạy test case và lấy câu trả lời thực tế cùng danh sách product_ids.",
      "payload": {
        "prompt": "System prompt hiện tại (để theo dõi)",
        "test_input": "Câu hỏi của người dùng"
      },
      "response": {
        "status": "success",
        "output": "Câu trả lời của AI",
        "product_ids": ["123", "456"],
        "trace_id": "abc-xyz"
      }
    },
    {
      "method": "POST",
      "path": "/api/prompt-optimizer/judge",
      "description": "AI Judge sử dụng LLM để chấm điểm câu trả lời trên 5 tiêu chí. Tích hợp tự động lấy dữ liệu thật (stock/search) để fact-check.",
      "payload": {
        "test_input": "Câu hỏi từ người dùng",
        "chatbot_output": "Câu trả lời của bot",
        "product_ids": ["123", "456"],
        "expect_keywords": ["giảm giá"],
        "expect_question": true
      },
      "response": {
        "status": "success",
        "metrics": {
          "factual": 1.0,
          "relevance": 0.8,
          "tone": 0.9,
          "helpfulness": 0.5,
          "hallucination": 1.0
        },
        "total": 0.84,
        "reasoning": "Giải thích chi tiết vì sao chấm điểm như vậy bằng tiếng Việt",
        "issues": ["Thiếu thông tin khuyến mãi"]
      }
    },
    {
      "method": "POST",
      "path": "/api/prompt-optimizer/optimize",
      "description": "AI Optimizer phân tích kết quả test (Pass/Fail) và viết lại toàn bộ System Prompt để sửa lỗi.",
      "payload": {
        "current_prompt": "System prompt cũ",
        "test_results": [
          {
            "input": "...",
            "output": "...",
            "score": 0.5,
            "reasoning": "...",
            "issues": ["..."]
          }
        ],
        "version": 1
      },
      "response": {
        "status": "success",
        "analysis": "Phân tích vì sao các test case bị lỗi",
        "changes": ["Thêm rule A", "Bổ sung context B"],
        "new_prompt": "Nội dung system prompt đã được tối ưu",
        "predicted_score": 0.95
      }
    }
  ]
}