synth-ai 0.2.14__py3-none-any.whl → 0.4.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of synth-ai might be problematic. Click here for more details.

Files changed (1091) hide show
  1. synth_ai/__init__.py +19 -40
  2. synth_ai/__main__.py +30 -3
  3. synth_ai/cli/__init__.py +105 -70
  4. synth_ai/cli/__main__.py +42 -0
  5. synth_ai/cli/_internal/__init__.py +5 -0
  6. synth_ai/cli/_internal/modal_wrapper.py +31 -0
  7. synth_ai/cli/_internal/storage.py +20 -0
  8. synth_ai/cli/_internal/typer_patch.py +47 -0
  9. synth_ai/cli/_internal/validate_task_app.py +29 -0
  10. synth_ai/cli/agents/__init__.py +17 -0
  11. synth_ai/cli/agents/claude.py +77 -0
  12. synth_ai/cli/agents/codex.py +265 -0
  13. synth_ai/cli/agents/opencode.py +253 -0
  14. synth_ai/cli/commands/__init__.py +18 -0
  15. synth_ai/cli/commands/artifacts/__init__.py +13 -0
  16. synth_ai/cli/commands/artifacts/client.py +119 -0
  17. synth_ai/cli/commands/artifacts/config.py +57 -0
  18. synth_ai/cli/commands/artifacts/core.py +24 -0
  19. synth_ai/cli/commands/artifacts/download.py +188 -0
  20. synth_ai/cli/commands/artifacts/export.py +186 -0
  21. synth_ai/cli/commands/artifacts/list.py +156 -0
  22. synth_ai/cli/commands/artifacts/parsing.py +250 -0
  23. synth_ai/cli/commands/artifacts/show.py +336 -0
  24. synth_ai/cli/commands/baseline/__init__.py +12 -0
  25. synth_ai/cli/commands/baseline/core.py +636 -0
  26. synth_ai/cli/commands/baseline/list.py +94 -0
  27. synth_ai/cli/commands/demo/__init__.py +3 -0
  28. synth_ai/cli/commands/demo/core.py +153 -0
  29. synth_ai/cli/commands/eval/__init__.py +19 -0
  30. synth_ai/cli/commands/eval/core.py +1113 -0
  31. synth_ai/cli/commands/eval/errors.py +81 -0
  32. synth_ai/cli/commands/eval/validation.py +133 -0
  33. synth_ai/cli/commands/filter/__init__.py +12 -0
  34. synth_ai/cli/commands/filter/core.py +424 -0
  35. synth_ai/cli/commands/filter/errors.py +55 -0
  36. synth_ai/cli/commands/filter/validation.py +77 -0
  37. synth_ai/cli/commands/help/__init__.py +185 -0
  38. synth_ai/cli/commands/help/core.py +72 -0
  39. synth_ai/cli/commands/scan/__init__.py +19 -0
  40. synth_ai/cli/commands/scan/cloudflare_scanner.py +403 -0
  41. synth_ai/cli/commands/scan/core.py +344 -0
  42. synth_ai/cli/commands/scan/health_checker.py +242 -0
  43. synth_ai/cli/commands/scan/local_scanner.py +278 -0
  44. synth_ai/cli/commands/scan/models.py +83 -0
  45. synth_ai/cli/commands/smoke/__init__.py +7 -0
  46. synth_ai/cli/commands/smoke/core.py +1438 -0
  47. synth_ai/cli/commands/status/__init__.py +66 -0
  48. synth_ai/cli/commands/status/client.py +192 -0
  49. synth_ai/cli/commands/status/config.py +92 -0
  50. synth_ai/cli/commands/status/errors.py +20 -0
  51. synth_ai/cli/commands/status/formatters.py +164 -0
  52. synth_ai/cli/commands/status/subcommands/__init__.py +9 -0
  53. synth_ai/cli/commands/status/subcommands/files.py +79 -0
  54. synth_ai/cli/commands/status/subcommands/jobs.py +334 -0
  55. synth_ai/cli/commands/status/subcommands/models.py +79 -0
  56. synth_ai/cli/commands/status/subcommands/pricing.py +23 -0
  57. synth_ai/cli/commands/status/subcommands/runs.py +81 -0
  58. synth_ai/cli/commands/status/subcommands/session.py +182 -0
  59. synth_ai/cli/commands/status/subcommands/summary.py +47 -0
  60. synth_ai/cli/commands/status/subcommands/usage.py +203 -0
  61. synth_ai/cli/commands/status/utils.py +114 -0
  62. synth_ai/cli/commands/train/__init__.py +53 -0
  63. synth_ai/cli/commands/train/core.py +22 -0
  64. synth_ai/cli/commands/train/errors.py +117 -0
  65. synth_ai/cli/commands/train/judge_schemas.py +201 -0
  66. synth_ai/cli/commands/train/judge_validation.py +305 -0
  67. synth_ai/cli/commands/train/prompt_learning_validation.py +633 -0
  68. synth_ai/cli/commands/train/validation.py +392 -0
  69. synth_ai/cli/demo_apps/__init__.py +10 -0
  70. synth_ai/cli/demo_apps/core/__init__.py +28 -0
  71. synth_ai/cli/demo_apps/core/cli.py +1735 -0
  72. synth_ai/cli/demo_apps/crafter/crafter_fft_4b.toml +55 -0
  73. synth_ai/cli/demo_apps/crafter/grpo_crafter_task_app.py +186 -0
  74. synth_ai/cli/demo_apps/crafter/rl_from_base_qwen4b.toml +74 -0
  75. synth_ai/cli/demo_apps/demo_registry.py +176 -0
  76. synth_ai/cli/demo_apps/demo_task_apps/core.py +440 -0
  77. synth_ai/cli/demo_apps/demo_task_apps/crafter/__init__.py +1 -0
  78. synth_ai/cli/demo_apps/demo_task_apps/crafter/grpo_crafter_task_app.py +185 -0
  79. synth_ai/cli/demo_apps/demo_task_apps/math/modal_task_app.py +742 -0
  80. synth_ai/cli/demo_apps/demo_task_apps/math/task_app_entry.py +39 -0
  81. synth_ai/cli/demo_apps/math/__init__.py +1 -0
  82. synth_ai/cli/demo_apps/math/_common.py +16 -0
  83. synth_ai/cli/demo_apps/math/app.py +38 -0
  84. synth_ai/cli/demo_apps/math/config.toml +76 -0
  85. synth_ai/cli/demo_apps/math/deploy_modal.py +54 -0
  86. synth_ai/cli/demo_apps/math/modal_task_app.py +702 -0
  87. synth_ai/cli/demo_apps/math/task_app_entry.py +53 -0
  88. synth_ai/cli/demo_apps/mipro/main.py +271 -0
  89. synth_ai/cli/demo_apps/mipro/task_app.py +933 -0
  90. synth_ai/cli/demo_apps/mipro/train_cfg.toml +92 -0
  91. synth_ai/cli/demos/__init__.py +12 -0
  92. synth_ai/cli/demos/demo.py +32 -0
  93. synth_ai/cli/demos/rl_demo.py +254 -0
  94. synth_ai/cli/deploy.py +216 -0
  95. synth_ai/cli/infra/__init__.py +14 -0
  96. synth_ai/cli/infra/balance.py +216 -0
  97. synth_ai/cli/infra/mcp.py +35 -0
  98. synth_ai/cli/infra/modal_app.py +36 -0
  99. synth_ai/cli/infra/setup.py +69 -0
  100. synth_ai/cli/infra/status.py +16 -0
  101. synth_ai/cli/infra/turso.py +77 -0
  102. synth_ai/cli/lib/__init__.py +10 -0
  103. synth_ai/cli/lib/agents.py +76 -0
  104. synth_ai/cli/lib/apps/modal_app.py +101 -0
  105. synth_ai/cli/lib/apps/task_app.py +643 -0
  106. synth_ai/cli/lib/bin.py +39 -0
  107. synth_ai/cli/lib/env.py +375 -0
  108. synth_ai/cli/lib/errors.py +85 -0
  109. synth_ai/cli/lib/modal.py +315 -0
  110. synth_ai/cli/lib/plotting.py +126 -0
  111. synth_ai/cli/lib/prompt_args.py +39 -0
  112. synth_ai/cli/lib/prompts.py +284 -0
  113. synth_ai/cli/lib/sqld.py +122 -0
  114. synth_ai/cli/lib/task_app_discovery.py +884 -0
  115. synth_ai/cli/lib/task_app_env.py +295 -0
  116. synth_ai/cli/lib/train_cfgs.py +300 -0
  117. synth_ai/cli/lib/tunnel_records.py +207 -0
  118. synth_ai/cli/local/__init__.py +14 -0
  119. synth_ai/cli/local/experiment_queue/__init__.py +72 -0
  120. synth_ai/cli/local/experiment_queue/api_schemas.py +221 -0
  121. synth_ai/cli/local/experiment_queue/celery_app.py +208 -0
  122. synth_ai/cli/local/experiment_queue/config.py +128 -0
  123. synth_ai/cli/local/experiment_queue/config_utils.py +272 -0
  124. synth_ai/cli/local/experiment_queue/database.py +175 -0
  125. synth_ai/cli/local/experiment_queue/dispatcher.py +119 -0
  126. synth_ai/cli/local/experiment_queue/models.py +231 -0
  127. synth_ai/cli/local/experiment_queue/progress_info.py +160 -0
  128. synth_ai/cli/local/experiment_queue/results.py +373 -0
  129. synth_ai/cli/local/experiment_queue/schemas.py +131 -0
  130. synth_ai/cli/local/experiment_queue/service.py +344 -0
  131. synth_ai/cli/local/experiment_queue/status.py +372 -0
  132. synth_ai/cli/local/experiment_queue/status_tracker.py +360 -0
  133. synth_ai/cli/local/experiment_queue/tasks.py +1984 -0
  134. synth_ai/cli/local/experiment_queue/trace_storage.py +65 -0
  135. synth_ai/cli/local/experiment_queue/validation.py +157 -0
  136. synth_ai/cli/local/session/__init__.py +92 -0
  137. synth_ai/cli/local/session/client.py +383 -0
  138. synth_ai/cli/local/session/constants.py +63 -0
  139. synth_ai/cli/local/session/exceptions.py +105 -0
  140. synth_ai/cli/local/session/manager.py +139 -0
  141. synth_ai/cli/local/session/models.py +89 -0
  142. synth_ai/cli/local/session/query.py +110 -0
  143. synth_ai/cli/root.py +30 -6
  144. synth_ai/cli/task_apps/__init__.py +26 -0
  145. synth_ai/cli/task_apps/commands.py +3153 -0
  146. synth_ai/cli/task_apps/deploy.py +7 -0
  147. synth_ai/cli/task_apps/list.py +26 -0
  148. synth_ai/cli/task_apps/main.py +36 -0
  149. synth_ai/cli/task_apps/modal_serve.py +11 -0
  150. synth_ai/cli/task_apps/serve.py +11 -0
  151. synth_ai/cli/training/__init__.py +8 -0
  152. synth_ai/cli/training/train.py +5 -0
  153. synth_ai/cli/training/train_cfg.py +34 -0
  154. synth_ai/cli/training/watch.py +506 -0
  155. synth_ai/cli/turso.py +34 -55
  156. synth_ai/cli/usage.py +159 -0
  157. synth_ai/cli/utils/__init__.py +8 -0
  158. synth_ai/cli/utils/experiments.py +235 -0
  159. synth_ai/cli/utils/queue.py +504 -0
  160. synth_ai/cli/utils/recent.py +133 -0
  161. synth_ai/cli/utils/traces.py +164 -0
  162. synth_ai/contracts/__init__.py +67 -0
  163. synth_ai/core/__init__.py +100 -0
  164. synth_ai/core/_utils/__init__.py +54 -0
  165. synth_ai/core/_utils/base_url.py +10 -0
  166. synth_ai/core/_utils/http.py +10 -0
  167. synth_ai/core/_utils/prompts.py +14 -0
  168. synth_ai/core/_utils/task_app_state.py +12 -0
  169. synth_ai/core/_utils/user_config.py +10 -0
  170. synth_ai/core/apps/common.py +116 -0
  171. synth_ai/core/auth.py +95 -0
  172. synth_ai/core/cfgs.py +240 -0
  173. synth_ai/core/config/__init__.py +16 -0
  174. synth_ai/core/config/base.py +168 -0
  175. synth_ai/core/config/resolver.py +89 -0
  176. synth_ai/core/env.py +220 -0
  177. synth_ai/core/errors.py +126 -0
  178. synth_ai/core/http.py +230 -0
  179. synth_ai/core/integrations/__init__.py +11 -0
  180. synth_ai/core/integrations/cloudflare.py +1710 -0
  181. synth_ai/core/integrations/mcp/__init__.py +6 -0
  182. synth_ai/core/integrations/mcp/__main__.py +8 -0
  183. synth_ai/core/integrations/mcp/claude.py +36 -0
  184. synth_ai/core/integrations/mcp/main.py +254 -0
  185. synth_ai/core/integrations/mcp/setup.py +100 -0
  186. synth_ai/core/integrations/modal.py +277 -0
  187. synth_ai/core/json.py +72 -0
  188. synth_ai/core/log_filter.py +99 -0
  189. synth_ai/core/logging.py +82 -0
  190. synth_ai/core/paths.py +107 -0
  191. synth_ai/core/pricing.py +109 -0
  192. synth_ai/core/process.py +233 -0
  193. synth_ai/core/ssl.py +25 -0
  194. synth_ai/core/storage/__init__.py +71 -0
  195. synth_ai/core/task_app_state.py +318 -0
  196. synth_ai/core/telemetry.py +282 -0
  197. synth_ai/core/tracing_v3/__init__.py +99 -0
  198. synth_ai/core/tracing_v3/abstractions.py +302 -0
  199. synth_ai/core/tracing_v3/config.py +229 -0
  200. synth_ai/core/tracing_v3/constants.py +21 -0
  201. synth_ai/core/tracing_v3/db_config.py +182 -0
  202. synth_ai/core/tracing_v3/decorators.py +401 -0
  203. synth_ai/core/tracing_v3/llm_call_record_helpers.py +437 -0
  204. synth_ai/core/tracing_v3/migration_helper.py +119 -0
  205. synth_ai/core/tracing_v3/session_tracer.py +542 -0
  206. synth_ai/core/tracing_v3/storage/base.py +211 -0
  207. synth_ai/core/tracing_v3/storage/config.py +109 -0
  208. synth_ai/core/tracing_v3/storage/factory.py +39 -0
  209. synth_ai/core/tracing_v3/trace_utils.py +326 -0
  210. synth_ai/core/tracing_v3/turso/daemon.py +278 -0
  211. synth_ai/core/tracing_v3/turso/models.py +470 -0
  212. synth_ai/core/tracing_v3/turso/native_manager.py +1385 -0
  213. synth_ai/core/tracing_v3/utils.py +108 -0
  214. synth_ai/core/urls.py +18 -0
  215. synth_ai/core/user_config.py +137 -0
  216. synth_ai/core/uvicorn.py +222 -0
  217. synth_ai/data/__init__.py +110 -0
  218. synth_ai/data/enums.py +141 -0
  219. synth_ai/data/rewards.py +152 -0
  220. synth_ai/data/specs.py +36 -0
  221. synth_ai/data/traces.py +35 -0
  222. synth_ai/products/__init__.py +6 -0
  223. synth_ai/products/graph_evolve/__init__.py +46 -0
  224. synth_ai/products/graph_evolve/client.py +226 -0
  225. synth_ai/products/graph_evolve/config.py +591 -0
  226. synth_ai/products/graph_evolve/converters/__init__.py +42 -0
  227. synth_ai/products/graph_evolve/converters/openai_sft.py +484 -0
  228. synth_ai/products/graph_evolve/examples/hotpotqa/config.toml +109 -0
  229. synth_ai/products/graph_evolve/run.py +222 -0
  230. synth_ai/sdk/__init__.py +119 -0
  231. synth_ai/sdk/api/__init__.py +1 -0
  232. synth_ai/sdk/api/models/supported.py +514 -0
  233. synth_ai/sdk/api/research_agent/__init__.py +86 -0
  234. synth_ai/sdk/api/research_agent/cli.py +428 -0
  235. synth_ai/sdk/api/research_agent/config.py +357 -0
  236. synth_ai/sdk/api/research_agent/job.py +717 -0
  237. synth_ai/sdk/api/train/__init__.py +85 -0
  238. synth_ai/sdk/api/train/builders.py +895 -0
  239. synth_ai/sdk/api/train/cli.py +2188 -0
  240. synth_ai/sdk/api/train/config_finder.py +267 -0
  241. synth_ai/sdk/api/train/configs/__init__.py +65 -0
  242. synth_ai/sdk/api/train/configs/prompt_learning.py +1706 -0
  243. synth_ai/sdk/api/train/configs/rl.py +188 -0
  244. synth_ai/sdk/api/train/configs/sft.py +99 -0
  245. synth_ai/sdk/api/train/configs/shared.py +81 -0
  246. synth_ai/sdk/api/train/context_learning.py +312 -0
  247. synth_ai/sdk/api/train/env_resolver.py +418 -0
  248. synth_ai/sdk/api/train/graph_validators.py +216 -0
  249. synth_ai/sdk/api/train/graphgen.py +984 -0
  250. synth_ai/sdk/api/train/graphgen_models.py +823 -0
  251. synth_ai/sdk/api/train/graphgen_validators.py +109 -0
  252. synth_ai/sdk/api/train/pollers.py +124 -0
  253. synth_ai/sdk/api/train/progress/__init__.py +97 -0
  254. synth_ai/sdk/api/train/progress/dataclasses.py +569 -0
  255. synth_ai/sdk/api/train/progress/events.py +326 -0
  256. synth_ai/sdk/api/train/progress/results.py +428 -0
  257. synth_ai/sdk/api/train/progress/tracker.py +641 -0
  258. synth_ai/sdk/api/train/prompt_learning.py +470 -0
  259. synth_ai/sdk/api/train/rl.py +442 -0
  260. synth_ai/sdk/api/train/sft.py +396 -0
  261. synth_ai/sdk/api/train/summary.py +522 -0
  262. synth_ai/sdk/api/train/supported_algos.py +147 -0
  263. synth_ai/sdk/api/train/task_app.py +331 -0
  264. synth_ai/sdk/api/train/utils.py +279 -0
  265. synth_ai/sdk/api/train/validators.py +2424 -0
  266. synth_ai/sdk/baseline/__init__.py +25 -0
  267. synth_ai/sdk/baseline/config.py +209 -0
  268. synth_ai/sdk/baseline/discovery.py +216 -0
  269. synth_ai/sdk/baseline/execution.py +154 -0
  270. synth_ai/sdk/graphs/__init__.py +15 -0
  271. synth_ai/sdk/graphs/completions.py +570 -0
  272. synth_ai/sdk/inference/__init__.py +6 -0
  273. synth_ai/sdk/inference/client.py +128 -0
  274. synth_ai/sdk/jobs/__init__.py +16 -0
  275. synth_ai/sdk/jobs/client.py +371 -0
  276. synth_ai/sdk/judging/__init__.py +15 -0
  277. synth_ai/sdk/judging/base.py +24 -0
  278. synth_ai/sdk/judging/client.py +191 -0
  279. synth_ai/sdk/judging/schemas.py +222 -0
  280. synth_ai/sdk/learning/__init__.py +69 -0
  281. synth_ai/sdk/learning/client.py +240 -0
  282. synth_ai/sdk/learning/ft_client.py +7 -0
  283. synth_ai/sdk/learning/health.py +49 -0
  284. synth_ai/sdk/learning/jobs.py +202 -0
  285. synth_ai/sdk/learning/prompt_extraction.py +334 -0
  286. synth_ai/sdk/learning/prompt_learning_client.py +455 -0
  287. synth_ai/sdk/learning/prompt_learning_types.py +185 -0
  288. synth_ai/sdk/learning/rl/client.py +268 -0
  289. synth_ai/sdk/learning/rl/contracts.py +27 -0
  290. synth_ai/sdk/learning/rl/env_keys.py +166 -0
  291. synth_ai/sdk/learning/rl/secrets.py +13 -0
  292. synth_ai/sdk/learning/sft/client.py +95 -0
  293. synth_ai/sdk/learning/sft/config.py +270 -0
  294. synth_ai/sdk/learning/sft/data.py +698 -0
  295. synth_ai/sdk/learning/validators.py +52 -0
  296. synth_ai/sdk/research_agent/__init__.py +34 -0
  297. synth_ai/sdk/research_agent/container_builder.py +328 -0
  298. synth_ai/sdk/research_agent/container_spec.py +198 -0
  299. synth_ai/sdk/research_agent/defaults.py +34 -0
  300. synth_ai/sdk/research_agent/results_collector.py +69 -0
  301. synth_ai/sdk/specs/__init__.py +46 -0
  302. synth_ai/sdk/specs/dataclasses.py +149 -0
  303. synth_ai/sdk/specs/loader.py +144 -0
  304. synth_ai/sdk/specs/serializer.py +199 -0
  305. synth_ai/sdk/specs/validation.py +250 -0
  306. synth_ai/sdk/streaming/__init__.py +35 -0
  307. synth_ai/sdk/streaming/config.py +94 -0
  308. synth_ai/sdk/streaming/handlers.py +1997 -0
  309. synth_ai/sdk/streaming/streamer.py +704 -0
  310. synth_ai/sdk/streaming/types.py +112 -0
  311. synth_ai/sdk/task/__init__.py +151 -0
  312. synth_ai/sdk/task/apps/__init__.py +133 -0
  313. synth_ai/sdk/task/config.py +261 -0
  314. synth_ai/sdk/task/contracts.py +298 -0
  315. synth_ai/sdk/task/datasets.py +108 -0
  316. synth_ai/sdk/task/in_process.py +1190 -0
  317. synth_ai/sdk/task/in_process_runner.py +309 -0
  318. synth_ai/sdk/task/inference_api.py +299 -0
  319. synth_ai/sdk/task/proxy.py +287 -0
  320. synth_ai/sdk/task/rubrics/__init__.py +55 -0
  321. synth_ai/sdk/task/rubrics/loaders.py +156 -0
  322. synth_ai/sdk/task/rubrics.py +219 -0
  323. synth_ai/sdk/task/server.py +580 -0
  324. synth_ai/sdk/task/trace_correlation_helpers.py +506 -0
  325. synth_ai/sdk/task/tracing_utils.py +95 -0
  326. synth_ai/sdk/task/validators.py +456 -0
  327. synth_ai/sdk/tracing/__init__.py +39 -0
  328. synth_ai/sdk/training/__init__.py +102 -0
  329. synth_ai/sdk/usage/__init__.py +37 -0
  330. synth_ai/sdk/usage/client.py +171 -0
  331. synth_ai/sdk/usage/models.py +261 -0
  332. synth_ai/utils/__init__.py +213 -0
  333. synth_ai-0.4.1.dist-info/METADATA +195 -0
  334. synth_ai-0.4.1.dist-info/RECORD +379 -0
  335. synth_ai-0.4.1.dist-info/top_level.txt +1 -0
  336. examples/__init__.py +0 -16
  337. examples/analyze_semantic_words.sh +0 -17
  338. examples/crafter_debug_render.py +0 -186
  339. examples/dev/qwen3_32b_qlora_4xh100.toml +0 -40
  340. examples/multi_step/configs/README_verilog_rl.md +0 -77
  341. examples/multi_step/configs/VERILOG_REWARDS.md +0 -90
  342. examples/multi_step/configs/VERILOG_RL_CHECKLIST.md +0 -183
  343. examples/multi_step/configs/crafter_eval_synth_qwen4b.toml +0 -35
  344. examples/multi_step/configs/crafter_eval_text_only_groq_qwen32b.toml +0 -36
  345. examples/multi_step/configs/crafter_rl_outcome.toml +0 -74
  346. examples/multi_step/configs/crafter_rl_stepwise_hosted_judge.toml +0 -187
  347. examples/multi_step/configs/crafter_rl_stepwise_shaped.toml +0 -83
  348. examples/multi_step/configs/crafter_rl_stepwise_simple.toml +0 -78
  349. examples/multi_step/configs/crafter_synth_backend.md +0 -40
  350. examples/multi_step/configs/verilog_eval_groq_qwen32b.toml +0 -31
  351. examples/multi_step/configs/verilog_eval_synth_qwen8b.toml +0 -33
  352. examples/multi_step/configs/verilog_rl_lora.toml +0 -190
  353. examples/multi_step/crafter_rl_lora.md +0 -70
  354. examples/multi_step/judges/crafter_backend_judge.py +0 -220
  355. examples/multi_step/judges/verilog_backend_judge.py +0 -234
  356. examples/multi_step/readme.md +0 -48
  357. examples/multi_step/sse_metrics_streaming_notes.md +0 -357
  358. examples/multi_step/task_app_config_notes.md +0 -494
  359. examples/multi_step/verilog_rl_lora.md +0 -218
  360. examples/qwen_coder/README.md +0 -102
  361. examples/qwen_coder/_shared.py +0 -113
  362. examples/qwen_coder/configs/coder_lora_30b.toml +0 -61
  363. examples/qwen_coder/configs/coder_lora_4b.toml +0 -57
  364. examples/qwen_coder/configs/coder_lora_small.toml +0 -58
  365. examples/qwen_coder/generate_dataset.py +0 -98
  366. examples/qwen_coder/infer_ft_smoke.py +0 -65
  367. examples/qwen_coder/infer_prod_proxy.py +0 -73
  368. examples/qwen_coder/infer_via_synth.py +0 -87
  369. examples/qwen_coder/scripts/infer_coder.sh +0 -19
  370. examples/qwen_coder/scripts/train_coder_30b.sh +0 -22
  371. examples/qwen_coder/sft_full_17b.py +0 -103
  372. examples/qwen_coder/sft_lora_30b.py +0 -110
  373. examples/qwen_coder/subset_jsonl.py +0 -39
  374. examples/qwen_coder/todos.md +0 -38
  375. examples/qwen_coder/validate_jsonl.py +0 -60
  376. examples/rl/README.md +0 -169
  377. examples/rl/download_dataset.py +0 -80
  378. examples/run_crafter_demo.sh +0 -10
  379. examples/sft/README.md +0 -139
  380. examples/sft/configs/crafter_fft_qwen0p6b.toml +0 -44
  381. examples/sft/configs/crafter_lora_qwen0p6b.toml +0 -45
  382. examples/sft/evaluate.py +0 -119
  383. examples/sft/export_dataset.py +0 -117
  384. examples/sft/generate_traces.py +0 -164
  385. examples/swe/__init__.py +0 -12
  386. examples/swe/task_app/README.md +0 -105
  387. examples/swe/task_app/__init__.py +0 -2
  388. examples/swe/task_app/grpo_swe_mini.py +0 -601
  389. examples/swe/task_app/grpo_swe_mini_task_app.py +0 -136
  390. examples/swe/task_app/hosted/README.md +0 -173
  391. examples/swe/task_app/hosted/__init__.py +0 -5
  392. examples/swe/task_app/hosted/branching.py +0 -143
  393. examples/swe/task_app/hosted/environment_routes.py +0 -1289
  394. examples/swe/task_app/hosted/envs/__init__.py +0 -1
  395. examples/swe/task_app/hosted/envs/crafter/__init__.py +0 -6
  396. examples/swe/task_app/hosted/envs/crafter/app.py +0 -1
  397. examples/swe/task_app/hosted/envs/crafter/environment.py +0 -522
  398. examples/swe/task_app/hosted/envs/crafter/policy.py +0 -478
  399. examples/swe/task_app/hosted/envs/crafter/react_agent.py +0 -108
  400. examples/swe/task_app/hosted/envs/crafter/shared.py +0 -305
  401. examples/swe/task_app/hosted/envs/crafter/tools.py +0 -47
  402. examples/swe/task_app/hosted/envs/mini_swe/__init__.py +0 -8
  403. examples/swe/task_app/hosted/envs/mini_swe/environment.py +0 -1164
  404. examples/swe/task_app/hosted/envs/mini_swe/policy.py +0 -355
  405. examples/swe/task_app/hosted/envs/mini_swe/shared.py +0 -83
  406. examples/swe/task_app/hosted/envs/mini_swe/tools.py +0 -96
  407. examples/swe/task_app/hosted/hosted_app.py +0 -204
  408. examples/swe/task_app/hosted/inference/__init__.py +0 -5
  409. examples/swe/task_app/hosted/inference/openai_client.py +0 -618
  410. examples/swe/task_app/hosted/main.py +0 -100
  411. examples/swe/task_app/hosted/policy_routes.py +0 -1079
  412. examples/swe/task_app/hosted/registry.py +0 -195
  413. examples/swe/task_app/hosted/rollout.py +0 -1911
  414. examples/swe/task_app/hosted/storage/__init__.py +0 -5
  415. examples/swe/task_app/hosted/storage/volume.py +0 -211
  416. examples/swe/task_app/hosted/test_agents.py +0 -161
  417. examples/swe/task_app/hosted/test_service.py +0 -136
  418. examples/swe/task_app/hosted/utils.py +0 -62
  419. examples/task_apps/IMAGE_ONLY_EVAL_QUICKSTART.md +0 -258
  420. examples/task_apps/TESTING.md +0 -275
  421. examples/task_apps/crafter/CREATE_SFT_DATASET.md +0 -273
  422. examples/task_apps/crafter/EVAL_IMAGE_ONLY_RESULTS.md +0 -152
  423. examples/task_apps/crafter/FILTER_COMMAND_STATUS.md +0 -174
  424. examples/task_apps/crafter/FILTER_COMMAND_SUCCESS.md +0 -268
  425. examples/task_apps/crafter/QUERY_EXAMPLES.md +0 -203
  426. examples/task_apps/crafter/README_IMAGE_ONLY_EVAL.md +0 -316
  427. examples/task_apps/crafter/__init__.py +0 -0
  428. examples/task_apps/crafter/eval_image_only_gpt4o.toml +0 -28
  429. examples/task_apps/crafter/eval_text_only_groq_llama.toml +0 -36
  430. examples/task_apps/crafter/filter_sft_dataset.toml +0 -16
  431. examples/task_apps/crafter/task_app/README.md +0 -42
  432. examples/task_apps/crafter/task_app/__init__.py +0 -5
  433. examples/task_apps/crafter/task_app/grpo_crafter.py +0 -973
  434. examples/task_apps/crafter/task_app/grpo_crafter_task_app.py +0 -146
  435. examples/task_apps/crafter/task_app/synth_envs_hosted/README.md +0 -173
  436. examples/task_apps/crafter/task_app/synth_envs_hosted/__init__.py +0 -5
  437. examples/task_apps/crafter/task_app/synth_envs_hosted/branching.py +0 -143
  438. examples/task_apps/crafter/task_app/synth_envs_hosted/environment_routes.py +0 -1226
  439. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/__init__.py +0 -1
  440. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/__init__.py +0 -6
  441. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/app.py +0 -1
  442. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/environment.py +0 -532
  443. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/policy.py +0 -547
  444. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/react_agent.py +0 -123
  445. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/shared.py +0 -305
  446. examples/task_apps/crafter/task_app/synth_envs_hosted/envs/crafter/tools.py +0 -47
  447. examples/task_apps/crafter/task_app/synth_envs_hosted/hosted_app.py +0 -204
  448. examples/task_apps/crafter/task_app/synth_envs_hosted/inference/__init__.py +0 -5
  449. examples/task_apps/crafter/task_app/synth_envs_hosted/inference/openai_client.py +0 -704
  450. examples/task_apps/crafter/task_app/synth_envs_hosted/main.py +0 -100
  451. examples/task_apps/crafter/task_app/synth_envs_hosted/policy_routes.py +0 -1152
  452. examples/task_apps/crafter/task_app/synth_envs_hosted/registry.py +0 -195
  453. examples/task_apps/crafter/task_app/synth_envs_hosted/rollout.py +0 -2160
  454. examples/task_apps/crafter/task_app/synth_envs_hosted/storage/__init__.py +0 -5
  455. examples/task_apps/crafter/task_app/synth_envs_hosted/storage/volume.py +0 -211
  456. examples/task_apps/crafter/task_app/synth_envs_hosted/test_agents.py +0 -161
  457. examples/task_apps/crafter/task_app/synth_envs_hosted/test_service.py +0 -136
  458. examples/task_apps/crafter/task_app/synth_envs_hosted/utils.py +0 -218
  459. examples/task_apps/dev/pokemon_emerald/__init__.py +0 -2
  460. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/README.md +0 -811
  461. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/__init__.py +0 -120
  462. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/action.py +0 -160
  463. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/memory.py +0 -155
  464. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/perception.py +0 -69
  465. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/planning.py +0 -96
  466. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/simple.py +0 -1502
  467. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/agent/system_prompt.py +0 -4
  468. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/grab_map.py +0 -68
  469. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/manual.py +0 -216
  470. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/__init__.py +0 -35
  471. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/emerald_utils.py +0 -631
  472. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/emulator.py +0 -1544
  473. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/enums.py +0 -1428
  474. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/memory_reader.py +0 -4848
  475. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/types.py +0 -41
  476. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pokemon_env/utils.py +0 -298
  477. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/pyproject.toml +0 -95
  478. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/run.py +0 -204
  479. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/server/__init__.py +0 -0
  480. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/server/app.py +0 -2152
  481. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/server/client.py +0 -429
  482. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/server/frame_server.py +0 -155
  483. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/README.md +0 -78
  484. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/__init__.py +0 -0
  485. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/run_tests.py +0 -122
  486. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_agent_direct.py +0 -76
  487. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_agent_prompts.py +0 -413
  488. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_battle_state_formatting.py +0 -204
  489. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_dialogue_detection.py +0 -133
  490. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_dialogue_detection_comprehensive.py +0 -229
  491. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_direct_agent_emulator.py +0 -300
  492. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_fps_adjustment_pytest.py +0 -205
  493. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_house_to_outside_direct.py +0 -200
  494. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_house_to_outside_transition.py +0 -284
  495. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_map_ground_truth_comparison.py +0 -468
  496. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_memory_map.py +0 -575
  497. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_server_map_validation.py +0 -311
  498. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/tests/test_torchic_state.py +0 -259
  499. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/__init__.py +0 -0
  500. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/anticheat.py +0 -372
  501. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/checkpoint.py +0 -296
  502. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/error_handler.py +0 -275
  503. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/get_local_ip.py +0 -22
  504. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/helpers.py +0 -44
  505. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/llm_logger.py +0 -514
  506. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/map_formatter.py +0 -415
  507. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/map_stitcher.py +0 -1763
  508. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/map_stitcher_singleton.py +0 -33
  509. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/map_trimmer.py +0 -106
  510. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/map_visualizer.py +0 -334
  511. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/ocr_dialogue.py +0 -1020
  512. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/recording.py +0 -188
  513. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/state_formatter.py +0 -1481
  514. examples/task_apps/dev/pokemon_emerald/external/pokeagent-speedrun/utils/vlm.py +0 -862
  515. examples/task_apps/dev/pokemon_emerald/modal_app.py +0 -114
  516. examples/task_apps/dev/pokemon_emerald/task_app/README.md +0 -81
  517. examples/task_apps/dev/pokemon_emerald/task_app/__init__.py +0 -6
  518. examples/task_apps/dev/pokemon_emerald/task_app/pokemon_emerald.py +0 -685
  519. examples/task_apps/enron/__init__.py +0 -1
  520. examples/task_apps/enron/eval_groq_qwen32.toml +0 -16
  521. examples/task_apps/enron/filter_sft.toml +0 -5
  522. examples/task_apps/enron/task_app/README.md +0 -14
  523. examples/task_apps/enron/task_app/__init__.py +0 -1
  524. examples/task_apps/enron/task_app/grpo_enron.py +0 -906
  525. examples/task_apps/enron/task_app/grpo_enron_task_app.py +0 -146
  526. examples/task_apps/enron/tests/__init__.py +0 -4
  527. examples/task_apps/enron/tests/conftest.py +0 -115
  528. examples/task_apps/enron/tests/integration/__init__.py +0 -4
  529. examples/task_apps/enron/tests/integration/test_enron_eval.py +0 -179
  530. examples/task_apps/enron/tests/integration/test_enron_rollout.py +0 -135
  531. examples/task_apps/enron/tests/unit/__init__.py +0 -4
  532. examples/task_apps/enron/tests/unit/test_enron_environment.py +0 -126
  533. examples/task_apps/math/README.md +0 -22
  534. examples/task_apps/math/__init__.py +0 -0
  535. examples/task_apps/math/math_single_step.py +0 -1000
  536. examples/task_apps/math/math_task_app.py +0 -115
  537. examples/task_apps/pokemon_battle/__init__.py +0 -2
  538. examples/task_apps/pokemon_battle/modal_app.py +0 -104
  539. examples/task_apps/pokemon_battle/task_app/README.md +0 -68
  540. examples/task_apps/pokemon_battle/task_app/__init__.py +0 -6
  541. examples/task_apps/pokemon_battle/task_app/pokemon_showdown.py +0 -932
  542. examples/task_apps/pokemon_red/EVAL_IMAGE_ONLY_COMPLETE.md +0 -283
  543. examples/task_apps/pokemon_red/EVAL_IMAGE_ONLY_STATUS.md +0 -155
  544. examples/task_apps/pokemon_red/README.md +0 -357
  545. examples/task_apps/pokemon_red/README_IMAGE_ONLY_EVAL.md +0 -415
  546. examples/task_apps/pokemon_red/__init__.py +0 -3
  547. examples/task_apps/pokemon_red/eval_image_only_gpt4o.toml +0 -29
  548. examples/task_apps/pokemon_red/eval_pokemon_red_policy.py +0 -225
  549. examples/task_apps/pokemon_red/pallet_town_rl_config.toml +0 -75
  550. examples/task_apps/pokemon_red/task_app.py +0 -799
  551. examples/task_apps/pokemon_red/test_pallet_town_rewards.py +0 -193
  552. examples/task_apps/sokoban/README.md +0 -307
  553. examples/task_apps/sokoban/__init__.py +0 -3
  554. examples/task_apps/sokoban/eval_groq_qwen32.toml +0 -16
  555. examples/task_apps/sokoban/eval_openai_gpt5.toml +0 -16
  556. examples/task_apps/sokoban/filter_sft.toml +0 -5
  557. examples/task_apps/sokoban/task_app.py +0 -1058
  558. examples/task_apps/sokoban/tests/__init__.py +0 -4
  559. examples/task_apps/sokoban/tests/conftest.py +0 -113
  560. examples/task_apps/sokoban/tests/integration/__init__.py +0 -4
  561. examples/task_apps/sokoban/tests/integration/test_sokoban_eval.py +0 -57
  562. examples/task_apps/sokoban/tests/integration/test_sokoban_rollout.py +0 -198
  563. examples/task_apps/sokoban/tests/unit/__init__.py +0 -4
  564. examples/task_apps/sokoban/tests/unit/test_sokoban_environment.py +0 -114
  565. examples/task_apps/verilog/__init__.py +0 -1
  566. examples/task_apps/verilog/eval_groq_qwen32b.toml +0 -24
  567. examples/task_apps/verilog/filter_sft.toml +0 -5
  568. examples/task_apps/verilog/task_app/README.md +0 -12
  569. examples/task_apps/verilog/task_app/__init__.py +0 -1
  570. examples/task_apps/verilog/task_app/grpo_verilog.py +0 -1166
  571. examples/task_apps/verilog/task_app/grpo_verilog_task_app.py +0 -145
  572. examples/task_apps/verilog/tests/__init__.py +0 -4
  573. examples/task_apps/verilog/tests/conftest.py +0 -115
  574. examples/task_apps/verilog/tests/integration/__init__.py +0 -4
  575. examples/task_apps/verilog/tests/integration/test_verilog_eval.py +0 -181
  576. examples/task_apps/verilog/tests/integration/test_verilog_rollout.py +0 -55
  577. examples/task_apps/verilog/tests/unit/__init__.py +0 -4
  578. examples/task_apps/verilog/tests/unit/test_verilog_scoring.py +0 -118
  579. examples/vlm/PROPOSAL.md +0 -53
  580. examples/vlm/README.md +0 -68
  581. examples/vlm/configs/crafter_vlm_gpt4o.toml +0 -44
  582. examples/vlm/crafter_image_only_agent.py +0 -207
  583. examples/vlm/crafter_openai_vlm_agent.py +0 -277
  584. examples/vlm/filter_image_rows.py +0 -63
  585. examples/vlm/run_crafter_vlm_benchmark.py +0 -316
  586. examples/warming_up_to_rl/analyze_trace_db.py +0 -422
  587. examples/warming_up_to_rl/configs/crafter_fft.toml +0 -48
  588. examples/warming_up_to_rl/configs/crafter_fft_4b.toml +0 -54
  589. examples/warming_up_to_rl/configs/eval_fft_qwen4b.toml +0 -20
  590. examples/warming_up_to_rl/configs/eval_groq_qwen32b.toml +0 -13
  591. examples/warming_up_to_rl/configs/eval_modal_qwen4b.toml +0 -23
  592. examples/warming_up_to_rl/configs/eval_stepwise_complex.toml +0 -35
  593. examples/warming_up_to_rl/configs/eval_stepwise_consistent.toml +0 -26
  594. examples/warming_up_to_rl/configs/eval_stepwise_per_achievement.toml +0 -36
  595. examples/warming_up_to_rl/configs/eval_stepwise_simple.toml +0 -32
  596. examples/warming_up_to_rl/configs/rl_from_base_qwen4b.toml +0 -83
  597. examples/warming_up_to_rl/configs/rl_from_ft.toml +0 -56
  598. examples/warming_up_to_rl/export_trace_sft.py +0 -723
  599. examples/warming_up_to_rl/groq_test.py +0 -97
  600. examples/warming_up_to_rl/manage_secrets.py +0 -131
  601. examples/warming_up_to_rl/old/event_rewards.md +0 -234
  602. examples/warming_up_to_rl/old/notes.md +0 -73
  603. examples/warming_up_to_rl/readme.md +0 -179
  604. examples/warming_up_to_rl/run_eval.py +0 -736
  605. examples/warming_up_to_rl/run_fft_and_save.py +0 -380
  606. examples/warming_up_to_rl/run_local_rollout.py +0 -239
  607. examples/warming_up_to_rl/run_local_rollout_modal.py +0 -248
  608. examples/warming_up_to_rl/run_local_rollout_parallel.py +0 -405
  609. examples/warming_up_to_rl/run_local_rollout_traced.py +0 -477
  610. examples/warming_up_to_rl/run_rl_and_save.py +0 -124
  611. examples/warming_up_to_rl/run_rollout_remote.py +0 -156
  612. examples/workflows/__init__.py +0 -0
  613. examples/workflows/math_rl/__init__.py +0 -0
  614. examples/workflows/math_rl/configs/eval_base_qwen.toml +0 -15
  615. examples/workflows/math_rl/configs/eval_rl_qwen.toml +0 -11
  616. examples/workflows/math_rl/configs/rl_from_base_qwen.toml +0 -35
  617. examples/workflows/math_rl/configs/rl_from_base_qwen17.toml +0 -74
  618. examples/workflows/math_rl/configs/rl_from_ft_qwen.toml +0 -35
  619. examples/workflows/math_rl/download_dataset.py +0 -80
  620. examples/workflows/math_rl/run_eval.py +0 -436
  621. examples/workflows/math_rl/run_rl_and_save.py +0 -111
  622. synth_ai/api/models/supported.py +0 -377
  623. synth_ai/api/train/__init__.py +0 -5
  624. synth_ai/api/train/builders.py +0 -351
  625. synth_ai/api/train/cli.py +0 -635
  626. synth_ai/api/train/config_finder.py +0 -228
  627. synth_ai/api/train/configs/__init__.py +0 -44
  628. synth_ai/api/train/configs/rl.py +0 -134
  629. synth_ai/api/train/configs/sft.py +0 -95
  630. synth_ai/api/train/configs/shared.py +0 -24
  631. synth_ai/api/train/env_resolver.py +0 -349
  632. synth_ai/api/train/pollers.py +0 -75
  633. synth_ai/api/train/supported_algos.py +0 -147
  634. synth_ai/api/train/task_app.py +0 -195
  635. synth_ai/api/train/utils.py +0 -225
  636. synth_ai/cli/_modal_wrapper.py +0 -29
  637. synth_ai/cli/_storage.py +0 -20
  638. synth_ai/cli/_typer_patch.py +0 -49
  639. synth_ai/cli/_validate_task_app.py +0 -11
  640. synth_ai/cli/balance.py +0 -216
  641. synth_ai/cli/calc.py +0 -84
  642. synth_ai/cli/demo.py +0 -165
  643. synth_ai/cli/legacy_root_backup.py +0 -468
  644. synth_ai/cli/man.py +0 -106
  645. synth_ai/cli/recent.py +0 -132
  646. synth_ai/cli/rl_demo.py +0 -254
  647. synth_ai/cli/status.py +0 -134
  648. synth_ai/cli/task_apps.py +0 -4523
  649. synth_ai/cli/traces.py +0 -164
  650. synth_ai/cli/tui.py +0 -57
  651. synth_ai/cli/watch.py +0 -506
  652. synth_ai/compound/cais.py +0 -0
  653. synth_ai/config/base_url.py +0 -107
  654. synth_ai/core/experiment.py +0 -13
  655. synth_ai/core/system.py +0 -15
  656. synth_ai/demo_registry.py +0 -295
  657. synth_ai/demos/core/__init__.py +0 -1
  658. synth_ai/demos/core/cli.py +0 -1718
  659. synth_ai/demos/demo_task_apps/core.py +0 -440
  660. synth_ai/demos/demo_task_apps/crafter/grpo_crafter_task_app.py +0 -184
  661. synth_ai/demos/demo_task_apps/math/deploy_task_app.sh +0 -22
  662. synth_ai/demos/demo_task_apps/math/modal_task_app.py +0 -739
  663. synth_ai/demos/demo_task_apps/math/task_app_entry.py +0 -37
  664. synth_ai/environments/__init__.py +0 -31
  665. synth_ai/environments/environment/__init__.py +0 -1
  666. synth_ai/environments/environment/artifacts/__init__.py +0 -1
  667. synth_ai/environments/environment/artifacts/base.py +0 -52
  668. synth_ai/environments/environment/core.py +0 -67
  669. synth_ai/environments/environment/db/__init__.py +0 -1
  670. synth_ai/environments/environment/db/sqlite.py +0 -45
  671. synth_ai/environments/environment/registry.py +0 -233
  672. synth_ai/environments/environment/resources/sqlite.py +0 -45
  673. synth_ai/environments/environment/results.py +0 -1
  674. synth_ai/environments/environment/rewards/__init__.py +0 -1
  675. synth_ai/environments/environment/rewards/core.py +0 -29
  676. synth_ai/environments/environment/shared_engine.py +0 -26
  677. synth_ai/environments/environment/tools/__init__.py +0 -200
  678. synth_ai/environments/examples/__init__.py +0 -1
  679. synth_ai/environments/examples/bandit/__init__.py +0 -33
  680. synth_ai/environments/examples/bandit/engine.py +0 -302
  681. synth_ai/environments/examples/bandit/environment.py +0 -194
  682. synth_ai/environments/examples/bandit/taskset.py +0 -200
  683. synth_ai/environments/examples/crafter_classic/__init__.py +0 -8
  684. synth_ai/environments/examples/crafter_classic/agent_demos/analyze_semantic_words_markdown.py +0 -250
  685. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_comprehensive_evaluation.py +0 -59
  686. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_evaluation_browser.py +0 -152
  687. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_evaluation_config.toml +0 -24
  688. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_evaluation_framework.py +0 -1194
  689. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/crafter_synth_config.toml +0 -56
  690. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/filter_config_modal.toml +0 -32
  691. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/filter_traces_sft_turso.py +0 -738
  692. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/kick_off_ft_modal.py +0 -384
  693. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_action_results.py +0 -53
  694. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_agent_actions.py +0 -178
  695. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_latest_run.py +0 -222
  696. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_lm_traces.py +0 -183
  697. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_no_rewards.py +0 -210
  698. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/analyze_trace_issue.py +0 -206
  699. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/check_db_schema.py +0 -49
  700. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/check_latest_results.py +0 -64
  701. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/debug_agent_responses.py +0 -88
  702. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_modal_ft/old/quick_trace_check.py +0 -77
  703. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/compare_experiments.py +0 -324
  704. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/filter_traces_sft_turso.py +0 -580
  705. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/kick_off_ft_oai.py +0 -362
  706. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/multi_model_config.toml +0 -49
  707. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/analyze_enhanced_hooks.py +0 -332
  708. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/analyze_hook_events.py +0 -97
  709. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/analyze_hook_results.py +0 -217
  710. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/check_hook_storage.py +0 -87
  711. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/check_seeds.py +0 -88
  712. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/compare_seed_performance.py +0 -195
  713. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/custom_eval_pipelines.py +0 -400
  714. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/plot_hook_frequency.py +0 -195
  715. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/old/seed_analysis_summary.py +0 -56
  716. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_openai_ft/run_rollouts_for_models_and_compare_v3.py +0 -858
  717. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_quick_evaluation.py +0 -52
  718. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_react_agent.py +0 -874
  719. synth_ai/environments/examples/crafter_classic/agent_demos/crafter_trace_evaluation.py +0 -1412
  720. synth_ai/environments/examples/crafter_classic/agent_demos/example_v3_usage.py +0 -216
  721. synth_ai/environments/examples/crafter_classic/agent_demos/old/compare_traces.py +0 -296
  722. synth_ai/environments/examples/crafter_classic/agent_demos/old/crafter_comprehensive_evaluation.py +0 -58
  723. synth_ai/environments/examples/crafter_classic/agent_demos/old/crafter_env_serialization.py +0 -464
  724. synth_ai/environments/examples/crafter_classic/agent_demos/old/crafter_evaluation_browser.py +0 -152
  725. synth_ai/environments/examples/crafter_classic/agent_demos/old/crafter_quick_evaluation.py +0 -51
  726. synth_ai/environments/examples/crafter_classic/agent_demos/old/crafter_trace_evaluation.py +0 -1412
  727. synth_ai/environments/examples/crafter_classic/agent_demos/old/debug_player_loss.py +0 -112
  728. synth_ai/environments/examples/crafter_classic/agent_demos/old/diagnose_service.py +0 -203
  729. synth_ai/environments/examples/crafter_classic/agent_demos/old/diagnose_slowness.py +0 -305
  730. synth_ai/environments/examples/crafter_classic/agent_demos/old/eval_by_difficulty.py +0 -126
  731. synth_ai/environments/examples/crafter_classic/agent_demos/old/eval_example.py +0 -94
  732. synth_ai/environments/examples/crafter_classic/agent_demos/old/explore_saved_states.py +0 -142
  733. synth_ai/environments/examples/crafter_classic/agent_demos/old/filter_traces_sft.py +0 -26
  734. synth_ai/environments/examples/crafter_classic/agent_demos/old/filter_traces_sft_OLD.py +0 -984
  735. synth_ai/environments/examples/crafter_classic/agent_demos/old/generate_ft_data_gemini.py +0 -724
  736. synth_ai/environments/examples/crafter_classic/agent_demos/old/generate_ft_data_modal.py +0 -386
  737. synth_ai/environments/examples/crafter_classic/agent_demos/old/generate_ft_metadata.py +0 -205
  738. synth_ai/environments/examples/crafter_classic/agent_demos/old/kick_off_ft_gemini.py +0 -150
  739. synth_ai/environments/examples/crafter_classic/agent_demos/old/kick_off_ft_modal.py +0 -283
  740. synth_ai/environments/examples/crafter_classic/agent_demos/old/prepare_vertex_ft.py +0 -280
  741. synth_ai/environments/examples/crafter_classic/agent_demos/old/profile_env_slowness.py +0 -456
  742. synth_ai/environments/examples/crafter_classic/agent_demos/old/replicate_issue.py +0 -166
  743. synth_ai/environments/examples/crafter_classic/agent_demos/old/run_and_eval.py +0 -102
  744. synth_ai/environments/examples/crafter_classic/agent_demos/old/run_comparison.py +0 -128
  745. synth_ai/environments/examples/crafter_classic/agent_demos/old/run_qwen_rollouts.py +0 -655
  746. synth_ai/environments/examples/crafter_classic/agent_demos/old/trace_eval_OLD.py +0 -202
  747. synth_ai/environments/examples/crafter_classic/agent_demos/old/validate_openai_format.py +0 -166
  748. synth_ai/environments/examples/crafter_classic/config_logging.py +0 -111
  749. synth_ai/environments/examples/crafter_classic/debug_translation.py +0 -0
  750. synth_ai/environments/examples/crafter_classic/engine.py +0 -579
  751. synth_ai/environments/examples/crafter_classic/engine_deterministic_patch.py +0 -64
  752. synth_ai/environments/examples/crafter_classic/engine_helpers/action_map.py +0 -6
  753. synth_ai/environments/examples/crafter_classic/engine_helpers/serialization.py +0 -75
  754. synth_ai/environments/examples/crafter_classic/engine_serialization_patch_v3.py +0 -267
  755. synth_ai/environments/examples/crafter_classic/environment.py +0 -495
  756. synth_ai/environments/examples/crafter_classic/taskset.py +0 -233
  757. synth_ai/environments/examples/crafter_classic/trace_hooks_v3.py +0 -228
  758. synth_ai/environments/examples/crafter_classic/world_config_patch_simple.py +0 -299
  759. synth_ai/environments/examples/crafter_custom/__init__.py +0 -4
  760. synth_ai/environments/examples/crafter_custom/agent_demos/__init__.py +0 -1
  761. synth_ai/environments/examples/crafter_custom/agent_demos/trace_eval.py +0 -202
  762. synth_ai/environments/examples/crafter_custom/crafter/__init__.py +0 -7
  763. synth_ai/environments/examples/crafter_custom/crafter/config.py +0 -182
  764. synth_ai/environments/examples/crafter_custom/crafter/constants.py +0 -8
  765. synth_ai/environments/examples/crafter_custom/crafter/engine.py +0 -269
  766. synth_ai/environments/examples/crafter_custom/crafter/env.py +0 -262
  767. synth_ai/environments/examples/crafter_custom/crafter/objects.py +0 -417
  768. synth_ai/environments/examples/crafter_custom/crafter/recorder.py +0 -187
  769. synth_ai/environments/examples/crafter_custom/crafter/worldgen.py +0 -118
  770. synth_ai/environments/examples/crafter_custom/dataset_builder.py +0 -373
  771. synth_ai/environments/examples/crafter_custom/environment.py +0 -312
  772. synth_ai/environments/examples/crafter_custom/old/analyze_diamond_issue.py +0 -159
  773. synth_ai/environments/examples/crafter_custom/old/analyze_diamond_spawning.py +0 -158
  774. synth_ai/environments/examples/crafter_custom/old/compare_worlds.py +0 -71
  775. synth_ai/environments/examples/crafter_custom/old/dataset_stats.py +0 -105
  776. synth_ai/environments/examples/crafter_custom/old/diamond_spawning_summary.py +0 -119
  777. synth_ai/environments/examples/crafter_custom/old/example_dataset_usage.py +0 -52
  778. synth_ai/environments/examples/crafter_custom/run_dataset.py +0 -305
  779. synth_ai/environments/examples/enron/art_helpers/email_search_tools.py +0 -156
  780. synth_ai/environments/examples/enron/art_helpers/local_email_db.py +0 -281
  781. synth_ai/environments/examples/enron/art_helpers/types_enron.py +0 -25
  782. synth_ai/environments/examples/enron/engine.py +0 -300
  783. synth_ai/environments/examples/enron/environment.py +0 -234
  784. synth_ai/environments/examples/enron/taskset.py +0 -112
  785. synth_ai/environments/examples/enron/units/keyword_stats.py +0 -112
  786. synth_ai/environments/examples/minigrid/__init__.py +0 -48
  787. synth_ai/environments/examples/minigrid/agent_demos/minigrid_evaluation_framework.py +0 -1188
  788. synth_ai/environments/examples/minigrid/agent_demos/minigrid_quick_evaluation.py +0 -48
  789. synth_ai/environments/examples/minigrid/agent_demos/minigrid_react_agent.py +0 -562
  790. synth_ai/environments/examples/minigrid/agent_demos/minigrid_trace_evaluation.py +0 -221
  791. synth_ai/environments/examples/minigrid/engine.py +0 -589
  792. synth_ai/environments/examples/minigrid/environment.py +0 -274
  793. synth_ai/environments/examples/minigrid/environment_mapping.py +0 -242
  794. synth_ai/environments/examples/minigrid/puzzle_loader.py +0 -417
  795. synth_ai/environments/examples/minigrid/taskset.py +0 -583
  796. synth_ai/environments/examples/nethack/__init__.py +0 -7
  797. synth_ai/environments/examples/nethack/achievements.py +0 -337
  798. synth_ai/environments/examples/nethack/agent_demos/nethack_evaluation_framework.py +0 -981
  799. synth_ai/environments/examples/nethack/agent_demos/nethack_quick_evaluation.py +0 -74
  800. synth_ai/environments/examples/nethack/agent_demos/nethack_react_agent.py +0 -831
  801. synth_ai/environments/examples/nethack/engine.py +0 -739
  802. synth_ai/environments/examples/nethack/environment.py +0 -256
  803. synth_ai/environments/examples/nethack/helpers/__init__.py +0 -41
  804. synth_ai/environments/examples/nethack/helpers/action_mapping.py +0 -301
  805. synth_ai/environments/examples/nethack/helpers/nle_wrapper.py +0 -402
  806. synth_ai/environments/examples/nethack/helpers/observation_utils.py +0 -433
  807. synth_ai/environments/examples/nethack/helpers/recording_wrapper.py +0 -200
  808. synth_ai/environments/examples/nethack/helpers/trajectory_recorder.py +0 -269
  809. synth_ai/environments/examples/nethack/helpers/visualization/replay_viewer.py +0 -308
  810. synth_ai/environments/examples/nethack/helpers/visualization/visualizer.py +0 -431
  811. synth_ai/environments/examples/nethack/taskset.py +0 -323
  812. synth_ai/environments/examples/red/__init__.py +0 -7
  813. synth_ai/environments/examples/red/agent_demos/__init__.py +0 -1
  814. synth_ai/environments/examples/red/config_logging.py +0 -110
  815. synth_ai/environments/examples/red/engine.py +0 -721
  816. synth_ai/environments/examples/red/engine_helpers/__init__.py +0 -1
  817. synth_ai/environments/examples/red/engine_helpers/memory_map.py +0 -35
  818. synth_ai/environments/examples/red/engine_helpers/reward_components.py +0 -276
  819. synth_ai/environments/examples/red/engine_helpers/reward_library/__init__.py +0 -142
  820. synth_ai/environments/examples/red/engine_helpers/reward_library/adaptive_rewards.py +0 -57
  821. synth_ai/environments/examples/red/engine_helpers/reward_library/battle_rewards.py +0 -284
  822. synth_ai/environments/examples/red/engine_helpers/reward_library/composite_rewards.py +0 -150
  823. synth_ai/environments/examples/red/engine_helpers/reward_library/economy_rewards.py +0 -138
  824. synth_ai/environments/examples/red/engine_helpers/reward_library/efficiency_rewards.py +0 -57
  825. synth_ai/environments/examples/red/engine_helpers/reward_library/exploration_rewards.py +0 -331
  826. synth_ai/environments/examples/red/engine_helpers/reward_library/novelty_rewards.py +0 -121
  827. synth_ai/environments/examples/red/engine_helpers/reward_library/pallet_town_progression.py +0 -477
  828. synth_ai/environments/examples/red/engine_helpers/reward_library/pallet_town_rewards.py +0 -559
  829. synth_ai/environments/examples/red/engine_helpers/reward_library/pokemon_rewards.py +0 -313
  830. synth_ai/environments/examples/red/engine_helpers/reward_library/social_rewards.py +0 -148
  831. synth_ai/environments/examples/red/engine_helpers/reward_library/story_rewards.py +0 -247
  832. synth_ai/environments/examples/red/engine_helpers/screen_analysis.py +0 -368
  833. synth_ai/environments/examples/red/engine_helpers/state_extraction.py +0 -172
  834. synth_ai/environments/examples/red/environment.py +0 -298
  835. synth_ai/environments/examples/red/taskset.py +0 -79
  836. synth_ai/environments/examples/red/units/__init__.py +0 -1
  837. synth_ai/environments/examples/sokoban/__init__.py +0 -1
  838. synth_ai/environments/examples/sokoban/agent_demos/sokoban_full_eval.py +0 -899
  839. synth_ai/environments/examples/sokoban/engine.py +0 -678
  840. synth_ai/environments/examples/sokoban/engine_helpers/__init__.py +0 -1
  841. synth_ai/environments/examples/sokoban/engine_helpers/room_utils.py +0 -657
  842. synth_ai/environments/examples/sokoban/engine_helpers/vendored/__init__.py +0 -18
  843. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/__init__.py +0 -3
  844. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/boxoban_env.py +0 -131
  845. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/render_utils.py +0 -370
  846. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/room_utils.py +0 -332
  847. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/sokoban_env.py +0 -306
  848. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/sokoban_env_fixed_targets.py +0 -67
  849. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/sokoban_env_pull.py +0 -115
  850. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/sokoban_env_two_player.py +0 -123
  851. synth_ai/environments/examples/sokoban/engine_helpers/vendored/envs/sokoban_env_variations.py +0 -394
  852. synth_ai/environments/examples/sokoban/environment.py +0 -229
  853. synth_ai/environments/examples/sokoban/generate_verified_puzzles.py +0 -440
  854. synth_ai/environments/examples/sokoban/puzzle_loader.py +0 -312
  855. synth_ai/environments/examples/sokoban/taskset.py +0 -544
  856. synth_ai/environments/examples/tictactoe/__init__.py +0 -1
  857. synth_ai/environments/examples/tictactoe/engine.py +0 -368
  858. synth_ai/environments/examples/tictactoe/environment.py +0 -240
  859. synth_ai/environments/examples/tictactoe/taskset.py +0 -215
  860. synth_ai/environments/examples/verilog/__init__.py +0 -10
  861. synth_ai/environments/examples/verilog/engine.py +0 -421
  862. synth_ai/environments/examples/verilog/environment.py +0 -350
  863. synth_ai/environments/examples/verilog/taskset.py +0 -420
  864. synth_ai/environments/examples/wordle/__init__.py +0 -29
  865. synth_ai/environments/examples/wordle/engine.py +0 -398
  866. synth_ai/environments/examples/wordle/environment.py +0 -159
  867. synth_ai/environments/examples/wordle/helpers/generate_instances_wordfreq.py +0 -75
  868. synth_ai/environments/examples/wordle/taskset.py +0 -230
  869. synth_ai/environments/reproducibility/core.py +0 -42
  870. synth_ai/environments/reproducibility/helpers.py +0 -0
  871. synth_ai/environments/reproducibility/tree.py +0 -363
  872. synth_ai/environments/service/app.py +0 -97
  873. synth_ai/environments/service/core_routes.py +0 -1021
  874. synth_ai/environments/service/external_registry.py +0 -56
  875. synth_ai/environments/service/registry.py +0 -9
  876. synth_ai/environments/stateful/__init__.py +0 -1
  877. synth_ai/environments/stateful/core.py +0 -163
  878. synth_ai/environments/stateful/engine.py +0 -21
  879. synth_ai/environments/stateful/state.py +0 -7
  880. synth_ai/environments/tasks/api.py +0 -19
  881. synth_ai/environments/tasks/core.py +0 -81
  882. synth_ai/environments/tasks/filters.py +0 -40
  883. synth_ai/environments/tasks/utils.py +0 -90
  884. synth_ai/environments/v0_observability/history.py +0 -3
  885. synth_ai/environments/v0_observability/log.py +0 -2
  886. synth_ai/evals/__init__.py +0 -15
  887. synth_ai/evals/base.py +0 -13
  888. synth_ai/evals/client.py +0 -82
  889. synth_ai/handshake.py +0 -109
  890. synth_ai/http.py +0 -26
  891. synth_ai/http_client.py +0 -136
  892. synth_ai/inference/__init__.py +0 -5
  893. synth_ai/inference/client.py +0 -34
  894. synth_ai/jobs/client.py +0 -295
  895. synth_ai/judge_schemas.py +0 -127
  896. synth_ai/learning/__init__.py +0 -59
  897. synth_ai/learning/client.py +0 -241
  898. synth_ai/learning/ft_client.py +0 -7
  899. synth_ai/learning/health.py +0 -49
  900. synth_ai/learning/jobs.py +0 -201
  901. synth_ai/learning/rl/client.py +0 -267
  902. synth_ai/learning/rl/contracts.py +0 -27
  903. synth_ai/learning/rl/env_keys.py +0 -166
  904. synth_ai/learning/rl/secrets.py +0 -13
  905. synth_ai/learning/sft/client.py +0 -68
  906. synth_ai/learning/sft/config.py +0 -270
  907. synth_ai/learning/sft/data.py +0 -295
  908. synth_ai/learning/validators.py +0 -49
  909. synth_ai/lm/__init__.py +0 -25
  910. synth_ai/task/__init__.py +0 -121
  911. synth_ai/task/apps/__init__.py +0 -129
  912. synth_ai/task/config.py +0 -257
  913. synth_ai/task/contracts.py +0 -236
  914. synth_ai/task/datasets.py +0 -108
  915. synth_ai/task/proxy.py +0 -251
  916. synth_ai/task/rubrics/__init__.py +0 -56
  917. synth_ai/task/rubrics/loaders.py +0 -152
  918. synth_ai/task/server.py +0 -432
  919. synth_ai/task/trace_correlation_helpers.py +0 -315
  920. synth_ai/task/tracing_utils.py +0 -84
  921. synth_ai/task/validators.py +0 -418
  922. synth_ai/tracing_v3/__init__.py +0 -97
  923. synth_ai/tracing_v3/abstractions.py +0 -302
  924. synth_ai/tracing_v3/config.py +0 -84
  925. synth_ai/tracing_v3/db_config.py +0 -194
  926. synth_ai/tracing_v3/decorators.py +0 -398
  927. synth_ai/tracing_v3/llm_call_record_helpers.py +0 -391
  928. synth_ai/tracing_v3/migration_helper.py +0 -120
  929. synth_ai/tracing_v3/session_tracer.py +0 -540
  930. synth_ai/tracing_v3/storage/base.py +0 -210
  931. synth_ai/tracing_v3/storage/config.py +0 -75
  932. synth_ai/tracing_v3/storage/factory.py +0 -39
  933. synth_ai/tracing_v3/trace_utils.py +0 -317
  934. synth_ai/tracing_v3/turso/daemon.py +0 -151
  935. synth_ai/tracing_v3/turso/models.py +0 -469
  936. synth_ai/tracing_v3/turso/native_manager.py +0 -1209
  937. synth_ai/tracing_v3/utils.py +0 -108
  938. synth_ai/tui/__init__.py +0 -5
  939. synth_ai/tui/__main__.py +0 -13
  940. synth_ai/tui/cli/__init__.py +0 -1
  941. synth_ai/tui/cli/query_experiments.py +0 -164
  942. synth_ai/tui/cli/query_experiments_v3.py +0 -164
  943. synth_ai/tui/dashboard.py +0 -906
  944. synth_ai/v0/api/__init__.py +0 -8
  945. synth_ai/v0/api/models/__init__.py +0 -8
  946. synth_ai/v0/api/models/supported.py +0 -8
  947. synth_ai/v0/config/__init__.py +0 -15
  948. synth_ai/v0/config/base_url.py +0 -12
  949. synth_ai/v0/lm/__init__.py +0 -51
  950. synth_ai/v0/lm/caching/__init__.py +0 -0
  951. synth_ai/v0/lm/caching/constants.py +0 -6
  952. synth_ai/v0/lm/caching/dbs.py +0 -0
  953. synth_ai/v0/lm/caching/ephemeral.py +0 -100
  954. synth_ai/v0/lm/caching/handler.py +0 -137
  955. synth_ai/v0/lm/caching/initialize.py +0 -11
  956. synth_ai/v0/lm/caching/persistent.py +0 -114
  957. synth_ai/v0/lm/config.py +0 -115
  958. synth_ai/v0/lm/constants.py +0 -32
  959. synth_ai/v0/lm/core/__init__.py +0 -8
  960. synth_ai/v0/lm/core/all.py +0 -73
  961. synth_ai/v0/lm/core/exceptions.py +0 -5
  962. synth_ai/v0/lm/core/main.py +0 -331
  963. synth_ai/v0/lm/core/main_v3.py +0 -594
  964. synth_ai/v0/lm/core/synth_models.py +0 -35
  965. synth_ai/v0/lm/core/vendor_clients.py +0 -190
  966. synth_ai/v0/lm/cost/__init__.py +0 -0
  967. synth_ai/v0/lm/cost/monitor.py +0 -1
  968. synth_ai/v0/lm/cost/statefulness.py +0 -1
  969. synth_ai/v0/lm/injection.py +0 -80
  970. synth_ai/v0/lm/overrides.py +0 -206
  971. synth_ai/v0/lm/provider_support/__init__.py +0 -8
  972. synth_ai/v0/lm/provider_support/anthropic.py +0 -972
  973. synth_ai/v0/lm/provider_support/openai.py +0 -1139
  974. synth_ai/v0/lm/provider_support/suppress_logging.py +0 -31
  975. synth_ai/v0/lm/structured_outputs/__init__.py +0 -0
  976. synth_ai/v0/lm/structured_outputs/handler.py +0 -440
  977. synth_ai/v0/lm/structured_outputs/inject.py +0 -297
  978. synth_ai/v0/lm/structured_outputs/rehabilitate.py +0 -185
  979. synth_ai/v0/lm/tools/__init__.py +0 -3
  980. synth_ai/v0/lm/tools/base.py +0 -172
  981. synth_ai/v0/lm/unified_interface.py +0 -202
  982. synth_ai/v0/lm/vendors/__init__.py +0 -0
  983. synth_ai/v0/lm/vendors/base.py +0 -81
  984. synth_ai/v0/lm/vendors/core/__init__.py +0 -0
  985. synth_ai/v0/lm/vendors/core/anthropic_api.py +0 -387
  986. synth_ai/v0/lm/vendors/core/gemini_api.py +0 -292
  987. synth_ai/v0/lm/vendors/core/mistral_api.py +0 -322
  988. synth_ai/v0/lm/vendors/core/openai_api.py +0 -227
  989. synth_ai/v0/lm/vendors/core/synth_dev_api.py +0 -0
  990. synth_ai/v0/lm/vendors/local/__init__.py +0 -0
  991. synth_ai/v0/lm/vendors/local/ollama.py +0 -0
  992. synth_ai/v0/lm/vendors/openai_standard.py +0 -782
  993. synth_ai/v0/lm/vendors/openai_standard_responses.py +0 -259
  994. synth_ai/v0/lm/vendors/retries.py +0 -22
  995. synth_ai/v0/lm/vendors/supported/__init__.py +0 -0
  996. synth_ai/v0/lm/vendors/supported/custom_endpoint.py +0 -415
  997. synth_ai/v0/lm/vendors/supported/deepseek.py +0 -69
  998. synth_ai/v0/lm/vendors/supported/grok.py +0 -75
  999. synth_ai/v0/lm/vendors/supported/groq.py +0 -16
  1000. synth_ai/v0/lm/vendors/supported/ollama.py +0 -15
  1001. synth_ai/v0/lm/vendors/supported/openrouter.py +0 -74
  1002. synth_ai/v0/lm/vendors/supported/together.py +0 -11
  1003. synth_ai/v0/lm/vendors/synth_client.py +0 -835
  1004. synth_ai/v0/lm/warmup.py +0 -186
  1005. synth_ai/v0/tracing/__init__.py +0 -0
  1006. synth_ai/v0/tracing/abstractions.py +0 -224
  1007. synth_ai/v0/tracing/base_client.py +0 -91
  1008. synth_ai/v0/tracing/client_manager.py +0 -131
  1009. synth_ai/v0/tracing/config.py +0 -142
  1010. synth_ai/v0/tracing/context.py +0 -146
  1011. synth_ai/v0/tracing/decorators.py +0 -682
  1012. synth_ai/v0/tracing/events/__init__.py +0 -0
  1013. synth_ai/v0/tracing/events/manage.py +0 -147
  1014. synth_ai/v0/tracing/events/scope.py +0 -86
  1015. synth_ai/v0/tracing/events/store.py +0 -228
  1016. synth_ai/v0/tracing/immediate_client.py +0 -151
  1017. synth_ai/v0/tracing/local.py +0 -18
  1018. synth_ai/v0/tracing/log_client_base.py +0 -73
  1019. synth_ai/v0/tracing/retry_queue.py +0 -186
  1020. synth_ai/v0/tracing/trackers.py +0 -515
  1021. synth_ai/v0/tracing/upload.py +0 -409
  1022. synth_ai/v0/tracing/utils.py +0 -9
  1023. synth_ai/v0/tracing_v1/__init__.py +0 -16
  1024. synth_ai/v0/tracing_v1/abstractions.py +0 -224
  1025. synth_ai/v0/tracing_v1/base_client.py +0 -91
  1026. synth_ai/v0/tracing_v1/client_manager.py +0 -131
  1027. synth_ai/v0/tracing_v1/config.py +0 -142
  1028. synth_ai/v0/tracing_v1/context.py +0 -146
  1029. synth_ai/v0/tracing_v1/decorators.py +0 -703
  1030. synth_ai/v0/tracing_v1/events/__init__.py +0 -0
  1031. synth_ai/v0/tracing_v1/events/manage.py +0 -147
  1032. synth_ai/v0/tracing_v1/events/scope.py +0 -86
  1033. synth_ai/v0/tracing_v1/events/store.py +0 -228
  1034. synth_ai/v0/tracing_v1/immediate_client.py +0 -151
  1035. synth_ai/v0/tracing_v1/local.py +0 -18
  1036. synth_ai/v0/tracing_v1/log_client_base.py +0 -73
  1037. synth_ai/v0/tracing_v1/retry_queue.py +0 -186
  1038. synth_ai/v0/tracing_v1/trackers.py +0 -515
  1039. synth_ai/v0/tracing_v1/upload.py +0 -527
  1040. synth_ai/v0/tracing_v1/utils.py +0 -9
  1041. synth_ai/v0/tracing_v3/__init__.py +0 -10
  1042. synth_ai/v0/tracing_v3/abstractions.py +0 -3
  1043. synth_ai/v0/tracing_v3/decorators.py +0 -3
  1044. synth_ai/v0/tracing_v3/llm_call_record_helpers.py +0 -3
  1045. synth_ai/v0/tracing_v3/session_tracer.py +0 -3
  1046. synth_ai-0.2.14.dist-info/METADATA +0 -139
  1047. synth_ai-0.2.14.dist-info/RECORD +0 -762
  1048. synth_ai-0.2.14.dist-info/top_level.txt +0 -2
  1049. /synth_ai/{demos/demo_task_apps → cli/demo_apps}/crafter/__init__.py +0 -0
  1050. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/__init__.py +0 -0
  1051. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/crafter/configs/crafter_fft_4b.toml +0 -0
  1052. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/crafter/configs/rl_from_base_qwen4b.toml +0 -0
  1053. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/math/__init__.py +0 -0
  1054. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/math/_common.py +0 -0
  1055. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/math/app.py +0 -0
  1056. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/math/config.toml +0 -0
  1057. /synth_ai/{demos → cli/demo_apps}/demo_task_apps/math/deploy_modal.py +0 -0
  1058. {examples/task_apps → synth_ai/core/apps}/__init__.py +0 -0
  1059. /synth_ai/{tracing_v3 → core/tracing_v3}/examples/basic_usage.py +0 -0
  1060. /synth_ai/{tracing_v3 → core/tracing_v3}/hooks.py +0 -0
  1061. /synth_ai/{tracing_v3 → core/tracing_v3}/lm_call_record_abstractions.py +0 -0
  1062. /synth_ai/{tracing_v3 → core/tracing_v3}/replica_sync.py +0 -0
  1063. /synth_ai/{tracing_v3 → core/tracing_v3}/serialization.py +0 -0
  1064. /synth_ai/{tracing_v3 → core/tracing_v3}/storage/__init__.py +0 -0
  1065. /synth_ai/{tracing_v3 → core/tracing_v3}/storage/exceptions.py +0 -0
  1066. /synth_ai/{tracing_v3 → core/tracing_v3}/storage/types.py +0 -0
  1067. /synth_ai/{tracing_v3 → core/tracing_v3}/storage/utils.py +0 -0
  1068. /synth_ai/{tracing_v3 → core/tracing_v3}/turso/__init__.py +0 -0
  1069. /synth_ai/{evals → sdk/judging}/types.py +0 -0
  1070. /synth_ai/{learning → sdk/learning}/algorithms.py +0 -0
  1071. /synth_ai/{learning → sdk/learning}/config.py +0 -0
  1072. /synth_ai/{learning → sdk/learning}/constants.py +0 -0
  1073. /synth_ai/{learning → sdk/learning}/core.py +0 -0
  1074. /synth_ai/{learning → sdk/learning}/gateway.py +0 -0
  1075. /synth_ai/{learning → sdk/learning}/rl/__init__.py +0 -0
  1076. /synth_ai/{learning → sdk/learning}/rl/config.py +0 -0
  1077. /synth_ai/{learning → sdk/learning}/rl_client.py +0 -0
  1078. /synth_ai/{learning → sdk/learning}/sft/__init__.py +0 -0
  1079. /synth_ai/{learning → sdk/learning}/sse.py +0 -0
  1080. /synth_ai/{task → sdk/task}/auth.py +0 -0
  1081. /synth_ai/{task → sdk/task}/client.py +0 -0
  1082. /synth_ai/{task → sdk/task}/errors.py +0 -0
  1083. /synth_ai/{task → sdk/task}/health.py +0 -0
  1084. /synth_ai/{task → sdk/task}/json.py +0 -0
  1085. /synth_ai/{task → sdk/task}/rubrics/models.py +0 -0
  1086. /synth_ai/{task → sdk/task}/rubrics/scoring.py +0 -0
  1087. /synth_ai/{task → sdk/task}/rubrics/strict.py +0 -0
  1088. /synth_ai/{task → sdk/task}/vendors.py +0 -0
  1089. {synth_ai-0.2.14.dist-info → synth_ai-0.4.1.dist-info}/WHEEL +0 -0
  1090. {synth_ai-0.2.14.dist-info → synth_ai-0.4.1.dist-info}/entry_points.txt +0 -0
  1091. {synth_ai-0.2.14.dist-info → synth_ai-0.4.1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,195 @@
1
+ Metadata-Version: 2.4
2
+ Name: synth-ai
3
+ Version: 0.4.1
4
+ Summary: Serverless Posttraining for Agents - Core AI functionality and tracing
5
+ Author-email: Synth AI <josh@usesynth.ai>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/synth-laboratories/synth-ai
8
+ Project-URL: Repository, https://github.com/synth-laboratories/synth-ai
9
+ Project-URL: Issues, https://github.com/synth-laboratories/synth-ai/issues
10
+ Requires-Python: >=3.11
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: pydantic>=2.0.0
14
+ Requires-Dist: python-dotenv>=1.0.1
15
+ Requires-Dist: requests>=2.32.3
16
+ Requires-Dist: tqdm>=4.66.4
17
+ Requires-Dist: typing_extensions>=4.0.0
18
+ Requires-Dist: rich>=13.9.0
19
+ Requires-Dist: openai>=1.99.0
20
+ Requires-Dist: anthropic>=0.42.0
21
+ Requires-Dist: langfuse<3.0.0,>=2.53.9
22
+ Requires-Dist: opentelemetry-api>=1.26.0
23
+ Requires-Dist: opentelemetry-sdk>=1.26.0
24
+ Requires-Dist: groq>=0.30.0
25
+ Requires-Dist: google-genai>=1.26.0
26
+ Requires-Dist: together>=1.5.21
27
+ Requires-Dist: mistralai>=1.9.2
28
+ Requires-Dist: fastapi>=0.115.12
29
+ Requires-Dist: uvicorn>=0.34.2
30
+ Requires-Dist: numpy>=2.2.3
31
+ Requires-Dist: networkx>=3.4.2
32
+ Requires-Dist: sqlalchemy>=2.0.42
33
+ Requires-Dist: celery>=5.4.0
34
+ Requires-Dist: redis>=6.2.0
35
+ Requires-Dist: aiosqlite>=0.21.0
36
+ Requires-Dist: libsql>=0.1.8
37
+ Requires-Dist: pynacl>=1.5.0
38
+ Requires-Dist: click<8.2,>=8.1.7
39
+ Requires-Dist: aiohttp>=3.8.0
40
+ Requires-Dist: httpx>=0.28.1
41
+ Requires-Dist: modal<2.0.0,>=1.1.4
42
+ Requires-Dist: docker>=7.0.0
43
+ Requires-Dist: mcp>=1.21.0
44
+ Requires-Dist: ruff>=0.12.9
45
+ Requires-Dist: tomli_w>=1.0.0
46
+ Requires-Dist: dspy>=3.0.4
47
+ Requires-Dist: setuptools>=80.9.0
48
+ Requires-Dist: gymnasium>=0.26.2
49
+ Requires-Dist: gepa>=0.0.17
50
+ Requires-Dist: datasets>=4.0.0
51
+ Provides-Extra: dev
52
+ Requires-Dist: build>=1.2.2.post1; extra == "dev"
53
+ Requires-Dist: twine>=4.0.0; extra == "dev"
54
+ Requires-Dist: keyring>=24.0.0; extra == "dev"
55
+ Requires-Dist: pytest>=8.3.3; extra == "dev"
56
+ Requires-Dist: pytest-xdist>=3.6.1; extra == "dev"
57
+ Requires-Dist: pytest-timeout>=2.3.1; extra == "dev"
58
+ Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
59
+ Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
60
+ Requires-Dist: pyright>=1.1.350; extra == "dev"
61
+ Requires-Dist: coverage[toml]>=7.3.0; extra == "dev"
62
+ Requires-Dist: ruff>=0.1.0; extra == "dev"
63
+ Provides-Extra: research
64
+ Requires-Dist: crafter>=1.8.3; extra == "research"
65
+ Requires-Dist: datasets>=4.0.0; extra == "research"
66
+ Provides-Extra: swe
67
+ Requires-Dist: morphcloud>=0.1.3; extra == "swe"
68
+ Requires-Dist: swebench>=2.3.0; extra == "swe"
69
+ Provides-Extra: all
70
+ Requires-Dist: crafter>=1.8.3; extra == "all"
71
+ Requires-Dist: datasets>=4.0.0; extra == "all"
72
+ Requires-Dist: morphcloud>=0.1.3; extra == "all"
73
+ Requires-Dist: swebench>=2.3.0; extra == "all"
74
+ Requires-Dist: pyboy>=2.6.0; extra == "all"
75
+ Requires-Dist: transformers>=4.56.1; extra == "all"
76
+ Requires-Dist: redis>=6.2.0; extra == "all"
77
+ Provides-Extra: analytics
78
+ Requires-Dist: pandas>=2.2.3; extra == "analytics"
79
+ Dynamic: license-file
80
+
81
+ # Synth
82
+
83
+ [![Python](https://img.shields.io/badge/python-3.11+-blue)](https://www.python.org/)
84
+ [![PyPI](https://img.shields.io/pypi/v/synth-ai.svg)](https://pypi.org/project/synth-ai/)
85
+ [![PyPI Dev](https://img.shields.io/badge/dev-0.3.2.dev3-orange)](https://pypi.org/project/synth-ai/0.3.2.dev3/)
86
+ [![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
87
+ ![Coverage](https://img.shields.io/badge/coverage-28.65%25-yellow)
88
+ ![Tests](https://img.shields.io/badge/tests-847%20passing-brightgreen)
89
+
90
+ Serverless Posttraining APIs for Developers
91
+
92
+ <p align="center">
93
+ <picture align="center">
94
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/synth-laboratories/synth-ai/main/assets/langprobe_v2_dark.png">
95
+ <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/synth-laboratories/synth-ai/main/assets/langprobe_v2_light.png">
96
+ <img alt="Shows a bar chart comparing prompt optimization performance across Synth GEPA, Synth MIPRO, GEPA (lib), DSPy MIPRO, and DSPy GEPA with baseline vs optimized." src="https://raw.githubusercontent.com/synth-laboratories/synth-ai/main/assets/langprobe_v2_light.png">
97
+ </picture>
98
+ </p>
99
+
100
+ <p align="center">
101
+ <i>Average accuracy on <a href="https://arxiv.org/abs/2502.20315">LangProBe</a> prompt optimization benchmarks.</i>
102
+ </p>
103
+
104
+ ## Highlights
105
+
106
+ - 🚀 Train across sft, RL, and prompt opt by standing up a single cloudflared Fastapi wrapper around your code. No production code churn.
107
+ - ⚡️ Parallelize training and achieve 80% GPU util. via PipelineRL
108
+ - 🗂️ Train prompts and models across multiple experiments
109
+ - 🛠️ Spin up experiment queues and datastores locally for dev work
110
+ - 🔩 Run serverless training via cli or programmatically
111
+ - 🏢 Scales gpu-based model training to 64 H100s seemlessly
112
+ - 💾 Use GEPA-calibrated verifiers for fast, accurate rubric scoring
113
+ - 🖥️ Supports HTTP-based training across all programming languages
114
+ - 🤖 CLI utilities tuned for use with Claude Code, Codex, Opencode
115
+
116
+ ## Getting Started
117
+
118
+ ```bash
119
+ # Use with OpenAI Codex
120
+ uvx synth-ai codex
121
+ ```
122
+
123
+ ```bash
124
+ # Use with Opencode
125
+ uvx synth-ai opencode
126
+ ```
127
+
128
+ Synth is maintained by devs behind the [MIPROv2](https://scholar.google.com/citations?view_op=view_citation&hl=en&user=jauNVA8AAAAJ&citation_for_view=jauNVA8AAAAJ:u5HHmVD_uO8C) prompt optimizer.
129
+
130
+ ## Documentation
131
+
132
+ **[docs.usesynth.ai](https://docs.usesynth.ai)**
133
+
134
+ ## In-Process Runner (SDK)
135
+
136
+ Run GEPA/MIPRO/RL jobs against a tunneled task app without the CLI:
137
+
138
+ ```python
139
+ import asyncio
140
+ import os
141
+ from synth_ai.sdk.task import run_in_process_job
142
+
143
+ result = asyncio.run(
144
+ run_in_process_job(
145
+ job_type="prompt_learning",
146
+ config_path="configs/style_matching_gepa.toml",
147
+ task_app_path="task_apps/style_matching_task_app.py",
148
+ overrides={"prompt_learning.gepa.rollout.budget": 4},
149
+ backend_url=os.getenv("TARGET_BACKEND_BASE_URL"), # resolves envs automatically
150
+ )
151
+ )
152
+ print(result.job_id, result.status.get("status"))
153
+ ```
154
+
155
+ ## Zero-Shot Verifiers (SDK)
156
+
157
+ Run a built-in verifier graph with rubric criteria passed at runtime:
158
+
159
+ ```python
160
+ import asyncio
161
+ import os
162
+ from synth_ai.sdk.graphs import VerifierClient
163
+
164
+ async def run_verifier():
165
+ client = VerifierClient(
166
+ base_url=os.environ["SYNTH_BACKEND_BASE"],
167
+ api_key=os.environ["SYNTH_API_KEY"],
168
+ )
169
+ result = await client.evaluate(
170
+ job_id="zero_shot_verifier_single",
171
+ session_trace={"session_id": "s", "event_history": []},
172
+ rubric={
173
+ "event": [{"id": "accuracy", "weight": 1.0, "description": "Correctness"}],
174
+ "outcome": [{"id": "task_completion", "weight": 1.0, "description": "Completed task"}],
175
+ },
176
+ options={"event": True, "outcome": True, "model": "gpt-5-nano"},
177
+ policy_name="my_policy",
178
+ task_app_id="my_task",
179
+ )
180
+ return result
181
+
182
+ asyncio.run(run_verifier())
183
+ ```
184
+
185
+ You can also call arbitrary graphs directly:
186
+
187
+ ```python
188
+ from synth_ai.sdk.graphs import GraphCompletionsClient
189
+
190
+ client = GraphCompletionsClient(base_url="https://api.usesynth.ai", api_key="...")
191
+ resp = await client.run(
192
+ graph={"kind": "zero_shot", "verifier_type": "zero_shot_verifier_mapreduce"},
193
+ input_data={"session_trace": {"session_id": "s", "event_history": []}, "rubric": {"event": [], "outcome": []}},
194
+ )
195
+ ```
@@ -0,0 +1,379 @@
1
+ synth_ai/__init__.py,sha256=UBh1h_6FviRAQWXaDH9-7MIOgs88xj9qgFjpts32sbE,1887
2
+ synth_ai/__main__.py,sha256=niiyZIVIiIgyyUsQ40hKs2cLWkH1gHcoI7t3N2rxH3s,1039
3
+ synth_ai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ synth_ai/cli/__init__.py,sha256=kmKyZju2bh9dNViZj8RhREjVOUBZXqH-JiUZjOqLj2w,4935
5
+ synth_ai/cli/__main__.py,sha256=-lNeAKXRyZ6swCqmFHeKkmWTyamO-2Y0G2b0WKjCtMY,1038
6
+ synth_ai/cli/deploy.py,sha256=xfaCQ3JHthAj-V1MQrS1uGgkmQJvDDh_TolBGJTLD24,6751
7
+ synth_ai/cli/root.py,sha256=VJaORaCBjvVTTthbN8XX1TCjUw7hcAEB6eDLc6D_eYI,11539
8
+ synth_ai/cli/turso.py,sha256=kjcZj_IAi-8MhMtU-WwsUNl8DUAOpUGmlC2-1dAYR6k,1625
9
+ synth_ai/cli/usage.py,sha256=QPyDVaGpUJP9AChYiW94iBfIWK6LDjROAfJEoy_Hkf4,5602
10
+ synth_ai/cli/_internal/__init__.py,sha256=oYR5XFIj1QPPlfqNVdS8KcCJ4mXCdXUU-du_KrEmbUs,82
11
+ synth_ai/cli/_internal/modal_wrapper.py,sha256=bJJtpT7sOCRptCSDyZXDxa24xyrozVekmaJKYQ_f4LQ,789
12
+ synth_ai/cli/_internal/storage.py,sha256=0VjIR8hsxdhRD90xy6IMwGkQu53RwUF8H_aFPsMmXXE,765
13
+ synth_ai/cli/_internal/typer_patch.py,sha256=TQPjyym1ijrH-xvIl1XHyYrtPSF-kFqrWW1DQ-AynSI,1558
14
+ synth_ai/cli/_internal/validate_task_app.py,sha256=tuOFBnoG-ktIe4fjtBgCm8A1_q_C-EMrVLzZO8fXfd8,958
15
+ synth_ai/cli/agents/__init__.py,sha256=wJv_ODuKXmU4GkdnXaWqMMzp9oqCURFMpYzujbqnl9E,413
16
+ synth_ai/cli/agents/claude.py,sha256=9Gysjplkab42H1XAEwAt2EkYNXQrc5oyyFXd2k6mtdA,2289
17
+ synth_ai/cli/agents/codex.py,sha256=4VDyD2GWy4wWFBqM37d4jaPHID2mxa2jrCFYUIpOzu0,9678
18
+ synth_ai/cli/agents/opencode.py,sha256=wLEhXkHh93qXKz83klyq8mZn37_9UreM2ik_Gf2aFuA,9299
19
+ synth_ai/cli/commands/__init__.py,sha256=vLSvCU2T9YAuBV4Xp8byLJhucxuSzjT8Daa2cbxqYPU,348
20
+ synth_ai/cli/commands/artifacts/__init__.py,sha256=NKrrL3y0wn5kkIzC4Or_J90Wa9302i0WAHOxPhprvUQ,310
21
+ synth_ai/cli/commands/artifacts/client.py,sha256=mIyq9WWl5c8ZY67rdcRG2CWNHK8XqiWOaTbN2OMjibM,4582
22
+ synth_ai/cli/commands/artifacts/config.py,sha256=lMrOa81iBzx774kDTyYYaBia_YtlPPBKb6IgDWu1aLE,1395
23
+ synth_ai/cli/commands/artifacts/core.py,sha256=S1ICqjqusbTbxSM2ANabxMYb5qvCHtU1TluCFTgLcGU,673
24
+ synth_ai/cli/commands/artifacts/download.py,sha256=QDCOPc-066-aM1M_qN-MyiV_L8meP9Ex1BKpinIoufI,6623
25
+ synth_ai/cli/commands/artifacts/export.py,sha256=k4h2hKZ112Gfe-S4ayb10urY23avgnfyBtyWN9hXkgU,6684
26
+ synth_ai/cli/commands/artifacts/list.py,sha256=_OktWZ3A-cU2sYueMCyL9N-OZH0fahk4yEjRKY1RuEg,4783
27
+ synth_ai/cli/commands/artifacts/parsing.py,sha256=gw04bTbMqX757mvgGC8TqcY0lfGwjAm_YTm4VamXAWk,7318
28
+ synth_ai/cli/commands/artifacts/show.py,sha256=0B_yIQ9H6eE6qi1fJ7cTBPFuDxNknaxi17OVrkxgy7g,11920
29
+ synth_ai/cli/commands/baseline/__init__.py,sha256=s0s_62k43AENduzE1S3Zzl0s56F-zSHnu1X3vH83y8c,236
30
+ synth_ai/cli/commands/baseline/core.py,sha256=WmO_BSBZ2lbL4kl_kVQSE2eghx3yRwvFlREwOQUcMTM,22903
31
+ synth_ai/cli/commands/baseline/list.py,sha256=TuvrwNxYFEjtdx-nTXjKwVOh_nhM_VSffiBEFVySzfc,2942
32
+ synth_ai/cli/commands/demo/__init__.py,sha256=fpsgP7In1ve0MN5IgqwvlbhjyqBk49szC5MSf_BkHQc,71
33
+ synth_ai/cli/commands/demo/core.py,sha256=YptePlzX-d51VwrDuKqdrtWKiddvJPcBWoUfcpvas_U,4798
34
+ synth_ai/cli/commands/eval/__init__.py,sha256=nV0E_WJS_TKjKEIOkrKqJQ_Gr5wtuW4OK3R8nIAMTNw,426
35
+ synth_ai/cli/commands/eval/core.py,sha256=T8oThmW0k_DovUZniaGVazGEQc3a1ffPCM9mblvYf80,47633
36
+ synth_ai/cli/commands/eval/errors.py,sha256=YHzU8WPY9Ys1U4H_QwKvRCAcr5MzODj-yK0pQRfoB1s,1628
37
+ synth_ai/cli/commands/eval/validation.py,sha256=YvrlP-U_otpvPUXXktg4QJ8tlf7vRtQ18jPnwx6l-Jg,4060
38
+ synth_ai/cli/commands/filter/__init__.py,sha256=fPU74tFIgsndea2nJ25lKrzBS_JPfLi5M4OvLyqHsOg,260
39
+ synth_ai/cli/commands/filter/core.py,sha256=1i4PAUDun_B9gVAF5k2H0HTCJtwRUGr5VY_AJbRR_6A,16385
40
+ synth_ai/cli/commands/filter/errors.py,sha256=gGpZj2AhDVBco_d10ldHN3ugRpTD7zGqKD87TI2nBxc,1099
41
+ synth_ai/cli/commands/filter/validation.py,sha256=vvK0h_fRmggnSUE6TS5mPsT3jY6DAdlM_QzQgWeeGA4,2611
42
+ synth_ai/cli/commands/help/__init__.py,sha256=82D9G0ac28ok3W_eRJin1AQi7kl1bV-voHFU3QkzW8E,5429
43
+ synth_ai/cli/commands/help/core.py,sha256=q4vwdagxeVoxHaADGikiEQBq1RDSI147Akxi6IAJ4e0,2090
44
+ synth_ai/cli/commands/scan/__init__.py,sha256=NOqTmD-DXmyVRy6112GuSxEqy3gAgH-_9mCW9D3cpsQ,294
45
+ synth_ai/cli/commands/scan/cloudflare_scanner.py,sha256=IFGcqiHULW0VBq79LPXmG4miWAneOjQNHrEkIzGZyoU,15915
46
+ synth_ai/cli/commands/scan/core.py,sha256=rw1mUiLuFPCW_J2IyMubwXYa-v0i47EXf8nbM8XPsgs,12491
47
+ synth_ai/cli/commands/scan/health_checker.py,sha256=AVIYQlyqM5ApPCeK5wMB-TkQg6LccWRZ4PKAfk1w8Us,9985
48
+ synth_ai/cli/commands/scan/local_scanner.py,sha256=iEwhpBABoyxztIblTGHLQTlGA_RiIi3z1rcVJeZshOo,10654
49
+ synth_ai/cli/commands/scan/models.py,sha256=qKcleWG4zdzU2HKhD2-YjX-uKs90gQpjRF9HSum5AGo,3740
50
+ synth_ai/cli/commands/smoke/__init__.py,sha256=gE7gaBh19yTRyTRgn5ztk7MmdsIoLdU8bkFxRvHNvJA,109
51
+ synth_ai/cli/commands/smoke/core.py,sha256=OTPB8pHWJ0yumnxI-s5nt8UeyQSlpd89Oebwltyx0kw,62119
52
+ synth_ai/cli/commands/status/__init__.py,sha256=0osPCFnl8fEvfR4v8chbw6uPduG_EGVNgrtbYUOXdF4,2399
53
+ synth_ai/cli/commands/status/client.py,sha256=0JX8XWegoudpGroxhsFWUqozrblCjx6tHSXfmUoJD6A,6694
54
+ synth_ai/cli/commands/status/config.py,sha256=l5zujJG4lsZAW6nXGOcdM4cHPBP_5pQtV_nN2EV4yCw,2909
55
+ synth_ai/cli/commands/status/errors.py,sha256=QOUsyxOi4MdB6ISQ7ZwHtNjU61RAsurKcf58Qt3ejZY,441
56
+ synth_ai/cli/commands/status/formatters.py,sha256=m__FAytr5xV9TNr6Bg7VrjjivRccLwm8r0Q-PMQMY1g,6047
57
+ synth_ai/cli/commands/status/utils.py,sha256=k8F-xIQKnIQiDDGeTzERnuhd_pTsZf6W0lcmoR7t1yo,3270
58
+ synth_ai/cli/commands/status/subcommands/__init__.py,sha256=S0tYeYc6vqBgPdTgpwU-nWiqPnpADiE-1ElpVQ6SNko,280
59
+ synth_ai/cli/commands/status/subcommands/files.py,sha256=N2gee2WX8wVC2Q-QKaJYqpxRECvp0EvewZYPlOwQGl0,2296
60
+ synth_ai/cli/commands/status/subcommands/jobs.py,sha256=lLOmHPxHfzZR-sBXjIYZ9Hrk1FgdkG-4-xGpqZtHYgk,10028
61
+ synth_ai/cli/commands/status/subcommands/models.py,sha256=FuR8Ykc0ikGRPy5_pD-TX6r9mGHYb9fR8IaANakYsHA,2389
62
+ synth_ai/cli/commands/status/subcommands/pricing.py,sha256=TdekcnrX259rNj-Gst3bezwMQLFs9cXGwoE1IFxljUM,823
63
+ synth_ai/cli/commands/status/subcommands/runs.py,sha256=mC3jmyhXtY33YXTnY58RD4FPRdk8Xb8swmYrGJ5-sIg,2455
64
+ synth_ai/cli/commands/status/subcommands/session.py,sha256=uRR9CJkZ73-eGKBDB-b6hBrhkBBeAHD3MW8EfkJEByo,7692
65
+ synth_ai/cli/commands/status/subcommands/summary.py,sha256=2LrJyNdyD9y3jqN5lmWl2MNvkKxzkuYTn_niXK6Kaeg,1567
66
+ synth_ai/cli/commands/status/subcommands/usage.py,sha256=DmmMu_bfZ8ZdjSGAPeFWQrPrbiIAl092_Rs8--fyeuc,9084
67
+ synth_ai/cli/commands/train/__init__.py,sha256=9zGDNfVkRpAMddsvB3qS-NILIlTh1dYRVUe2dTZSPDY,1242
68
+ synth_ai/cli/commands/train/core.py,sha256=nKKFnrmzaw0YqKtpG1cmaFCAFgunlreHz-lLyy4xYy0,505
69
+ synth_ai/cli/commands/train/errors.py,sha256=OJUYiOhzDGchOd5-Re36c_OHfb-9HgnuKRrF3AwzEU0,2743
70
+ synth_ai/cli/commands/train/judge_schemas.py,sha256=BBKZ0EDCeePeDqCymdoJL0e79UfKs0GznozqatBFXOc,6424
71
+ synth_ai/cli/commands/train/judge_validation.py,sha256=ga6bdOrpfsimOVAL7cRPIHJd4BbstXb4eMxDlt2YIAU,9935
72
+ synth_ai/cli/commands/train/prompt_learning_validation.py,sha256=zR_Yn4SfExaoLNOO2TrfvGrKEs_SDOGAml0_rFyKdEQ,18795
73
+ synth_ai/cli/commands/train/validation.py,sha256=CG-r58KyCkSkza9hg6S_RoSRtsTv7cyn2cTii9nkO9c,13886
74
+ synth_ai/cli/demo_apps/__init__.py,sha256=JH-OIpwYS4fqJ7MfOd16y4378mdD3uhr675iEG2zBys,473
75
+ synth_ai/cli/demo_apps/demo_registry.py,sha256=y49Tb-iVVQAfMSyQlfqQ_2i3CsVPw9PAJr2wFx32m6g,5826
76
+ synth_ai/cli/demo_apps/core/__init__.py,sha256=uC3ZUzEjUnr5Az_FoRZJovGhCeqfMZVZggjXr2DkKio,806
77
+ synth_ai/cli/demo_apps/core/cli.py,sha256=-6NlhGFEtIUIfkU0L6SbhtfX3HtcxOVMQsoEkg1Rg9I,66429
78
+ synth_ai/cli/demo_apps/crafter/__init__.py,sha256=3SnNZTzBjGR9eudStcww259vPmzoFBHJL-M0GDUD7Qo,24
79
+ synth_ai/cli/demo_apps/crafter/crafter_fft_4b.toml,sha256=p7b7P9lwg1ej_mMYi-R_UP9dAXAEO8_Ak0u_l8rMTVc,1203
80
+ synth_ai/cli/demo_apps/crafter/grpo_crafter_task_app.py,sha256=3oB31F5wqtNlLORp8FaBITaqjsOB95doGv686zshjUY,6368
81
+ synth_ai/cli/demo_apps/crafter/rl_from_base_qwen4b.toml,sha256=_TVKcVlFnO04EGvMRn2IKwwljzscW9JgrgP7e6GGyko,1656
82
+ synth_ai/cli/demo_apps/demo_task_apps/__init__.py,sha256=fj5IgEaCWLjYx-8DpfzmUdHIEE2TlpauEDvJRgAnLy0,267
83
+ synth_ai/cli/demo_apps/demo_task_apps/core.py,sha256=I7v76QmkfP0GF5noMlYjGKQnFgfFLvTBqQaua8sPZQ8,15441
84
+ synth_ai/cli/demo_apps/demo_task_apps/crafter/__init__.py,sha256=3SnNZTzBjGR9eudStcww259vPmzoFBHJL-M0GDUD7Qo,24
85
+ synth_ai/cli/demo_apps/demo_task_apps/crafter/grpo_crafter_task_app.py,sha256=iTi9Sk_NJseX_Lo34-OXa7VCWhTSO703LWvJ8KlC0L4,6920
86
+ synth_ai/cli/demo_apps/demo_task_apps/crafter/configs/crafter_fft_4b.toml,sha256=3voWbh5KscUtsnps5NDKTfBGiBz6-ZtXuK6uMgrcQSY,1192
87
+ synth_ai/cli/demo_apps/demo_task_apps/crafter/configs/rl_from_base_qwen4b.toml,sha256=qVSypYOMUd8g6pmiovi7nsgk4jgMBjJIORpIsrmNV4U,1644
88
+ synth_ai/cli/demo_apps/demo_task_apps/math/__init__.py,sha256=WBzpZwSn7pRarBmhopQi34i9bEm05-71eM3siboOavY,43
89
+ synth_ai/cli/demo_apps/demo_task_apps/math/_common.py,sha256=FvWvZ3BwZzX38RjZcukPlmk0FN_DT03lBbZe-mjF7tg,532
90
+ synth_ai/cli/demo_apps/demo_task_apps/math/app.py,sha256=1sdVhcQR60jLc8Vc5B2Jelh1ouo7y8gVkVgf_VcJdPg,1168
91
+ synth_ai/cli/demo_apps/demo_task_apps/math/config.toml,sha256=CLfuzZaTvpqezPrpOy03ZKvR6D3tZ0vExOsyvdn4ETo,1346
92
+ synth_ai/cli/demo_apps/demo_task_apps/math/deploy_modal.py,sha256=hLdUvOl3tGQi_mQgYWva5NUh-vIXUj4e-isGZ6Mk-14,2256
93
+ synth_ai/cli/demo_apps/demo_task_apps/math/modal_task_app.py,sha256=Zkuz6dLoONDSgQsfrhRFQMZtOQbJ5L0aKt26KtFCiak,28637
94
+ synth_ai/cli/demo_apps/demo_task_apps/math/task_app_entry.py,sha256=F1-F-qeiVTQAW9HxSv2ko-hERkgSL4QKEplR9HtMCMc,1044
95
+ synth_ai/cli/demo_apps/math/__init__.py,sha256=WBzpZwSn7pRarBmhopQi34i9bEm05-71eM3siboOavY,43
96
+ synth_ai/cli/demo_apps/math/_common.py,sha256=FvWvZ3BwZzX38RjZcukPlmk0FN_DT03lBbZe-mjF7tg,532
97
+ synth_ai/cli/demo_apps/math/app.py,sha256=1sdVhcQR60jLc8Vc5B2Jelh1ouo7y8gVkVgf_VcJdPg,1168
98
+ synth_ai/cli/demo_apps/math/config.toml,sha256=6zsdsh28zNHb5_xjVCI2GEd1C0xsSZzWGNDWzT1KhkY,1359
99
+ synth_ai/cli/demo_apps/math/deploy_modal.py,sha256=DpqSUxVGjqDy1GoUQJWFQSsI0_osRpuCw8svD4rm5Cw,2063
100
+ synth_ai/cli/demo_apps/math/modal_task_app.py,sha256=hrn-Tg-mXEMEVomg7ctrtYEWfiS8tNx-DunBc9kBwvU,26644
101
+ synth_ai/cli/demo_apps/math/task_app_entry.py,sha256=VGxRi34Bxj51z8yZGmwjQJTVaUJySdH1XhWpWq3nUKU,1455
102
+ synth_ai/cli/demo_apps/mipro/main.py,sha256=_DIy7xSuVnZrwDUilJwWJfFdgHp8BJMs4qasdZHnldo,10505
103
+ synth_ai/cli/demo_apps/mipro/task_app.py,sha256=dUaHfQv3LSZZ15PD1vIgtKprjctZrOSHu0MtUfSTD2o,37742
104
+ synth_ai/cli/demo_apps/mipro/train_cfg.toml,sha256=LGQPpgrmHGh_C0NuQSYV3MyRSf6FJHyc-jvdAWpjgv4,4099
105
+ synth_ai/cli/demos/__init__.py,sha256=BnoTqDZ0FelPjSy8gAnV5N0SriEqhhwjZBTagrwlVL4,155
106
+ synth_ai/cli/demos/demo.py,sha256=hEFLW40S9Pw75cR8k4lZ2k8rl_Bamj3HGW175ZRpKvU,846
107
+ synth_ai/cli/demos/rl_demo.py,sha256=7vvBTzEBfADPjZVGSDZxsvtzXek4eMqiekzL5HIUlmk,8163
108
+ synth_ai/cli/infra/__init__.py,sha256=M1og5Rx8Qx4yUE09YKcDaV_R3som5QSpP2qr39_4shE,299
109
+ synth_ai/cli/infra/balance.py,sha256=Jvkqn0R5O8_qdkkfgEjs_svIxXTiF56tQ8npc-8d228,8489
110
+ synth_ai/cli/infra/mcp.py,sha256=yzdo_jk7XZgLjvCBtuCZiFdNHourxnKlM22GSI5rtmM,686
111
+ synth_ai/cli/infra/modal_app.py,sha256=xtGKQhH5RsnIILciKOgdkMHW70TyD6edFbumZ4sO1js,980
112
+ synth_ai/cli/infra/setup.py,sha256=sQbwD1g22ewC0wGr5KbJ2aAGgjhA4vX5k5rPDzNPJA8,1871
113
+ synth_ai/cli/infra/status.py,sha256=vZXZjIqSA7snBumqFaZyuOwNiggQ3uJrjkfSY_jFg2s,357
114
+ synth_ai/cli/infra/turso.py,sha256=PZh1azClgrdw9eMT85ClQngU3p4C5jkFFnfxAf91g5s,2362
115
+ synth_ai/cli/lib/__init__.py,sha256=PemuaJiYhWtmA9YEhE8XQLHc0BBuSJFqw-EZbWYZU8s,284
116
+ synth_ai/cli/lib/agents.py,sha256=a5s6YKDD-AfI3P1Gypji1D1n1w8MOPVXEECbdN6UJDQ,2717
117
+ synth_ai/cli/lib/bin.py,sha256=1kDUdhIaM_XIdSj9Gmyd0Pu3sAWkc3rEYQdvf8NiaFs,1081
118
+ synth_ai/cli/lib/env.py,sha256=J-wfu3_p10l6ObSC_Sr-U4cV0ssjARgHBRs4XWsZJ_0,13390
119
+ synth_ai/cli/lib/errors.py,sha256=YGJJcXpJJiPRpHBtFafgf_XOlipRNroQHN9kKeqf4LQ,2522
120
+ synth_ai/cli/lib/modal.py,sha256=pDpgNtRJ0ChvvWKqLVCjjl6Cc3-6kPjBHtKQp0mnJPw,11314
121
+ synth_ai/cli/lib/plotting.py,sha256=qXCRUtmnnfIHtWUteBHchyk5D6fMMNocgSYLThQLCmU,4348
122
+ synth_ai/cli/lib/prompt_args.py,sha256=TunI29ECroh9NI_U4Za2GknRnFdcric8hkRzSUnkwX8,1328
123
+ synth_ai/cli/lib/prompts.py,sha256=osHwSEGasyxQ4c8-0pPsyHDRwKKTeURk0Pk-iX4V4_I,9228
124
+ synth_ai/cli/lib/sqld.py,sha256=cHOPGywLTMdQDqURIxdrNoXWFUTdZrikDo7c1oyIXP0,3908
125
+ synth_ai/cli/lib/task_app_discovery.py,sha256=CZwwP6DMd5fJDqxoQLy7jn1hr54uUumAs9K7tdqCwwQ,30855
126
+ synth_ai/cli/lib/task_app_env.py,sha256=IaJQsep1Ky2S8JdMRhQXCQQmTk78sI1Yw7S-xUYqbJg,11270
127
+ synth_ai/cli/lib/train_cfgs.py,sha256=CnNvvhFq_OeMIsePB6WVmeqxzhmmdhERZMZoseeA_AY,10857
128
+ synth_ai/cli/lib/tunnel_records.py,sha256=AChs1EtdJSVrvUP3dJv3mW0CQxSopY9w22lSpqC5bi8,6024
129
+ synth_ai/cli/lib/apps/modal_app.py,sha256=yQMmGwM1Htaq5Rw0uWFWsn1L-Mv0jwj7agiqCVmsjM4,3375
130
+ synth_ai/cli/lib/apps/task_app.py,sha256=cvNCx3N5gUiF0GmU8Yw9BLI_cDBKf2KZi23t5KHXsps,26428
131
+ synth_ai/cli/local/__init__.py,sha256=Jjn5l6keOk57fBpPMWxecZD_n6Z2ubSLk0Cq9OzMW3c,379
132
+ synth_ai/cli/local/experiment_queue/__init__.py,sha256=rRgmTjPh1zqTddgPDqEVccgbTi__ckTfAbjNIcWILtY,1226
133
+ synth_ai/cli/local/experiment_queue/api_schemas.py,sha256=SAIdxazAJlAT5eBMbFxoaOjgqM9sJ6AZJO8vloralQQ,9737
134
+ synth_ai/cli/local/experiment_queue/celery_app.py,sha256=dXdzCkJdA5adormZ1fzEsmgbk9eUwNfnvRLcDpFP9lA,8649
135
+ synth_ai/cli/local/experiment_queue/config.py,sha256=2-rNRtIxBWdgaYmk63lbIJPCtxOyMQxZzchvw9lVOv0,4393
136
+ synth_ai/cli/local/experiment_queue/config_utils.py,sha256=EH5GOVMVduKtSUxmdlKmo7B2YXhHp_tU4UATdCAonQw,10663
137
+ synth_ai/cli/local/experiment_queue/database.py,sha256=pWIu8bRg05zNQRRtQXySrDy9-r76M0gVZNs2xYXYS3k,6599
138
+ synth_ai/cli/local/experiment_queue/dispatcher.py,sha256=CWdKJDFi_q5qNOxsk1gF_77Q0Ti4sIb24ubZGI0ZjbA,3807
139
+ synth_ai/cli/local/experiment_queue/models.py,sha256=fjunYZehfyHcXv9zBH3OVxrEpwhxIa6R-cr0cHnfHfA,8466
140
+ synth_ai/cli/local/experiment_queue/progress_info.py,sha256=Vf27F-liKzSo7LkIYEOPquUaFzPTkFN8LSqeLzci2PU,6738
141
+ synth_ai/cli/local/experiment_queue/results.py,sha256=7GhSOmVSf8LBKdOqid9VYvJ1JJtCln7CAgPRdggTTgA,15575
142
+ synth_ai/cli/local/experiment_queue/schemas.py,sha256=VbvZoKaaMnPBn2HCLCVsjjqxi4lpbRErlbmK14ZwHaA,3908
143
+ synth_ai/cli/local/experiment_queue/service.py,sha256=sLB9rlJDde5KFztPhN5jUsNVRL3dRy0fFG-MNfDkDL4,11937
144
+ synth_ai/cli/local/experiment_queue/status.py,sha256=h7BRsEcQMsXTltq7jJAaDN3mI08_L6MaeaITyf4T95w,14184
145
+ synth_ai/cli/local/experiment_queue/status_tracker.py,sha256=Hzog56KJRNmlZyXuJgkbWIjoOILg-wbmsKvK4nEveiQ,14625
146
+ synth_ai/cli/local/experiment_queue/tasks.py,sha256=VXq3--IUjz-uT6SsgYlPKTDfip_dHgKXMrOvUL4LNCM,98779
147
+ synth_ai/cli/local/experiment_queue/trace_storage.py,sha256=TtY8AExQhwlAREeSTim2_ShUD97GtZ7c0AHcIEVGh-U,2086
148
+ synth_ai/cli/local/experiment_queue/validation.py,sha256=Yw77tUU29NX4UtL0g28QotA-hm9xnLiYhiw-F9hc3tw,4683
149
+ synth_ai/cli/local/session/__init__.py,sha256=bHYEh0prhjbgBw9sKGtGL4zUeJEeyExT-TWDMZD4aAk,2102
150
+ synth_ai/cli/local/session/client.py,sha256=7et5KpjD-Grw4CVic97Cajjlap5Wv_EWE7glN2h5weo,16227
151
+ synth_ai/cli/local/session/constants.py,sha256=wH6CedQogrthM-qLnsEMCMCAP2_uhTl3c-8C8nyMqO8,1508
152
+ synth_ai/cli/local/session/exceptions.py,sha256=-WCrdiJKyplWoPsjlSSClwiDSZoGrdM__HlP_0rd6z4,3518
153
+ synth_ai/cli/local/session/manager.py,sha256=cwuJFHbaZJfA_YWOnSLjvLMGoB89P6zHwnKF9Oq_7v4,4489
154
+ synth_ai/cli/local/session/models.py,sha256=wIL0DWltnZfSMeQHldQyrJ3L1YO_eC0BzTcIg-vCgCY,2495
155
+ synth_ai/cli/local/session/query.py,sha256=zp3CVAxg6a85fbjnUwZp89wiAi3C5lgzuxG9BwJPiHU,3824
156
+ synth_ai/cli/task_apps/__init__.py,sha256=HhkUJSLIss_Ip1jJkFM3hIJH1H9wqOAGiEFqiV3NvzY,593
157
+ synth_ai/cli/task_apps/commands.py,sha256=-rw4UMGA-4SHDsph-WL5BzrRxsidJlNQ_0Ebo7u3L6g,116074
158
+ synth_ai/cli/task_apps/deploy.py,sha256=eCkz7Vae3BWoW0j2tL0A16k1pN_OKPXq5mTgklT_pLc,215
159
+ synth_ai/cli/task_apps/list.py,sha256=HPTAHlPgsscGDyn1DsGrm7FJj_3WIVah40JuG5BPyeQ,579
160
+ synth_ai/cli/task_apps/main.py,sha256=dfmiJR3bhlusoSBvUiDztdoGb5gRB0YeAMw13kuydZU,974
161
+ synth_ai/cli/task_apps/modal_serve.py,sha256=2PaEjNpntLuh-Z2uuZJhDCCVAO6X7zarCiwKPu4KlX8,402
162
+ synth_ai/cli/task_apps/serve.py,sha256=RFOP_OMvL_2gMOiJXRHr8-iQkwsLaid-W3A315oU7V0,407
163
+ synth_ai/cli/training/__init__.py,sha256=SWIiT6UOxalWeWcRX85VLQ2bbRxVdMajWGe1KOnHU9M,135
164
+ synth_ai/cli/training/train.py,sha256=Rp_SnljXCcjT5eis4LR6WNwW2omaHy_YbVo22Vy-zwk,146
165
+ synth_ai/cli/training/train_cfg.py,sha256=9t7tFwXgkmfXfMMtNEc1wWgSlLlKvkW5MQin8N4L_Gc,868
166
+ synth_ai/cli/training/watch.py,sha256=Vuo3P2pSDBmSIOg-suJf6M-eiv1L1MBbjtGSXKVMEFY,17502
167
+ synth_ai/cli/utils/__init__.py,sha256=muI9F9y8P2j3u9eHnlqJ2IUDWc-PGw2iSu-XOYzdxY4,148
168
+ synth_ai/cli/utils/experiments.py,sha256=0cpPOiqZO17XDWEmI2lmoqNwdipZBduOMNgfO_n35BQ,8525
169
+ synth_ai/cli/utils/queue.py,sha256=U9ALHk5AxHfsuyK_bT5frJRD54gHH28wP803M1axHcc,18828
170
+ synth_ai/cli/utils/recent.py,sha256=VlR4uBTNdqg7YhzYhfGaiWGWOCm27IXABb10ZCKJQxM,4437
171
+ synth_ai/cli/utils/traces.py,sha256=cz7JM0ZUYSufI4ZGUgjDeCxRrIlf6mDoBQqWUIBHpSM,6638
172
+ synth_ai/contracts/__init__.py,sha256=rKO44QW529EyQCK8boIkHDXlHs-3GaJFE8wZX5MSk9Y,1785
173
+ synth_ai/core/__init__.py,sha256=OnILdX0-tLML66_xn1mNxUFBgcqgqgYyi-JveRDwMSU,1863
174
+ synth_ai/core/auth.py,sha256=gRuxaCSdLD2erKqUMNKIvXpC16h1r_fFrLADpgBIh-g,2995
175
+ synth_ai/core/cfgs.py,sha256=SWz_qlO9r9mq-ITS30pgpHDez7-CxrD9l-wIyyH5cGg,8413
176
+ synth_ai/core/env.py,sha256=n-_-bTBaVjg3qd3Aq3cc0mJZPpan99lrfH_dpxQUkaI,6631
177
+ synth_ai/core/errors.py,sha256=SJkOm5BAxjT_atxEwhGP0awMWAjEk88QdRPbggpUnQQ,2925
178
+ synth_ai/core/http.py,sha256=IWftgT9wkxrRS1vy1XfQrj96Z3URifsVBkColoiKIBU,7097
179
+ synth_ai/core/json.py,sha256=cplc_iAeQh3bbb6FoAZNCCDMgz8vVg7q9MSybryCiVg,1793
180
+ synth_ai/core/log_filter.py,sha256=VG1nsEVop1VG-pdRW9Bf8QnmGIFA6Fi0fZ8YrA1DwNg,3525
181
+ synth_ai/core/logging.py,sha256=TODAEinCy9DDEtyX953xL7sd8lCNNWIhC1feo6oINjU,2309
182
+ synth_ai/core/paths.py,sha256=C0AbBgs-12J5PLtDbm3qA5mQgcLxeHc4CwnwnApfbR0,3132
183
+ synth_ai/core/pricing.py,sha256=MTMplluilwXkZ55l8PtemwlK-UIq87kJ8pmZzu6sYIQ,3361
184
+ synth_ai/core/process.py,sha256=i0i-HpFzu7ZbYKJd4kMoNM_-rdvEmGxtco8IaAygUSA,6731
185
+ synth_ai/core/ssl.py,sha256=PdGCGCePac9UkoY6HoL7yztXllyE4mX2ZOM3pmCHXm0,837
186
+ synth_ai/core/task_app_state.py,sha256=iGXattKGilv6UQIBlLkd6d62XXxiAExUzFJ3YqLd0f8,9396
187
+ synth_ai/core/telemetry.py,sha256=0GoBqYDhcx7G4MEFPehtvxOiBRF1jwB5sRtwPcj6utY,8262
188
+ synth_ai/core/urls.py,sha256=QNmDiJp8WJgpSd8d3BfAkUi0vrff6RW3RhI-kcG7-lw,839
189
+ synth_ai/core/user_config.py,sha256=h7pytVtwZD33QAdPRAtEofjIrBMHOph867gaPqFda1Q,3955
190
+ synth_ai/core/uvicorn.py,sha256=f7rWeAYq_XIIm-XID8tHtfOvbtECSuFVhf-p34Mv_pw,7733
191
+ synth_ai/core/_utils/__init__.py,sha256=waV910zcbgQn6YgQdyB7a5yZbJRWKM56dWAPgQbZLow,1560
192
+ synth_ai/core/_utils/base_url.py,sha256=xLmUFClht-I0bpdEZw3GP9bjXenN0RGlyCznmzzX-mQ,294
193
+ synth_ai/core/_utils/http.py,sha256=MVHD4QzH-45fWQTcfE638Mx0zotOoVOq99BmNh36fjo,296
194
+ synth_ai/core/_utils/prompts.py,sha256=mg6w8sVWq5QeO46Ni-EIC7ljLFTSfE7GRjG7VMRe1EE,452
195
+ synth_ai/core/_utils/task_app_state.py,sha256=bj3qi4YL_6cMD4PfTgIMsYt_aqPMu1qYD-SLXfGxXCg,333
196
+ synth_ai/core/_utils/user_config.py,sha256=91xr7HDtP7sjrNDAmULaLJ1nJuH9iyKSwOtqcW46HPM,310
197
+ synth_ai/core/apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
198
+ synth_ai/core/apps/common.py,sha256=kIJ7-_1uFHCs8slNK9_miVeZpn3qr5HmPlmdStoLRO8,3521
199
+ synth_ai/core/config/__init__.py,sha256=CkwqJGTH_nIhZD512-850SGmlfwBYBI91UJrbttJnQE,302
200
+ synth_ai/core/config/base.py,sha256=ZauohJ_RwqssMmPOjJB_PITlY_tHYicWP5WP_jeaxWQ,5198
201
+ synth_ai/core/config/resolver.py,sha256=zUr_6bh6DOl_VHS8gxdb3DC3gv9y3hbvTacHHj_j_8w,2750
202
+ synth_ai/core/integrations/__init__.py,sha256=toqa4Fl0iPb-9x3n5OTw8kefoEMjc7EYLSWIlazDGe4,205
203
+ synth_ai/core/integrations/cloudflare.py,sha256=6be4BF1dVnRvao4JsPWsP2QwHP-tstiJPVApqVti0FE,66204
204
+ synth_ai/core/integrations/modal.py,sha256=0epn8_ZaAbUelqoqFmyPxycCq6pD8hpmAVzNIpMG3PY,10946
205
+ synth_ai/core/integrations/mcp/__init__.py,sha256=xmJMxYXTaBHv7E8ryDeA7ELeNjZnsR2Ft7ayD-267Aw,118
206
+ synth_ai/core/integrations/mcp/__main__.py,sha256=BGpZrCfzjzWkY-9KUs9Fj2x1yYtp3uJbI0S5HLeJOew,177
207
+ synth_ai/core/integrations/mcp/claude.py,sha256=hKkXuhKu3pRHz5SnImQaFo6fWvkF6M7CP2zCfgrQkt0,1262
208
+ synth_ai/core/integrations/mcp/main.py,sha256=3t3VzPXH-2z8eIvb7kp_0d9zI29qPAnBaCUJ_hIvulY,9546
209
+ synth_ai/core/integrations/mcp/setup.py,sha256=_3paE9bCJ8dJI4Pt9qk8tBqWShvtGnlsHLAKXBz8HCM,3076
210
+ synth_ai/core/storage/__init__.py,sha256=eyTmfhYl_HTSemDepifg3VjJygO_7gQR_qva6DhP-LM,1681
211
+ synth_ai/core/tracing_v3/__init__.py,sha256=CndO-mSSiSA-JVdw9DxsEw-bdP47opx0opek61zvz28,3386
212
+ synth_ai/core/tracing_v3/abstractions.py,sha256=uja-8UMh-RWfpVBjsZwNw1UhNMpgsy4Zmd_pEq_qXjI,12865
213
+ synth_ai/core/tracing_v3/config.py,sha256=MWCCWACcbwoEYCd9RmLytGUTlWTCyXQWP4Ccn9BYOJc,8769
214
+ synth_ai/core/tracing_v3/constants.py,sha256=hPsHWSfRAQKWo5p0ULypuvya0Uta76c5tLgnW8htCNE,714
215
+ synth_ai/core/tracing_v3/db_config.py,sha256=zEzUr3gurpmx3-p2egumCjzM85vY5GD63kbXTI0kv10,6540
216
+ synth_ai/core/tracing_v3/decorators.py,sha256=lJ6vJi1horv5H9nmXeh9-BY0LZotet5lihVCMBPnsqA,14939
217
+ synth_ai/core/tracing_v3/hooks.py,sha256=QUfVvE6H2HIkP-dED1ctBpxzJXpaM_7UU-XaU6043W4,7997
218
+ synth_ai/core/tracing_v3/llm_call_record_helpers.py,sha256=Uc_Ypclptba11vJ9Abuq0AT5LRImhJkF_xhLPBAgLx0,15514
219
+ synth_ai/core/tracing_v3/lm_call_record_abstractions.py,sha256=j2RGuXVaV_EXmIosuXRDjptJSlrDXwb8x06k2fF6lqo,9195
220
+ synth_ai/core/tracing_v3/migration_helper.py,sha256=D4-9uKjn_SOauBKk50wkXOuY-_5LE2joRTVsuMJHR6A,4104
221
+ synth_ai/core/tracing_v3/replica_sync.py,sha256=9gbGyItvW5zhcQ8eexmW14S1uljVRIcpeQ1d1h7GLgo,8907
222
+ synth_ai/core/tracing_v3/serialization.py,sha256=YqXbPTA1ZF5jNVwQJGIbi7Uk1VVd7FZuCN5KkjJHiEM,4124
223
+ synth_ai/core/tracing_v3/session_tracer.py,sha256=ZBQD15D-H5choGQ4unOM9H1gRXhxsGCjwrRAmZQPqMY,19728
224
+ synth_ai/core/tracing_v3/trace_utils.py,sha256=3Gtc6Lr3p1YtxRK8vyQX_wHYkQ0mOloaJ59L7VULIQo,9790
225
+ synth_ai/core/tracing_v3/utils.py,sha256=JMdWFqU_JlQbA4Eb9KIo45TdZeNmOlyu3-tOFpZUj8M,3459
226
+ synth_ai/core/tracing_v3/examples/basic_usage.py,sha256=gSIWxeCYNe5WL38FjCaOCv0RvmxZ8SDiPWhA1-8XAeg,7342
227
+ synth_ai/core/tracing_v3/storage/__init__.py,sha256=VPjBh180bcSPz1HsbqaqfnvguwqwomaEYKxkrhfGABY,332
228
+ synth_ai/core/tracing_v3/storage/base.py,sha256=x2Sqjijv6kFNL5yhCgsw71ndbxgaFMcvw_hVGVNi1iQ,6047
229
+ synth_ai/core/tracing_v3/storage/config.py,sha256=odl5QRmJ6isrDgPkhWL1X9ugk7iaI-BkbvaG9q2cq-k,4013
230
+ synth_ai/core/tracing_v3/storage/exceptions.py,sha256=zqfsjb4r8qcZGlId0h9-x0RpJq2_DRDfdlzW6_KIRCw,708
231
+ synth_ai/core/tracing_v3/storage/factory.py,sha256=5ZvbOcm5-zNhjCrbobfnf6iLMvTRSwf3xXHdAUA7K0s,1352
232
+ synth_ai/core/tracing_v3/storage/types.py,sha256=LevN8M12ilZ0EaiQ6Y3yONSMuLGEhSKNt0ir5wbVbek,613
233
+ synth_ai/core/tracing_v3/storage/utils.py,sha256=yDjy6Uoz9PXYk-bGWVxG31MfGN3ncvea0R591lPxJ70,6461
234
+ synth_ai/core/tracing_v3/turso/__init__.py,sha256=hcwysYjh1_ckqrn2DW4QSc2l0jdfN-INrfWciOsTqdI,286
235
+ synth_ai/core/tracing_v3/turso/daemon.py,sha256=HQOcAITKVB1V3WCCC-3coYAftVIdgmtWcGQVCOWGwds,9628
236
+ synth_ai/core/tracing_v3/turso/models.py,sha256=BGQVPxJeefgZW8Qd-yV1BSIlQrHVIm0wp4CWNQfQLN4,16394
237
+ synth_ai/core/tracing_v3/turso/native_manager.py,sha256=w-J4KcBCzO4GapnkovwDTZcrMp8dmI-1WsimTRKSpUQ,52463
238
+ synth_ai/data/__init__.py,sha256=SwzQa7oJqPxd5m27zheiyFQuyQojamRVT-LMvdJoYPw,2226
239
+ synth_ai/data/enums.py,sha256=qAgFTWYYNR8VtClPYMP4fBVJvkP-aMxuqoFAeWvvvd4,2788
240
+ synth_ai/data/rewards.py,sha256=fnwJ63CLyPkimo3FdV05XnII8zkHKD-_C0D8iFPCnfI,5272
241
+ synth_ai/data/specs.py,sha256=VP6XfDqoi4RJ4yAoX61Bqsd5eox0aqW2bL4zEWMnRb4,704
242
+ synth_ai/data/traces.py,sha256=9DvaLDMj93d6tNoWPGxgZi1G3JX-WEzNEXZq43yjIFI,779
243
+ synth_ai/products/__init__.py,sha256=4ImFYMOJAvgBpRZtoJlqe-XrzDenRAzVX-AERno-A7I,198
244
+ synth_ai/products/graph_evolve/__init__.py,sha256=T6axou9iqBJJQEQyEJOUOwVIAc2DwQc_-ZhYWpUrPVo,1316
245
+ synth_ai/products/graph_evolve/client.py,sha256=r7GJgpAjO9LaK5H-Bm_OvcI6JsiKa1wtTVHb8VHbY28,6934
246
+ synth_ai/products/graph_evolve/config.py,sha256=WdUdN_J3khlle8MqOSSQGqUd5DcBCpqQMErSxwiT_sw,23746
247
+ synth_ai/products/graph_evolve/run.py,sha256=mrV-uv0pY46ig8pZZ3dHcKkte-LnToeDYVJ3K1S9yWg,7700
248
+ synth_ai/products/graph_evolve/converters/__init__.py,sha256=6dRVpK8PRSjtsuGQ8oT6JuqRlBEJJjIGHileisUNbyc,1094
249
+ synth_ai/products/graph_evolve/converters/openai_sft.py,sha256=aRXvF0byu768P3zzb8QR8vUdM3FsYq_XXkO_9b3FhXk,15269
250
+ synth_ai/products/graph_evolve/examples/hotpotqa/config.toml,sha256=1yd6AiyRDqDLFOeeWKuJgNvPAa0qY_u02gPvKxXtvLg,4301
251
+ synth_ai/sdk/__init__.py,sha256=y_zMvrnlncBDDt6BsxYhf8rB23TdQk_f00Ijxsgja4s,2695
252
+ synth_ai/sdk/api/__init__.py,sha256=_CrikBpuPlD3fOFBCpbudO2QP_WozrRLQWvtReNahnY,24
253
+ synth_ai/sdk/api/models/supported.py,sha256=zxozXZkHaP70CvscKT1S8SuzJoHmLTy0VwH-p48rpxc,17709
254
+ synth_ai/sdk/api/research_agent/__init__.py,sha256=bBMJF8GOaQm_7dDDZGSFli2nB39Xf-0M8B1-jnQ9DG4,1975
255
+ synth_ai/sdk/api/research_agent/cli.py,sha256=RYpnbH9KLkt8p678kJPByu6OB6iCxayCiF6u2_zpJz0,12171
256
+ synth_ai/sdk/api/research_agent/config.py,sha256=3vVIkwAxJJrOqJI7AZq2mis4ggZr3iUYTVwuu_3Gj_s,11355
257
+ synth_ai/sdk/api/research_agent/job.py,sha256=jdj2hXVoTRdoKGCHwYpQhMVFCFdbrSX_trkb1_LEf5s,24496
258
+ synth_ai/sdk/api/train/__init__.py,sha256=y3DlgTTlwyI5BQiE2Ap5CwMcRS1G-DP288pMTrveBiw,2011
259
+ synth_ai/sdk/api/train/builders.py,sha256=6Oi2YdudBvY-kqHpJeEID9p8__f48QfCDCdDEBct0fk,44547
260
+ synth_ai/sdk/api/train/cli.py,sha256=Hh3CXOJmwPXHhNcckXZsA8vEiPQo5G21ZDG69cfxH0s,92791
261
+ synth_ai/sdk/api/train/config_finder.py,sha256=dQe1P1QtIJT4NM-pvhpt_BT2608lFohqJ_5aM1Ty6Ho,8932
262
+ synth_ai/sdk/api/train/context_learning.py,sha256=nItcZcyUJVN6xqXS2QrngNshVKpRO0dTPtf4MNSdTPQ,10548
263
+ synth_ai/sdk/api/train/env_resolver.py,sha256=fZH5vP8jZg_XqVFDmuLWex5bvhNQ8cDZGTTWM9Yqff8,15039
264
+ synth_ai/sdk/api/train/graph_validators.py,sha256=y38ysD0mtYpY-jsgA_UurWFsttkJH1tqQCwrQdZcjVk,7657
265
+ synth_ai/sdk/api/train/graphgen.py,sha256=J5CWlGAy2-8ThkskmtqLt-NfnTZKXoZQB3flvpSHFmk,37483
266
+ synth_ai/sdk/api/train/graphgen_models.py,sha256=b6JpFPkMJIPMs3yFBCPmP4nhf7SdNNdahZMtoX4LqPM,29983
267
+ synth_ai/sdk/api/train/graphgen_validators.py,sha256=f81KVsT1h0OYbDLy3b__Fs0Gse1EvhOVMtTDdnCnCjU,3348
268
+ synth_ai/sdk/api/train/pollers.py,sha256=tf6qbP_-FwwsxLD_yILidqbDyjaI_5YCSIfIVSQllLk,4421
269
+ synth_ai/sdk/api/train/prompt_learning.py,sha256=7QubjrXnF6gsX4bxGIZKpJXCc4J1FPc0BJlJin7YYA8,17090
270
+ synth_ai/sdk/api/train/rl.py,sha256=pxGIyRmK_8jyTyP2GECPnBpmZmv7zhcWFhh4PRLNmjQ,15833
271
+ synth_ai/sdk/api/train/sft.py,sha256=xOq4Ih275APWOp-jSx9HebJn4tnP9jTxk-XWPxt6_Cg,13180
272
+ synth_ai/sdk/api/train/summary.py,sha256=LG0fkarwnoiuHopDnOYniA0GBOOPmcbSe-F0j4w7_Bg,25298
273
+ synth_ai/sdk/api/train/supported_algos.py,sha256=T-8tlh97OY3aM6MvTahqR0TtnCjSedE0jVAZSeYt6q0,5324
274
+ synth_ai/sdk/api/train/task_app.py,sha256=Wi-mWlHccFCK4uvnHOyStWbjkRHLsTYpDyuy5R6lP0c,12650
275
+ synth_ai/sdk/api/train/utils.py,sha256=ILijLXj673vxPwrm2fzKfdjoNrXMB9M00TS9L-lzzlM,7898
276
+ synth_ai/sdk/api/train/validators.py,sha256=IIz7DHmEVl6iyudVKziDVJAfbxxrRWQg3cyf-7OYlDg,124761
277
+ synth_ai/sdk/api/train/configs/__init__.py,sha256=Fl-bDFw8i42O3HkhMnGsGlqm7uLYOlESxrXUWheUQ24,1442
278
+ synth_ai/sdk/api/train/configs/prompt_learning.py,sha256=R1MJ9bJ83QN6gc3YUT2wsu0P4hf584h-o-DqJVL7JKE,79048
279
+ synth_ai/sdk/api/train/configs/rl.py,sha256=_IBFDKW7pMA0n52tt9Yb6qTnBElphblCYyjG5lgiqAY,6387
280
+ synth_ai/sdk/api/train/configs/sft.py,sha256=zyKPZ8Zd4EDl5ktwdo1ZM3qdh56msfVCZcCX4dMdScE,2965
281
+ synth_ai/sdk/api/train/configs/shared.py,sha256=UeNRmfyCwV7X7xfrthfhIbD4h3RLoo9an6VvI7QJfeE,2579
282
+ synth_ai/sdk/api/train/progress/__init__.py,sha256=8UK3934c_-BbM3DlFRBHxd1uxi2cdPB603GwxWWXUbI,2212
283
+ synth_ai/sdk/api/train/progress/dataclasses.py,sha256=dsi36wsWesMkk0q-mMnPIBdpHN6gorB5fewW3m4q7MU,20966
284
+ synth_ai/sdk/api/train/progress/events.py,sha256=VV_g7A9au0_JkQExKRPgci9HBwOgSBgvlfhc3ExCAkg,10973
285
+ synth_ai/sdk/api/train/progress/results.py,sha256=9geCkGOE6PHUVgn-3umaLt9wTAYBSFI8FiXu62gbNj8,14211
286
+ synth_ai/sdk/api/train/progress/tracker.py,sha256=aA0dR3hf_hODaaBNmClqagEY3kOvysmc7i5OnU5C6UI,24492
287
+ synth_ai/sdk/baseline/__init__.py,sha256=XBhLlIm5b5IjgO1xefpMpQ-NV1uyarv_i1vuRPBBUR0,591
288
+ synth_ai/sdk/baseline/config.py,sha256=01VuEXqPocuX76JUKe0a62H_b2GSIhwzQ3IM4h4pi9w,6845
289
+ synth_ai/sdk/baseline/discovery.py,sha256=fPfDY7vRtTtxldccHjaiNBhYudJqOhg9oRm5t1teYEU,7172
290
+ synth_ai/sdk/baseline/execution.py,sha256=Nx4SFCkRN9dmjBpfuLeFTBWHzBzWrO_uIMdEJuO9_Rg,5303
291
+ synth_ai/sdk/graphs/__init__.py,sha256=E-8SrhCCvRvAGJQdnjXc8qbYYSGy0dNUThm5PRQYkvU,262
292
+ synth_ai/sdk/graphs/completions.py,sha256=kjq9oVDyeWNUsTbLO0kiUiF7EiufcWzK6q1aH6GE1Nc,21535
293
+ synth_ai/sdk/inference/__init__.py,sha256=R8NSo1Z2p4il71cJbXKfACaSz2Tn0uLhYcEnsjENVyE,75
294
+ synth_ai/sdk/inference/client.py,sha256=7PqED9BDav8l0jCwaFO7Vu57VmN41rcss0zAdjX5V6E,4945
295
+ synth_ai/sdk/jobs/__init__.py,sha256=JHofV9KgQfGUuiU1oM693WlF5J9TmV32YbfOeqxsCtQ,254
296
+ synth_ai/sdk/jobs/client.py,sha256=Htk7_2B0KHn--hu8gahvFdIXAIYQNU9M1Emjd0NDj-8,13235
297
+ synth_ai/sdk/judging/__init__.py,sha256=v8isNbMSZwhTWbKFf6hlwChrFjc8wKm7xtxLZdrpqNk,340
298
+ synth_ai/sdk/judging/base.py,sha256=eXEVrkEhocmO_9A9aF2BGTWiQ9i5C9ozabQlwlRNO-0,580
299
+ synth_ai/sdk/judging/client.py,sha256=plbMwigQfYYA5YvwOHb8702SDZsEU4qxnls0VsS58ZU,7855
300
+ synth_ai/sdk/judging/schemas.py,sha256=2uWocuaNFHvm4suV-9RdZg0mWccR5hFG70VJsdtV2yE,8612
301
+ synth_ai/sdk/judging/types.py,sha256=vpg2u4vLi7EqXJYgMM44TPXKKQKDxkcK3_KzYeHU6l0,930
302
+ synth_ai/sdk/learning/__init__.py,sha256=ZseQjl8UPliV4Jreuq7AinUTGm1PFDGfKPKYXXdRjAM,1814
303
+ synth_ai/sdk/learning/algorithms.py,sha256=N2sXJ-U5QfvmSCtB2KUkTMyg46_pibYXHdIrYSKGyxA,342
304
+ synth_ai/sdk/learning/client.py,sha256=7lV5fw5F3vE9OcrqJ-sZeZ30579_WjuaMO7kNsRxYa0,9552
305
+ synth_ai/sdk/learning/config.py,sha256=-mh2thnHfuwivKnEt4VYCfPPrgwpQvY9QeMg-7HW1H4,98
306
+ synth_ai/sdk/learning/constants.py,sha256=QaunQg7Xru0S6AQv_-zoDprMB0ssn9sPHnhaTxz8reY,536
307
+ synth_ai/sdk/learning/core.py,sha256=bA_Ng3YKeCJb1scnrSapp48HildL7Pd2fHkZ4zxurZU,440
308
+ synth_ai/sdk/learning/ft_client.py,sha256=JMNAa0SwXbhqKo0pFPK7c8q9zVWBtyKP-lWrP6RR2s4,183
309
+ synth_ai/sdk/learning/gateway.py,sha256=8plVu9V_0PTt1ZI6awuh9wSFT4BqS-mLshaN77wGyDk,31
310
+ synth_ai/sdk/learning/health.py,sha256=6egq7mszJCi7QxZE2q8di76JsorvLGanIgoAQ1dF1CY,1593
311
+ synth_ai/sdk/learning/jobs.py,sha256=VDoRZ_uHZJScXbOHdHhaL6c8_nRP0rpubLsWNJ2Br_E,9261
312
+ synth_ai/sdk/learning/prompt_extraction.py,sha256=sG7lL3-Ve8Jg9TDhVQfX8q8fOKlOtNlbz7aKL0VfcCk,12111
313
+ synth_ai/sdk/learning/prompt_learning_client.py,sha256=cVmV_b5zVswfLm2T-bnH-exzjmW40i8ZwgG66Bwubnw,18889
314
+ synth_ai/sdk/learning/prompt_learning_types.py,sha256=36-es2i12GIrN0ymsAYjLM478wBnQXxR1ja32HyuO4U,5734
315
+ synth_ai/sdk/learning/rl_client.py,sha256=zJfY3M-9i45lfStN7_ptk8XUAM8z7MUrk_NN4OIBqkA,92
316
+ synth_ai/sdk/learning/sse.py,sha256=E95hgsHK27hxyl4xcgGH_6hmn-GHk3qhgcI8H7_-7c4,1796
317
+ synth_ai/sdk/learning/validators.py,sha256=rBddzoMMKpK7tZ9M3kSZB43cDH6MBZibcHcj66pBdLw,1644
318
+ synth_ai/sdk/learning/rl/__init__.py,sha256=L3GAK_1DPMg2Y8mhHm1ywKUOAdZBqKlHiu5HrJabCKY,872
319
+ synth_ai/sdk/learning/rl/client.py,sha256=InEu7BGCAap7MepkDkTb8TenwJZhGL8puf5fM8jtYjs,11479
320
+ synth_ai/sdk/learning/rl/config.py,sha256=T70JlL4i6tSft09-jOs84hFgAiD2XpcVCtC5Rfz7Ehk,864
321
+ synth_ai/sdk/learning/rl/contracts.py,sha256=JpkxaqF3hCT2QP18ZApXlLIaYwGLai90TY0TKkFkk2s,574
322
+ synth_ai/sdk/learning/rl/env_keys.py,sha256=WqkU0WutklwAZfdoxbgDzDrsPDYjapirELOEoPn9XIY,5586
323
+ synth_ai/sdk/learning/rl/secrets.py,sha256=MJkyJbiedtZmNz0L_VwSgbTk4LSmbjElmYHOf34WfEc,272
324
+ synth_ai/sdk/learning/sft/__init__.py,sha256=6SOcXUwYebySuy1QGLApv5U6zbAOobcSE6NsInouwPA,564
325
+ synth_ai/sdk/learning/sft/client.py,sha256=Q3HoAM4umeSyHo1i4Ate8NSrAJPpYRWifx-5pe4xaTo,3619
326
+ synth_ai/sdk/learning/sft/config.py,sha256=oDG2g7U-j8PoPcL_myBrqcgBtLJSnknXng1_c1tCTnU,9795
327
+ synth_ai/sdk/learning/sft/data.py,sha256=oaJr79u0I-hzngE2G-nBUAzrl6rbnaCo7ilMTy7NX6k,23590
328
+ synth_ai/sdk/research_agent/__init__.py,sha256=yUX9Y5I0APQHoL4eub5fUFZf4fIfRitLpo4S3y5CYfE,854
329
+ synth_ai/sdk/research_agent/container_builder.py,sha256=sj5nlCbmuIns_xaDcJyIHWqvKntfeGKCt9r1nxVBq-8,11434
330
+ synth_ai/sdk/research_agent/container_spec.py,sha256=JE4JUWZ3ZjPIBtul2GRhoFxQxRtT-D2qilDI4TDCVOk,7678
331
+ synth_ai/sdk/research_agent/defaults.py,sha256=wKoeokVii3ECUM5dNhZYGm8fpB4Ir7vWj_pXeuGfUdY,719
332
+ synth_ai/sdk/research_agent/results_collector.py,sha256=5C9KQLeJNZPcymn3YOE1WtjoinM_J4uhYXG7o2n44ow,2494
333
+ synth_ai/sdk/specs/__init__.py,sha256=BaZOGkU8Wy1f6Rc6K0ljEdljxNoSf2obMZ3Qou12nRY,1081
334
+ synth_ai/sdk/specs/dataclasses.py,sha256=l0UOv7llQFIz2AzgWnoJ6ewl02L-c8KtuhvpWNrLG1I,4165
335
+ synth_ai/sdk/specs/loader.py,sha256=Kn1MiRptTnHk8xSAWXdqM3G_zjCHf9-4yoCXbPMW3Ko,3559
336
+ synth_ai/sdk/specs/serializer.py,sha256=HOpU3jdtn8BDIwrPorKgxQhE1KIeuixNOK50ih83cxs,7505
337
+ synth_ai/sdk/specs/validation.py,sha256=gGdUhVZ9RXkhqImRmgZVADMPz8xZOM-cJgiO04rCs-E,8902
338
+ synth_ai/sdk/streaming/__init__.py,sha256=n4NMivfc2sdCSeB1QdnrSlmf4ok3p2eXxKNVtLqceEQ,767
339
+ synth_ai/sdk/streaming/config.py,sha256=lx2Zn0oBG5cuWgXNz2RoBMmI_nOrnuT1px7Zy2eQ8Jw,3580
340
+ synth_ai/sdk/streaming/handlers.py,sha256=39mqCOpM4tVAn7l0KePrVwPzuOYRgmPf58GRmjCi00I,87634
341
+ synth_ai/sdk/streaming/streamer.py,sha256=EGfYSJrnolNyQP5pCYWxtdfZxJZTO6Sd9iZ-mrfME8c,31267
342
+ synth_ai/sdk/streaming/types.py,sha256=Vz1llmdZMegDKURhvFLYSFYwLZT9RNIpPGOK6hJFyM0,3720
343
+ synth_ai/sdk/task/__init__.py,sha256=4tDeCa6PBjlJJWi7r-YT-qbBQvacNCwMjxYFWwjKC_s,3796
344
+ synth_ai/sdk/task/auth.py,sha256=IUD3DcU-43qczWV9sSccXsjDOkZe8sJHmcQtues1YWQ,5652
345
+ synth_ai/sdk/task/client.py,sha256=ccbcYRaZZ5MBMcfFdA8x2t7PjXEdvKuFmwRxrRl_8vk,5741
346
+ synth_ai/sdk/task/config.py,sha256=hZMMeCQj1sgrXWmPfqcIU-h2bvE7A4qkXXCR7eme8Ac,8781
347
+ synth_ai/sdk/task/contracts.py,sha256=gmfOhucK8fBf4gnWTEWIrKRvDY_lr0qaaYaz6mF4TZA,9638
348
+ synth_ai/sdk/task/datasets.py,sha256=QCQIzFj580YEfUths60tYNM3UGPB9gYgQ9aMVHOS0UI,3974
349
+ synth_ai/sdk/task/errors.py,sha256=BOdWz0fgJVprx2-mGRJTnTilAGHmc4WRpUVFA7eLrlc,1524
350
+ synth_ai/sdk/task/health.py,sha256=wfNNLYlWLmwoPpHA8ahDdqb0YAZ8JTyHzs8bdIX-pOI,1139
351
+ synth_ai/sdk/task/in_process.py,sha256=iRTTVY4uRJRFlTVpoM55gybqF35U2zD21zpfh0wBX_A,52314
352
+ synth_ai/sdk/task/in_process_runner.py,sha256=5TS4fNvqGDiPqPisKC6O73JMekLBXuC0LUR6o4fjkXI,11609
353
+ synth_ai/sdk/task/inference_api.py,sha256=nwDhU9U5hcnuGbPCUz3tveHsnjTkTf5gNa59IrnH_20,11957
354
+ synth_ai/sdk/task/json.py,sha256=SB9XdHFloJha9WeClq4mvaL8B21-fRl9kb1d1JlNfIc,3612
355
+ synth_ai/sdk/task/proxy.py,sha256=0iZw9vSuRJ8p5QTWzGj3bTXFja9wIeuP_pBKkNN375M,10126
356
+ synth_ai/sdk/task/rubrics.py,sha256=_qqAvl1NFGW6nJlzmI3UwjxuvWbOQeLcMwrZpmpMQGk,7180
357
+ synth_ai/sdk/task/server.py,sha256=OgEj9yRCr20RDVNH-r_CI9zYum5e8HqVCeCLLr2nZYM,21981
358
+ synth_ai/sdk/task/trace_correlation_helpers.py,sha256=73BR7C9Y9ybTwyvN0_KZ4LYSZU-43Uh4CghDXxOp9Ag,17675
359
+ synth_ai/sdk/task/tracing_utils.py,sha256=6tztut5Aolh_5Vf9PnNxeBOrWik4SHlODQk5fG5pKps,3112
360
+ synth_ai/sdk/task/validators.py,sha256=5PkIyDZbFO1v6gYHNYOWlRaHByKFQZua6pWHSH6nUbI,18687
361
+ synth_ai/sdk/task/vendors.py,sha256=a5t_1HGwPnPUoPMbzNB87jOTCyA4S7W7eIgJ-E4Gfew,1626
362
+ synth_ai/sdk/task/apps/__init__.py,sha256=cFXA2S_JEcJFMpJja7gxmOf1cxrEq3cssQjzRDIQ-lU,4299
363
+ synth_ai/sdk/task/rubrics/__init__.py,sha256=i4xxA7Jp70xoWxV3D9faB8nfJU4W54WLhjj3GxW1Wz0,1367
364
+ synth_ai/sdk/task/rubrics/loaders.py,sha256=koYF5VTP66MfvjMUA27bhqE7i0U6SauSLUobSCKtUX4,5268
365
+ synth_ai/sdk/task/rubrics/models.py,sha256=wCwv8DzVOZ724yoGi-fduFWAEglR1tg2H3ct_4SdVks,1703
366
+ synth_ai/sdk/task/rubrics/scoring.py,sha256=eea5KXnlJWUASFf2kYXClbZEW48SGv0mlvvvX-265rU,3752
367
+ synth_ai/sdk/task/rubrics/strict.py,sha256=kKj9nIeuNMjptxrFoJd-J0sdEQtZ2Q1pIH5NyRJlAl8,4346
368
+ synth_ai/sdk/tracing/__init__.py,sha256=ffvspHTVLMgUkHOgCz6nRyzVnhOIf2Y_4tdO8fBMI4I,855
369
+ synth_ai/sdk/training/__init__.py,sha256=X1shdI1Lyf4GgxWd4_PdaK068RvqNEZIY0djuajuqwQ,2935
370
+ synth_ai/sdk/usage/__init__.py,sha256=Q-xYzsEDYII5ur2BMy5fIWLgXwjEUawkQPfra9Lfvss,696
371
+ synth_ai/sdk/usage/client.py,sha256=a0mZuJ3wBTVnGsJQ6LHTzyFh-7p6vLgcrQosG95IymY,5288
372
+ synth_ai/sdk/usage/models.py,sha256=2Qr1hOs9WQPiSd0ArWMfEFUeNvfRY1Wuu3u3lxWBUOo,7500
373
+ synth_ai/utils/__init__.py,sha256=jMc6oUg5p7wIgKaZ7R8H-RNzSP_JAFux-5rkOraYjQA,6922
374
+ synth_ai-0.4.1.dist-info/licenses/LICENSE,sha256=ynhjRQUfqA_RdGRATApfFA_fBAy9cno04sLtLUqxVFM,1069
375
+ synth_ai-0.4.1.dist-info/METADATA,sha256=evAAcWZwnNHev1ndhVAK1Au_dgxK58KN8YFjxnuou-s,7300
376
+ synth_ai-0.4.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
377
+ synth_ai-0.4.1.dist-info/entry_points.txt,sha256=GSFXaJreq4PJXbixkUI0GHZwGh2dZDG5pYaoVmqr_KE,46
378
+ synth_ai-0.4.1.dist-info/top_level.txt,sha256=fBmtZyVHuKaGa29oHBaaUkrUIWTqSpoVMPiVdCDP3k8,9
379
+ synth_ai-0.4.1.dist-info/RECORD,,
@@ -0,0 +1 @@
1
+ synth_ai
examples/__init__.py DELETED
@@ -1,16 +0,0 @@
1
- """Top-level package for Synth AI example environments and utilities."""
2
-
3
- from importlib import resources as _resources
4
-
5
- __all__ = ["path_for"]
6
-
7
-
8
- def path_for(package: str, resource: str) -> str:
9
- """Return absolute path for a packaged resource inside ``examples``.
10
-
11
- This helper mirrors the one under ``synth_ai`` so hosted apps can access
12
- bundled assets without needing to install the repo in editable mode.
13
- """
14
-
15
- with _resources.as_file(_resources.files(f"examples.{package}") / resource) as path:
16
- return str(path)
@@ -1,17 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Run Crafter agent and analyze semantic map word distribution
4
- # This script demonstrates semantic analysis of agent observations
5
- # Output: Markdown tables and JSON data (no plotting dependencies)
6
-
7
- echo "🔍 Analyzing semantic map words from Crafter agent..."
8
- echo "Make sure the synth-ai service is running: uvx synth-ai serve"
9
- echo ""
10
-
11
- cd synth_ai/environments/examples/crafter_classic/agent_demos/
12
-
13
- # Run the semantic analysis (markdown output only)
14
- python analyze_semantic_words_markdown.py --model gemini-1.5-flash --episodes 3 --max-turns 30
15
-
16
- echo ""
17
- echo "✅ Analysis complete! Check the generated markdown report and JSON files."