Skip to content

Repository files navigation

Language Emergence Lab

Open in Colab Tests License

Multi-agent emergent language learning: Modular framework for studying communication protocols in fully reproducible referential games

Quickstart

Clone the repo and run the demo:

git clone https://github.com/bangyen/emergent.git
cd emergent
pip install -e .
pytest   # optional: run tests
langlab train --steps 1000 --k 5 --v 6

Or open in Colab: Colab Notebook.

Results

Metric Value
Referential Accuracy ~40-50% (Baseline)
Compositional Generalization Supported

Features

  • Multi-Agent Communication — Speaker-listener neural agents with discrete message generation using Gumbel-Softmax for differentiable training.
  • Flexible Architectures — Support for MLP and sequence-based (RNN) agents with residual connections and layer normalization.
  • Comprehensive Analysis — Tools for evaluation on IID and compositional splits, and research report generation.
  • Reproducible Research — Seeded experiments and automated test validation.

Repo Structure

emergent/
├── emergent_demo.ipynb  # Colab notebook demo
├── src/langlab/         # Core implementation
│   ├── core/            # Agent architectures and channel logic
│   ├── training/        # Training loops and grounding protocols
│   ├── data/            # World generation and datasets
│   ├── analysis/        # Evaluation and report generation
│   ├── apps/            # CLI interface
│   └── utils/           # Shared utilities
├── tests/               # Unit and integration tests
├── docs/                # Documentation and figures
└── outputs/             # Experiment results and checkpoints

Validation

  • ✅ Overall test coverage of ~70% (pytest)
  • ✅ Reproducible seeds for experiments
  • ✅ Core CLI functionality verified

References

License

This project is licensed under the MIT License.

About

Multi-agent emergent language learning framework for studying communication protocols in referential games using Gumbel-Softmax and neural agents.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages

Generated from bangyen/template