ทำความรู้จักกับ API และระบบตรวจสอบ

เมื่อคุณใช้บริการ AI ผ่าน การสมัคร HolySheheep AI การทำความเข้าใจว่าคำขอของคุณไปอยู่ที่ไหนและได้ผลลัพธ์อย่างไรนั้นสำคัญมาก API ก็เหมือนกล่องจดหมายที่คุณส่งข้อความไปแล้วได้คำตอบกลับมา ส่วนระบบตรวจสอบหรือ Logging ก็เหมือนการจดบันทึกว่าคุณส่งอะไรไปและได้รับอะไรกลับมา

เตรียมเครื่องมือก่อนเริ่มต้น

คุณต้องมีสิ่งต่อไปนี้: บัญชี HolySheep AI ซึ่งมีราคาถูกกว่าบริการอื่นถึง 85% และมีเครดิตฟรีเมื่อลงทะเบียน ความเร็วในการตอบสนองต่ำกว่า 50 มิลลิวินาที รวมถึงโปรแกรมสำหรับเขียนโค้ด แนะนำให้ติดตั้ง Python จากเว็บไซต์ python.org และโปรแกรม Visual Studio Code สำหรับเขียนโค้ด

ขั้นตอนที่ 1: ติดตั้งโปรแกรมที่จำเป็น

เปิดโปรแกรม Command Prompt หรือ Terminal บนคอมพิวเตอร์ของคุณ แล้วพิมพ์คำสั่งติดตั้งไลบรารีที่จะช่วยให้คุณส่งคำขอไปยัง API ได้

pip install requests datetime json

หลังจากติดตั้งเสร็จ คุณจะเห็นข้อความ Successfully installed ซึ่งหมายความว่าพร้อมใช้งานแล้ว

ขั้นตอนที่ 2: สร้างไฟล์สำหรับบันทึกการทำงาน

สร้างโฟลเดอร์ใหม่ชื่อ ai-logging แล้วสร้างไฟล์ชื่อ log_system.py ไว้ข้างใน ไฟล์นี้จะเป็นตัวจัดการระบบบันทึกทั้งหมดของคุณ เปิดไฟล์ด้วย Visual Studio Code แล้วเริ่มเขียนโค้ดตามด้านล่าง

import requests
import json
from datetime import datetime
import os

class AILogger:
    def __init__(self, api_key, log_file="api_log.txt"):
        self.api_key = api_key
        self.log_file = log_file
        self.base_url = "https://api.holysheep.ai/v1"
    
    def log(self, message):
        timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        log_entry = f"[{timestamp}] {message}\n"
        with open(self.log_file, "a", encoding="utf-8") as f:
            f.write(log_entry)
        print(log_entry.strip())
    
    def send_request(self, prompt):
        self.log(f"เริ่มส่งคำขอ: {prompt[:50]}...")
        
        headers = {
            "Authorization": f"Bearer {self.api_key}",
            "Content-Type": "application/json"
        }
        
        data = {
            "model": "gpt-4.1",
            "messages": [{"role": "user", "content": prompt}]
        }
        
        try:
            response = requests.post(
                f"{self.base_url}/chat/completions",
                headers=headers,
                json=data,
                timeout=30
            )
            
            self.log(f"สถานะการตอบกลับ: {response.status_code}")
            
            if response.status_code == 200:
                result = response.json()
                answer = result["choices"][0]["message"]["content"]
                self.log(f"ได้รับคำตอบสำเร็จ: {answer[:100]}...")
                return answer
            else:
                self.log(f"เกิดข้อผิดพลาด: {response.text}")
                return None
                
        except Exception as e:
            self.log(f"Exception เกิดขึ้น: {str(e)}")
            return None

if __name__ == "__main__":
    logger = AILogger("YOUR_HOLYSHEEP_API_KEY")
    logger.log("ระบบบันทึก AI เริ่มทำงาน")
    
    result = logger.send_request("ทักทายฉันด้วยประโยคสั้นๆ")
    
    if result:
        print("\nคำตอบจาก AI:", result)

หลังจากเขียนโค้ดเสร็จ กด Save เพื่อบันทึกไฟล์ แล้วเปิด Terminal ที่โฟลเดอร์เดียวกัน พิมพ์คำสั่ง python log_system.py แล้วกด Enter คุณจะเห็นบันทึกปรากฏบนหน้าจอและถูกบันทึกในไฟล์ api_log.txt ด้วย

