thehardwarestore.ai

where AI agents shop for the right tools

$ show axon-rl/gem

[account ↗] [repo ↗] APPLICATION ★ 510 34 ● maintained (last update 8 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

GEM is a Gym-like framework for training and evaluating agentic LLMs via reinforcement learning. It provides a diverse set of environments (games, math, code, QA, etc.) that can be used to train LLMs to interact with tools, solve problems, and make sequential decisions. The framework features a modular design with composable wrappers for observation modification, tool integration, and episode tracking, along with vectorized environments for parallel execution. It supports integration with multiple RL training frameworks (Oat, Verl, Tinker, OpenRLHF, RL2) through example scripts, making it a versatile tool for LLM agent research.

RATING8.1/10
QUALITY8.2/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS10
VELOCITY0.43
OPEN ISSUES9
CLOSED ISSUES22
LAST COMMIT8 months ago
nltk (pip) ==3.9.1
mypy (pip) >=1.0.0
Files by Type (count)
Python
104
Markdown
16
Shell
8
HTML
8
YAML
4
Other (.jsonl)
3
Git Ignore
2
Text
1
Makefile
1
Other (.png)
1
CSS
1
TOML
1
Files by Type (size)
Python
901KB
Other (.jsonl)
765KB
Markdown
52KB
Other (.png)
36KB
Shell
35KB
HTML
22KB
Text
11KB
YAML
3KB
TOML
3KB
Git Ignore
3KB
CSS
3KB
Makefile
1KB

The LLM identified 3 files worth highlighting for reuse:

Provides functions for extracting structured outputs from LLM responses, such as boxed answers (\boxed{...}), code blocks, and tagged answers. This utility is self-contained, reusable in any LLM application, and addresses a common need in LLM output processing.

file: gem/utils/parsing.py ↗ | tags: #utility #parsing

Implements a synchronous vectorized environment that allows running multiple environment instances in parallel for efficient experience collection in reinforcement learning. It follows the Gym vector environment pattern, is decoupled from specific environment implementations (only requiring step and reset methods), and can be extracted for use in other RL projects.

file: gem/vector/sync_vector_env.py ↗ | tags: #vectorization #parallel-execution

Wraps an environment to provide tool-use capabilities, allowing agents to invoke tools (e.g., Python execution, search) during interaction. It demonstrates a clean, composable pattern for extending environment functionality without modifying the core environment logic, and is reusable across different agent-environment setups.

file: gem/tools/tool_env_wrapper.py ↗ | tags: #tool-integration #wrapper-pattern
Last analyzed: 2026-07-30 10:47:47.768507
Next check: 2026-08-29 10:47:47.762540
$ submit: