import requests
import time
# Prepare training payload
payload = {
"Router_id": "test_router", # Your custom router name
"dataset": {
"prompts": ['prompt1', 'prompt-2', ...], # Your list of prompts
},
"model_list": "gpt-4o-mini[openai], gemini-1.5-flash-latest[google]", # Candidate models
"assessment_model": "claude-3-5-sonnet-20240620[anthropic]" # Optional quality assessment model
}
# Start training job
response = requests.post(
"https://api.picept.ai/v1/router",
json=payload,
headers={
"Authorization": f"Bearer {PICEPT_API_KEY}",
}
)
# Check training status
job_id = response.json()["job_id"]
router_id = None
while True:
status_response = requests.get(f"https://api.picept.ai/v1/router/{job_id}/status")
status_data = status_response.json()
status = status_data["status"]
print(f"Job status: {status}")
if status == "done":
router_id = status_data.get("router_id")
metrics = status_data.get("metrics", {})
print(f"Router training completed. Router ID: {router_id}")
print("Metrics:")
for key, value in metrics.items():
print(f" {key}: {value}")
break
elif status == "failed":
error_message = status_data.get("error", "Unknown error")
print(f"Router training failed. Error: {error_message}")
break
time.sleep(5) # Wait before next check