ขั้นตอนที่ 3: สร้างระบบตรวจสอบแบบละเอียด

สร้างไฟล์ใหม่ชื่อ detailed_logger.py เพื่อตรวจสอบทุกรายละเอียดของการทำงาน รวมถึงเวลาที่ใช้ ขนาดข้อมูลที่ส่งและรับ และสถานะความสำเร็จ

import requests
import json
from datetime import datetime
import time

class DetailedAILogger:
    def __init__(self, api_key):
        self.api_key = api_key
        self.base_url = "https://api.holysheep.ai/v1"
        self.stats = {"total": 0, "success": 0, "failed": 0}
    
    def create_detailed_log(self, log_type, data):
        timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")[:-3]
        log = {
            "timestamp": timestamp,
            "type": log_type,
            "data": data
        }
        
        filename = f"log_{datetime.now().strftime('%Y%m%d')}.json"
        with open(filename, "a", encoding="utf-8") as f:
            f.write(json.dumps(log, ensure_ascii=False) + "\n")
        
        return log
    
    def analyze_request(self, prompt, max_tokens=100):
        self.stats["total"] += 1
        
        self.create_detailed_log("REQUEST_START", {
            "prompt_length": len(prompt),
            "prompt_preview": prompt[:100]
        })
        
        start_time = time.time()
        
        headers = {
            "Authorization": f"Bearer {self.api_key}",
            "Content-Type": "application/json"
        }
        
        data = {
            "model": "gpt-4.1",
            "messages": [{"role": "user", "content": prompt}],
            "max_tokens": max_tokens
        }
        
        try:
            response = requests.post(
                f"{self.base_url}/chat/completions",
                headers=headers,
                json=data,
                timeout=30
            )
            
            elapsed = time.time() - start_time
            
            self.create_detailed_log("REQUEST_COMPLETE", {
                "status_code": response.status_code,
                "elapsed_seconds": round(elapsed, 3),
                "response_size": len(response.text)
            })
            
            if response.status_code == 200:
                self.stats["success"] += 1
                result = response.json()
                return result["choices"][0]["message"]["content"]
            else:
                self.stats["failed"] += 1
                return None
                
        except requests.exceptions.Timeout:
            self.stats["failed"] += 1
            self.create_detailed_log("ERROR", {"type": "TIMEOUT"})
            return None
        except Exception as e:
            self.stats["failed"] += 1
            self.create_detailed_log("ERROR", {"type": str(e)})
            return None
    
    def print_statistics(self):
        print("\n" + "="*50)
        print("สถิติการใช้งาน API")
        print("="*50)
        print(f"คำขอทั้งหมด: {self.stats['total']}")
        print(f"สำเร็จ: {self.stats['success']}")
        print(f"ล้มเหลว: {self.stats['failed']}")
        if self.stats['total'] > 0:
            success_rate = (self.stats['success'] / self.stats['total']) * 100
            print(f"อัตราความสำเร็จ: {success_rate:.1f}%")
        print("="*50)

if __name__ == "__main__":
    logger = DetailedAILogger("YOUR_HOLYSHEEP_API_KEY")
    
    print("ทดสอบระบบตรวจสอบแบบละเอียด\n")
    
    result = logger.analyze_request("บอกประโยชน์ของการเขียนโปรแกรม")
    
    if result:
        print("\nคำตอบ:", result)
    
    logger.print_statistics()

วิธีดูผลลัพธ์จากระบบบันทึก

หลังจากรันโค้ดแต่ละครั้ง ให้เปิดไฟล์ api_log.txt หรือ log_YYYYMMDD.json ในโฟลเดอร์เดียวกับไฟล์โค้ด คุณจะเห็นข้อมูลดังนี้: วันเวลาที่ส่งคำขอ ข้อความที่ส่งไป สถานะการตอบกลับว่าสำเร็จหรือล้มเหลว และเวลาที่ใช้ในการประมวลผล

การตรวจสอบปัญหาจากไฟล์บันทึก

หากคุณส่งคำขอไปแล้วไม่ได้รับคำตอบ ให้เปิดไฟล์ log ดูว่ามีข้อความ ERROR หรือไม่ ถ้าเห็น status_code เป็นตัวเลขอื่นนอกจาก 200 แสดงว่ามีปัญหาที่ต้องแก