Releases: GFNOrg/torchgfn
Releases · GFNOrg/torchgfn
v2.4.1
What's Changed
- new harder hypergrid tasks by @josephdviviano in #495
- general cleanup @josephdviviano in #496, #479
#491, #504, #505 - Add getting started notebook with HyperGrid FM example by @josephdviviano in #497
- Add seven-segment display graph GFlowNet tutorial by @josephdviviano and @younik in #498
- Add optional custom log_rewards to all GFlowNet losses by @josephdviviano in #503
- Add Chip Design environment by @younik in #407
- Fix pyproject.toml: move Pyright report* settings out of pytest config by @Copilot in
- Increase test coverage by @josephdviviano in #506
Full Changelog: v2.4.0...v2.4.1
v2.4.0
What's Changed
Here's a summary of the torchgfn changes heading into v2.4.0:
Major Features
- Relative Trajectory Balance (#457, @josephdviviano) — new loss objective added to the library.
- Conditional GFlowNets refactor (#431, @hyeok9855) — reworked how conditioning works end-to-end, including renaming
conditioning→conditions(#430) and placing conditions withinStates(#445). torch.compileutility & benchmark harness (#443, #460, #481, @josephdviviano) — deterministic-mode toggle (#444), debug-mode fast paths for states/actions (#449), and a benchmark suite for tracking performance.- Local replay buffer accumulation (#446, @chirayuharyan).
- Optimized loss computation (#451, @josephdviviano) — restructured the GFlowNet loss path for efficiency.
Minor Features & Fixes
- Detailed Balance refactor (#432) and validation_info cleanup (#434) by @hyeok9855.
- Discrete mask caching (#465), score-dict accumulation (#469), and validate_environment flag (#466) by @younik.
- Box environment simplification (#480), log-prob bugfix (#484), simplified uniform module (#485) by @josephdviviano.
- L1 distance fix (mean→sum, #488), MLP noisy-layers bound tightening (#482), OUTPUT_DIR constant extraction (#459) by @Copilot.
- Dummy/exit actions for graph building (#442, #450), device handling tweaks (#437, #439) by @josephdviviano.
- Assertion moved out of hot path into tests (#438, @ali-m07).
- Logging uniformization (#462, #464, #490), print removal (#462) by @younik.
- Coverage reporting and Codecov CI integration (#452–#458, @josephdviviano + @Copilot).
- Pre-commit as separate CI job, Python version bump (#474, @younik).
- Tutorial/test
n_hidden_layersbump to match refactored MLP semantics (#486). - Heatmap and plotting helpers (#477 @younik, #463 @josephdviviano).
Contributors
- @josephdviviano — broadest footprint: compile/benchmark infra, RTB loss, loss optimization, box env, device handling, coverage, docs.
- @younik — logging, mask caching, CI.
- @hyeok9855 — conditional GFlowNet redesign, DB refactor, container tests, discrete env fixes.
- @chirayuharyan — replay buffer accumulation.
- @ali-m07 — assertion refactor.
- @Copilot — automated fixes (L1 distance, MLP bounds, codecov config, OUTPUT_DIR).
Full Changelog: v2.3.1...v2.4.0
v2.3.1
What's Changed
- Bugfixes for device handling by @josephdviviano in #426
Full Changelog: v2.3.0...v2.3.1
v2.3.0
What's Changed
- Multinode training: timing profiles, seeding, distributed asynchronous training (including selective policy averaging) by @josephdviviano, @chirayuharyan, @younik in #260, #335, #418, #341, #395, #401, #403, #411, #417, #420
- Move to
PolicyMixinto factorizeSamplerandEstimatorlogic by @josephdviviano in #413 and #410 - Diffusion Sampling by @hyeok9855 and @josephdviviano in #419
- Simplification and enhancement of node classes in graph sampling by @younik in #386, #387
- Expanded off policy sampling methods by @josephdviviano in #388
- Efficient TerminatingStateBuffer by @hyeok9855 in #392
- hypergrid refactor by @josephdviviano in #402
- Misc fixes by @hyeok9855, @josephdviviano in #391, #397, #399, #398
Full Changelog: v2.2.2...v2.3.0
v2.2.2
v2.2.1
What's Changed
Full Changelog: v2.2.0...v2.2.1
v2.2.0
High Level
- Added Generative Augmented Flow Networks example (https://arxiv.org/abs/2210.03308), which specifies intermediate rewards with intrinsic motivation to help with the exploration problem in sparse reward environments.
- Extended graph functionality (e.g., add nodes as an action).
- More efficient autoregressive GFN training.
What's Changed
- Add GAFN for hypergrid with sparse reward by @hyeok9855 in #375
- Add graph example with add node action by @younik in #378
- Misc efficiency improvements by @hyeok9855 in #376
- Simplify GraphActionGNN by @younik in #382
- Don't allow removal of nodes with edges by @younik in #381
- minor change to allow for pb to be None when the gflownet's DAG is a tree by @josephdviviano in #371
Full Changelog: v2.1.1...v2.2.0
v2.1.1
What's Changed
- Add custom mRNA codon design environment by @ayalaajil in #350
- Fix broken conditional training script by @saleml in #372
New Contributors
- @ayalaajil made their first contribution in #350
Full Changelog: v2.1.0...v2.1.1
v2.1.0
What's Changed
- Documentation updates by @hyeok9855 in #352
- Rename GFNModule to Estimator. (removing the notion of
GFNModulesfrom the library entirely) by @hyeok9855 in #353 - consistent dtype handling library-wide by @josephdviviano in #358
- typing consistency fixes library-wide
- misc minor fixes
Full Changelog: v2.0.1...v2.1.0
v2.0.1
What's Changed
- Multiple improvements to replay buffers.
- Support for conditional GFNs.
- Support for graph-based states (using
torch_geometric). - Major improvements supporting reproducible experiments in distributed settings.
- Various quality of life improvements, small features, optimizations, and refactorings.
- Complete type safety - library-wide adherence to pyright, while dropping
torchtyping. - Improved documentation.
- Addition of many new environments in
gfn/gym. - Addition of new tutorials and examples demonstrating advanced usage of
torchgfn. - Reproduction of DAG-GFlowNet (Bayesian Structure learning, Deleu et al., 2022).
- Local search sampler (Local Search GFlowNets, Kim et al., 2024).
New Contributors
- @inelgnu made their first contribution in #192
- @younik made their first contribution in #202
- @hyeok9855 made their first contribution in #203
- @alexandrelarouche made their first contribution in #232
- @Idriss-Malek made their first contribution in #236
- @emirceyani made their first contribution in #240
- @alip67 made their first contribution in #210
Full Changelog: v1.2.1...v2.0.1