Phase 6: Future capabilities - LLM config generation, HyperNetworkCombiner, Nash-MTL#4092
Open
w4nderlust wants to merge 4 commits intoapi-code-qualityfrom
Open
Phase 6: Future capabilities - LLM config generation, HyperNetworkCombiner, Nash-MTL#4092w4nderlust wants to merge 4 commits intoapi-code-qualityfrom
w4nderlust wants to merge 4 commits intoapi-code-qualityfrom
Conversation
e36b607 to
e36180e
Compare
7948ba1 to
984cbc2
Compare
e36180e to
f82345c
Compare
f373d64 to
db37548
Compare
f82345c to
106a30b
Compare
7f738a7 to
55368b9
Compare
106a30b to
7e4467a
Compare
LLM config generation: describe your ML task in English, get a valid Ludwig config. Uses JSON Schema as LLM context, validates output with Pydantic. Supports Anthropic and OpenAI APIs. HyperNetworkCombiner: one modality generates weights for processing another. Based on HyperFusion (arXiv 2403.13319, 2024). Unique differentiator for Ludwig. Nash-MTL loss balancer: cooperative game-theoretic task weight allocation (Navon et al., ICML 2022) for power users with many conflicting outputs.
for more information, see https://pre-commit.ci
BatchEnsembleLinear: shared backbone with per-member rank-1 scaling. Provides ensemble-level performance at single-model inference cost. Based on TabM (Gorishniy et al., ICLR 2025).
…tests - ConcatCombiner now supports batch_ensemble=True config option with num_ensemble_members parameter for TabM-style ensembling - ludwig generate_config: CLI command to generate Ludwig configs from natural language task descriptions via LLM (Anthropic/OpenAI) - Tests for config_generation with mocked LLM calls
55368b9 to
ec11aff
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Phase 6 of the Ludwig modernization: advanced capabilities that extend Ludwig's competitive positioning.
1. LLM-Driven Config Generation
Describe your ML task in natural language and get a valid Ludwig config:
Uses Ludwig's JSON Schema as context for the LLM. Supports both Anthropic and OpenAI APIs. Generated configs are validated against Ludwig's Pydantic schema before returning.
2. HyperNetworkCombiner
A hypernetwork generates the weights of processing layers based on a conditioning modality. Instead of combining features additively, metadata fundamentally changes how other features are processed.
Based on HyperFusion (arXiv 2403.13319, 2024). Unique Ludwig differentiator not available in other frameworks.
3. Nash-MTL Loss Balancer
Nash bargaining for multi-task weight allocation (Navon et al., ICML 2022). Finds the cooperative game-theoretic solution where weights are inversely proportional to task losses, equalizing marginal contributions.
For power users with many conflicting output features. More principled than heuristic methods. For most use cases, FAMO or uncertainty weighting are sufficient.
Test plan