freesolo-flash-dev 1.0.75__tar.gz → 1.0.76__tar.gz
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.
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/PKG-INFO +1 -1
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/TRAINING.md +2 -2
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/env_setup.py +1 -1
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/recipe.py +2 -8
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/heartbeat.py +8 -5
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/pyproject.toml +2 -2
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_multimodal_training.py +1 -1
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_opd.py +32 -28
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/uv.lock +1 -1
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.dockerignore +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.env.example +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/dependabot.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/auto-rebake.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/bake-kernel-cache.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/ci.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/main-source-guard.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/notify-tests-repo.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/publish-dev.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/publish-image.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/publish.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/version-parity.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/worker-image.yml +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.gitignore +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/CODE_OF_CONDUCT.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/CONTRIBUTING.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/Dockerfile +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/Dockerfile.worker +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/LICENSE +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/NOTICE +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/README.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/SECURITY.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/SELF_HOSTING.md +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/build/kernel_cache/.gitignore +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/build/kernel_cache/.keep +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/Dockerfile.kernelcache +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/Dockerfile.kernelcache.relayer +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/bake_kernel_cache.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/bake_pod_entry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/kernel_fingerprint.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/make_rp_handler.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/_channel.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/_fileio.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/_logging.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/_update_check.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/adapter_artifacts.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/catalog.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/__main__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/_tty.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/commands.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/env_eval.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/env_test.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/envpush.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/render.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/traces.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cli/training_doc.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/client/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/client/config.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/client/http.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/client/runtime_secrets.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/client/specs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cost/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cost/analytical.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cost/facts.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cost/spec.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/cost/types.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/diagnostics.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/accounting.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/multiturn_reward_scoring.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/reward_profile.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/steps.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/structured_outputs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/vram.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/__main__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/_pkg.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/adapter.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/backend_common.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/decoding.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/finalize.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/grpo.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/grpo_multiturn.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/grpo_plugin.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/hf.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/kernel_warmup.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/lora.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/multiturn_glue.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_gkd.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_multiturn.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_plugin.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_structured.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/packing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/attn.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/diagnostics.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/lifecycle.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/liger.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/loraplus.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/memory.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/rl.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/rl_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/rng.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/rollout_samples.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/sft.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/sft_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/teacher.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/tokenizer_align.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/wandb_log.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker_entrypoint.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/adapter.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/archive.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/archive_policy.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/base.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/evaluations.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/loader.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/pull.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/envs/registry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/lora_rank.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/multimodal.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/opd_retry_contract.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/opd_validation.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_auth.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_deadline.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_hf_artifacts.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_hf_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_http.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_instance.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_instance_bootstrap.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_instance_poll.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_instance_provider.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_poll.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_worker.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/allocator.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/base.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/auth.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/gpus.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/jobs/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/jobs/builders.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/lambdalabs/pricing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/realized.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/auth.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/cost.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/gpus.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/jobs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/keys.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/pricing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/slots.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/train/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/runpod/train/endpoints.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/auth.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/jobs/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/jobs/builders.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/vast/pricing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/weight_cache_preload.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/py.typed +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/runner/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/runner/checkpoints.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/runner/deploy.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/runner/lifecycle.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/runner/verified_revisions.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/schema/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/schema/fields.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/deploy.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/export.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/pricing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/serve/urls.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/__main__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/_deps.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/_internal_client.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/_locks.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/_runtime.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/app.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/auth.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/billing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/billing_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/checkpoints.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/db.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/environment_registry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/envs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/projects.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/reconcile.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/repo_cleanup.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/routes/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/routes/envs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/routes/meta.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/routes/runs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/routes/serving.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/server/run_registry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/spec.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/thinking.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/infisical-entrypoint.sh +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/scripts/build_dev_dist.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/scripts/scrub_history.sh +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/_helpers/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/_helpers/runner.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/_helpers/specs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/_helpers/vast.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/conftest.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/fixtures/math_eval.jsonl +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/fixtures/math_train.jsonl +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/live/__init__.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/live/conftest.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/live/test_lambda_live.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/live/test_runpod_live.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/live/test_vast_live.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_accounting_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_agent_flash_cli_contract.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_algorithms.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_allocator.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_async_uploads.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_backend_common.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_backend_jobspec_contract.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_base_model_provenance.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_billing_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cancel_remote.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_catalog_consistency.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_charge_pricing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_checkpoints.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_commands.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_commands_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_credential_shadowing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_errors.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_estimate.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_gpus_flag.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_help.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_main_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_managed.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_render_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_render_theme.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_traces.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cli_wandb_warning.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_client.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_client_server_integration.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_client_stream_reads.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_config_overrides.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_controlled_experiment_repairs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_analytical.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_equation.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_estimate.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_hardware.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_models.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_cost_rewards.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_deploy_latency.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_dev_channel.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_disk_gb.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_endpoint_name.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_cache_evict.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_delete.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_download.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_download_api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_evaluations.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_no_install.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_publish.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_pull.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_pull_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_pull_loader_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_pull_managed_control_plane.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_push.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_rate_limit_resolve.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_ref_pinning.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_env_test.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_envs_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_export.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_flash_mvp.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_flash_worker.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_flashinfer_cache_dirs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_github_urlopen_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_gpu_type_single_field.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_gpus.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_grpo_mask_aware.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_grpo_params.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_grpo_resident_sizing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_health_liveness.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_hf_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_idle_endpoint_reaper.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_instance_bootstrap_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_internal_client.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_jobs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_kernel_cache.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_kernel_fingerprint.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_kv_util.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_lambda_api_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_lambda_runner.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_logging.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_login_perms.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_lora_rank_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_lora_rank_preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_managed_config_fields.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_managed_hf_repo.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_metrics_schema_agent_contract.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_mig_guard.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_multi_gpu_gate.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_multimodal_input_grads.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_named_reward_metrics.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_oom_escalate_gpu.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_opd_resume_safety.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_opd_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_open_model_policy.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_orchestrator_flash.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_packing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_packing_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_poll_helpers.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_projects.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_provider_preflight_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_provider_routing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_provider_teardown_robustness.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_providers_symmetry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_realized_cost.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_repo_cleanup.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_resolve_params_b.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_resume_on_retry.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_reward_profile.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_rl_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_rollout_samples.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_runmgmt.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_runpod_api_delete.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_runpod_key_fingerprint.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_runpod_key_waterfall.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_runpod_slots.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serve.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serve_reasoning_content.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_app_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_auth_singleflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_billing.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_checkpoints_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_db.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_envs_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_locks_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_server_standalone.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serving_context_preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serving_contract.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serving_pricing_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_serving_schema_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_sft_chunked_nll.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_sft_example_selection.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_sft_gc_off.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_sft_max_context.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_sft_train.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_spec_and_validation.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_step_metrics.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_structured_outputs.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_thinking_config.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_train_context_preflight.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_training_controls.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_update_check.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vast_api.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vast_api_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vast_offers.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vast_provider_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vast_runner.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_verified_revisions.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_verifiers.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_version.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vl_warmstart_adapter_keys.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_vram_architecture.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_wandb_link.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_wandb_log_coverage.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_wandb_naming.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_warmstart_adapter_download.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_warmstart_cross_repo.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_warmstart_error_attribution.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_weight_cache.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_dryrun.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_hardexit.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_image.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_init_heartbeat.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_stack.py +0 -0
- {freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/tests/test_worker_thinking.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: freesolo-flash-dev
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.76
|
|
4
4
|
Summary: Flash — managed LoRA post-training (SFT/GRPO/OPD) for Freesolo environments, driven by the `flash` CLI
|
|
5
5
|
Project-URL: Homepage, https://github.com/freesolo-co/flash
|
|
6
6
|
Project-URL: Repository, https://github.com/freesolo-co/flash
|
|
@@ -848,7 +848,7 @@ with no reward to design. It supports `epochs` like SFT/GRPO and produces a LoRA
|
|
|
848
848
|
|
|
849
849
|
- **Pick the teacher with `[train] teacher_model`; the key stays managed.** The teacher defaults to
|
|
850
850
|
the managed **GLM 5.2** and is selectable from a fixed, managed allow-list:
|
|
851
|
-
`glm-5.2` (default)
|
|
851
|
+
`glm-5.2` (default) or `kimi-k2.6`. Every option is
|
|
852
852
|
a Fireworks-hosted model reached with the platform's own key, so there is nothing to export or
|
|
853
853
|
declare — an opd run submits like any other, and a `FIREWORKS_API_KEY` in your shell is ignored.
|
|
854
854
|
Arbitrary bring-your-own teacher models or keys are not supported (the allow-list is curated to
|
|
@@ -883,7 +883,7 @@ epochs = 1
|
|
|
883
883
|
max_examples = 2
|
|
884
884
|
lora_rank = 32
|
|
885
885
|
# teacher_model = "glm-5.2" # managed teacher to distil from; one of
|
|
886
|
-
# # glm-5.2 (default) |
|
|
886
|
+
# # glm-5.2 (default) | kimi-k2.6
|
|
887
887
|
# # (key stays managed)
|
|
888
888
|
# kl_penalty_coef = 1.0 # reverse-KL scale
|
|
889
889
|
```
|
|
@@ -667,7 +667,7 @@ def cmd_env_setup(args) -> int:
|
|
|
667
667
|
f"{max_examples_line}"
|
|
668
668
|
"lora_rank = 32\n"
|
|
669
669
|
'# teacher_model = "glm-5.2" # teacher to distil from: glm-5.2 (default) |\n'
|
|
670
|
-
"# #
|
|
670
|
+
"# # kimi-k2.6 (key stays managed)\n"
|
|
671
671
|
"# GPU and HF artifacts are managed automatically by the platform: the GPU is\n"
|
|
672
672
|
"# the cheapest fitting managed class, and artifacts live in a private environment-scoped repo.\n"
|
|
673
673
|
)
|
|
@@ -26,8 +26,8 @@ class TeacherModel:
|
|
|
26
26
|
display_name: str
|
|
27
27
|
# Fireworks serverless list price, $/1M tokens as (input, output). OPD echo-scores completions
|
|
28
28
|
# (max_tokens=0) so only the INPUT column is billed / feeds the estimate, but both are kept so a
|
|
29
|
-
# mispriced row is obvious.
|
|
30
|
-
# serverless
|
|
29
|
+
# mispriced row is obvious. note: the non-glm entry is a best-effort estimate for this next-gen
|
|
30
|
+
# serverless model — confirm against the live fireworks.ai pricing before relying on the
|
|
31
31
|
# `flash train` cost quote.
|
|
32
32
|
usd_per_1m: tuple[float, float]
|
|
33
33
|
supports_images: bool = False
|
|
@@ -49,12 +49,6 @@ TEACHER_MODELS: dict[str, TeacherModel] = {
|
|
|
49
49
|
display_name="GLM 5.2",
|
|
50
50
|
usd_per_1m=(1.40, 4.40),
|
|
51
51
|
),
|
|
52
|
-
"deepseek-v4-pro": TeacherModel(
|
|
53
|
-
alias="deepseek-v4-pro",
|
|
54
|
-
model_id="accounts/fireworks/models/deepseek-v4-pro",
|
|
55
|
-
display_name="DeepSeek V4 Pro",
|
|
56
|
-
usd_per_1m=(1.74, 3.48),
|
|
57
|
-
),
|
|
58
52
|
"kimi-k2.6": TeacherModel(
|
|
59
53
|
alias="kimi-k2.6",
|
|
60
54
|
model_id="accounts/fireworks/models/kimi-k2p6",
|
|
@@ -37,11 +37,14 @@ _HB_SETUP_LIVENESS_STAGES = frozenset(
|
|
|
37
37
|
"sft_configuring",
|
|
38
38
|
"opd_configuring",
|
|
39
39
|
"opd_filtering_prompts",
|
|
40
|
+
"opd_prompt_scan",
|
|
41
|
+
"opd_image_prep",
|
|
40
42
|
"sft_initializing",
|
|
41
43
|
"rl_initializing",
|
|
42
44
|
"opd_initializing",
|
|
43
45
|
"sft_finalizing",
|
|
44
46
|
"rl_finalizing",
|
|
47
|
+
"opd_finalizing",
|
|
45
48
|
}
|
|
46
49
|
)
|
|
47
50
|
# Mid-training the per-step checkpoint upload runs SYNCHRONOUSLY on the trainer thread (dev #445),
|
|
@@ -57,11 +60,11 @@ _HB_TIGHT_LIVENESS_STAGES = _HB_SETUP_LIVENESS_STAGES | _HB_UPLOAD_LIVENESS_STAG
|
|
|
57
60
|
# latest per-step GRPO backlog, exposed so a top-level error heartbeat can preserve it
|
|
58
61
|
# for `flash runs log -f` when a short run raises before the throttled rl_step ping committed
|
|
59
62
|
LATEST_GRPO_METRICS_LAST: list = []
|
|
60
|
-
#
|
|
61
|
-
#
|
|
62
|
-
#
|
|
63
|
-
#
|
|
64
|
-
#
|
|
63
|
+
# throttle these stages to protect the hf repository commit budget; terminal transitions are never throttled.
|
|
64
|
+
# opd_filtering_prompts emits a real heartbeat on each scan tick, while opd_prompt_scan and
|
|
65
|
+
# opd_image_prep emit one when progress advances. opd_finalizing emits one on every keepalive tick.
|
|
66
|
+
# without throttling, these opd stages can make roughly 120 commit attempts per hour. tight-liveness,
|
|
67
|
+
# per-step training, and checkpoint_uploading keepalive stages share the same throttle.
|
|
65
68
|
_HB_THROTTLED_STAGES = _HB_TIGHT_LIVENESS_STAGES | frozenset({"rl_step", "sft_step", "opd_step"})
|
|
66
69
|
_HB_TERMINAL_STAGES = frozenset({"done", "already_done"})
|
|
67
70
|
# 600s -> ~6 commits/hr; keeps stall detector alive without hitting the HF commit cap.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "freesolo-flash-dev"
|
|
3
|
-
version = "1.0.
|
|
3
|
+
version = "1.0.76"
|
|
4
4
|
description = "Flash — managed LoRA post-training (SFT/GRPO/OPD) for Freesolo environments, driven by the `flash` CLI"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
# RunPod Flash supports Python 3.11-3.12 (not 3.13 yet).
|
|
@@ -123,7 +123,7 @@ artifacts = ["flash/py.typed"]
|
|
|
123
123
|
# auto-published by .github/workflows/publish-dev.yml: a push to `dev` whose version isn't yet on
|
|
124
124
|
# PyPI publishes it; pushes that don't change it find it already published and no-op. So cutting a
|
|
125
125
|
# dev-channel release = bump this (and [project].version) and merge to `dev`.
|
|
126
|
-
version = "1.0.
|
|
126
|
+
version = "1.0.76"
|
|
127
127
|
|
|
128
128
|
[tool.pytest.ini_options]
|
|
129
129
|
pythonpath = ["."]
|
|
@@ -618,7 +618,7 @@ def test_image_opd_preflight_validates_packaged_dataset_before_allocation(tmp_pa
|
|
|
618
618
|
mm.preflight_validate_image_opd(unsupported)
|
|
619
619
|
|
|
620
620
|
|
|
621
|
-
@pytest.mark.parametrize("teacher_model", ["", "glm-5.2", "
|
|
621
|
+
@pytest.mark.parametrize("teacher_model", ["", "glm-5.2", "accounts/fireworks/models/glm-5p2"])
|
|
622
622
|
def test_image_opd_preflight_requires_kimi_vision_teacher(tmp_path, teacher_model):
|
|
623
623
|
root, _image = _package(tmp_path)
|
|
624
624
|
env_file = root / "environment.py"
|
|
@@ -467,11 +467,8 @@ def test_opd_selects_managed_teacher_and_rejects_unknown():
|
|
|
467
467
|
run_id="x",
|
|
468
468
|
)
|
|
469
469
|
|
|
470
|
-
#
|
|
470
|
+
# supported aliases parse and are stored as the canonical fireworks model id.
|
|
471
471
|
assert _spec("kimi-k2.6").train.teacher_model == "accounts/fireworks/models/kimi-k2p6"
|
|
472
|
-
assert (
|
|
473
|
-
_spec("deepseek-v4-pro").train.teacher_model == "accounts/fireworks/models/deepseek-v4-pro"
|
|
474
|
-
)
|
|
475
472
|
# A spaced / mixed-case form normalizes to the same model id.
|
|
476
473
|
assert _spec("GLM 5.2").train.teacher_model == "accounts/fireworks/models/glm-5p2"
|
|
477
474
|
# The raw Fireworks model id is also accepted (identity), including with stray surrounding
|
|
@@ -487,11 +484,15 @@ def test_opd_selects_managed_teacher_and_rejects_unknown():
|
|
|
487
484
|
# Omitting/blank leaves it unset ("" => the worker uses the default GLM 5.2 teacher).
|
|
488
485
|
assert _spec("").train.teacher_model == ""
|
|
489
486
|
|
|
490
|
-
#
|
|
487
|
+
# an unsupported teacher is rejected at parse time with a teacher-specific configerror.
|
|
491
488
|
with pytest.raises(ConfigError, match="teacher_model"):
|
|
492
489
|
_spec("gpt-5.5")
|
|
490
|
+
with pytest.raises(ConfigError, match="teacher_model"):
|
|
491
|
+
_spec("deepseek-v4-pro")
|
|
492
|
+
with pytest.raises(ConfigError, match="teacher_model"):
|
|
493
|
+
_spec("accounts/fireworks/models/deepseek-v4-pro")
|
|
493
494
|
# qwen-3.7-max (on-demand only) and minimax-m3 (serverless chat, but its /completions echo
|
|
494
|
-
# endpoint
|
|
495
|
+
# endpoint opd needs does not respond) are not allow-listed teachers, so both are rejected.
|
|
495
496
|
with pytest.raises(ConfigError, match="teacher_model"):
|
|
496
497
|
_spec("qwen-3.7-max")
|
|
497
498
|
with pytest.raises(ConfigError, match="teacher_model"):
|
|
@@ -652,17 +653,17 @@ def test_opd_filtering_stage_is_setup_not_training():
|
|
|
652
653
|
) # progress count doesn't flip it
|
|
653
654
|
|
|
654
655
|
|
|
655
|
-
def
|
|
656
|
-
"""
|
|
657
|
-
per liveness tick while it renders+tokenizes the whole split. Unthrottled that is one HF commit
|
|
658
|
-
per tick -- ~120/hr on a large split before model load, blowing the 128/hr commit cap. It must be
|
|
659
|
-
registered in BOTH heartbeat sets its SFT analogue sft_pretokenizing lives in: the throttle set
|
|
660
|
-
(bounds commit rate) and the setup-liveness set (keeps the tighter cold-start upload cadence)."""
|
|
656
|
+
def test_opd_liveness_stages_are_throttled_at_setup_cadence():
|
|
657
|
+
"""opd liveness threads must use the throttled setup-liveness cadence."""
|
|
661
658
|
from flash.engine.worker.heartbeat import _HB_SETUP_LIVENESS_STAGES, _HB_THROTTLED_STAGES
|
|
662
659
|
|
|
660
|
+
opd_liveness_stages = {"opd_prompt_scan", "opd_image_prep", "opd_finalizing"}
|
|
661
|
+
assert opd_liveness_stages <= _HB_SETUP_LIVENESS_STAGES
|
|
662
|
+
assert opd_liveness_stages <= _HB_THROTTLED_STAGES
|
|
663
|
+
|
|
663
664
|
assert "opd_filtering_prompts" in _HB_THROTTLED_STAGES
|
|
664
665
|
assert "opd_filtering_prompts" in _HB_SETUP_LIVENESS_STAGES
|
|
665
|
-
# parity with the
|
|
666
|
+
# parity with the sft pre-tokenize stage this mirrors (same dual membership).
|
|
666
667
|
assert "sft_pretokenizing" in _HB_THROTTLED_STAGES
|
|
667
668
|
assert "sft_pretokenizing" in _HB_SETUP_LIVENESS_STAGES
|
|
668
669
|
|
|
@@ -1268,8 +1269,8 @@ def test_opd_teacher_rate_matches_fireworks_glm5p2_input_price():
|
|
|
1268
1269
|
|
|
1269
1270
|
def test_opd_teacher_price_table_covers_every_allowlisted_teacher():
|
|
1270
1271
|
"""Every allow-listed teacher is priced by its exact row (pricing routes through resolve_teacher
|
|
1271
|
-
over recipe.TEACHER_MODELS, so there is no unpriced teacher),
|
|
1272
|
-
|
|
1272
|
+
over recipe.TEACHER_MODELS, so there is no unpriced teacher), Kimi carries its own input price
|
|
1273
|
+
(not silently GLM-priced), and an unknown teacher falls back to the default rate."""
|
|
1273
1274
|
from flash.cost.facts import teacher_price_per_1m
|
|
1274
1275
|
from flash.engine.recipe import TEACHER_MODELS
|
|
1275
1276
|
|
|
@@ -1277,11 +1278,10 @@ def test_opd_teacher_price_table_covers_every_allowlisted_teacher():
|
|
|
1277
1278
|
for info in TEACHER_MODELS.values():
|
|
1278
1279
|
assert teacher_price_per_1m(info.model_id) == info.usd_per_1m
|
|
1279
1280
|
|
|
1280
|
-
#
|
|
1281
|
-
assert teacher_price_per_1m("accounts/fireworks/models/deepseek-v4-pro")[0] == 1.74
|
|
1281
|
+
# kimi carries its own input price (distinct from glm's $1.40/m).
|
|
1282
1282
|
assert teacher_price_per_1m("accounts/fireworks/models/kimi-k2p6")[0] == 0.95
|
|
1283
|
-
#
|
|
1284
|
-
|
|
1283
|
+
# removed teachers are unknown ids and price defensively at the default glm rate.
|
|
1284
|
+
assert teacher_price_per_1m("accounts/fireworks/models/deepseek-v4-pro")[0] == 1.40
|
|
1285
1285
|
assert teacher_price_per_1m("accounts/fireworks/models/qwen3p7-max")[0] == 1.40
|
|
1286
1286
|
assert teacher_price_per_1m("accounts/fireworks/models/minimax-m3")[0] == 1.40
|
|
1287
1287
|
|
|
@@ -2212,17 +2212,21 @@ def test_resolve_opd_knobs_resolves_teacher_from_train(monkeypatch):
|
|
|
2212
2212
|
)
|
|
2213
2213
|
return opd_mod._resolve_opd_knobs()
|
|
2214
2214
|
|
|
2215
|
-
#
|
|
2215
|
+
# a friendly alias resolves to the provider model id.
|
|
2216
2216
|
assert _knobs("kimi-k2.6").teacher_model == "accounts/fireworks/models/kimi-k2p6"
|
|
2217
|
-
|
|
2218
|
-
# Unset / blank / None -> the default GLM 5.2 teacher (historical behavior preserved).
|
|
2217
|
+
# unset / blank / none -> the default glm 5.2 teacher (historical behavior preserved).
|
|
2219
2218
|
assert _knobs("").teacher_model == "accounts/fireworks/models/glm-5p2"
|
|
2220
2219
|
assert _knobs(None).teacher_model == "accounts/fireworks/models/glm-5p2"
|
|
2221
|
-
# base_url is shared across every allow-listed teacher (one
|
|
2222
|
-
assert _knobs("
|
|
2223
|
-
#
|
|
2224
|
-
|
|
2225
|
-
|
|
2220
|
+
# base_url is shared across every allow-listed teacher (one fireworks endpoint + one managed key).
|
|
2221
|
+
assert _knobs("kimi-k2.6").teacher_base_url == opd_mod.RECIPE.opd.teacher_base_url
|
|
2222
|
+
# unsupported teachers fail loudly on the worker (defensive guard, mirrors the kl_coef check).
|
|
2223
|
+
for teacher in (
|
|
2224
|
+
"gpt-5.5",
|
|
2225
|
+
"deepseek-v4-pro",
|
|
2226
|
+
"accounts/fireworks/models/deepseek-v4-pro",
|
|
2227
|
+
):
|
|
2228
|
+
with pytest.raises(RuntimeError, match="teacher_model"):
|
|
2229
|
+
_knobs(teacher)
|
|
2226
2230
|
|
|
2227
2231
|
|
|
2228
2232
|
def test_groupwise_alignment_emits_no_empty_student_group():
|
|
@@ -2371,8 +2375,8 @@ class _TinyLM:
|
|
|
2371
2375
|
"teacher_model",
|
|
2372
2376
|
[
|
|
2373
2377
|
"",
|
|
2378
|
+
"glm-5.2",
|
|
2374
2379
|
"accounts/fireworks/models/glm-5p2",
|
|
2375
|
-
"accounts/fireworks/models/deepseek-v4-pro",
|
|
2376
2380
|
],
|
|
2377
2381
|
)
|
|
2378
2382
|
def test_opd_worker_rejects_nonvision_teacher_before_gpu_or_teacher_use(monkeypatch, teacher_model):
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/ISSUE_TEMPLATE/bug_report.yml
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/ISSUE_TEMPLATE/feature_request.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/bake-kernel-cache.yml
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/main-source-guard.yml
RENAMED
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/notify-tests-repo.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/.github/workflows/version-parity.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/docker/Dockerfile.kernelcache.relayer
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/multiturn_reward_scoring.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/backend_common.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/grpo_multiturn.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/kernel_warmup.py
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/multiturn_glue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_multiturn.py
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/opd_structured.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/diagnostics.py
RENAMED
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/lifecycle.py
RENAMED
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/perf/loraplus.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/rollout_samples.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/engine/worker/tokenizer_align.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{freesolo_flash_dev-1.0.75 → freesolo_flash_dev-1.0.76}/flash/providers/_instance_bootstrap.py
RENAMED
|
File without changes
|
|
File without changes
|