Skip to main content

synth_ai.sdk.training

Training SDK - prompt learning, SFT, RL, and GraphGen jobs. This module provides high-level APIs for running training jobs:
  • PromptLearningJob: GEPA and MIPRO prompt optimization
  • SFTJob: Supervised fine-tuning
  • RLJob: Reinforcement learning (GSPO, GRPO, PPO, etc.)
  • GraphGenJob: Automated Design of Agentic Systems (simplified workflows API)
Example:
from synth_ai.sdk.training import PromptLearningJob, RLJob, GraphGenJob
from synth_ai.sdk.task.in_process import InProcessTaskApp

# Prompt optimization
job = PromptLearningJob.from_config("config.toml")
job.submit()
result = job.poll_until_complete()

# RL training with in-process task app
async with InProcessTaskApp(task_app_path="my_task_app.py", port=8114) as task_app:
    rl_job = RLJob.from_config("rl_config.toml", task_app_url=task_app.url)
    rl_job.submit()
    rl_result = rl_job.poll_until_complete()

# GraphGen workflow optimization (no task app needed)
graphgen_job = GraphGenJob.from_dataset("my_tasks.json", rollout_budget=100)
graphgen_job.submit()
result = graphgen_job.stream_until_complete()