CollabLLM: From Passive Responders to Active Collaborators
📢 Oral @ ICML 2025 (1% out of all submissions)
Overview
CollabLLM transforms traditional language models from passive responders to active collaborators in multi-turn conversations. This repository provides the complete framework for computing multiturn-aware rewards and training collaborative language models.
Installation
To get started, create a new environment and install collabllm via pip:
conda create -n collabllm python=3.10
conda activate collabllm
pip install collabllm
Optional: For distributed training
If you need distributed training:
conda install deepspeed mpi4py -c conda-forge
Optional: For customized datasets and metrics
You may install additional packages (e.g., pip install bigcodebench matplotlib) for task-specific metrics or evaluation.
Quick Start
- Lightweight usage: Compute Multiturn-aware Rewards (MRs) for any model responses and construct datasets following
notebook_tutorials/. - Synthetic data generation: Generating high-quality synthetic conversational data following
scripts/engine/build_dataset.py. - Train CollabLLM: Conduct SFT/DPO/PPO models training to maximize MRs following examples under
scripts/train/*.py.
Add Your Own Task
To apply CollabLLM to a new task:
-
Add a Dataset:
Place your single-turn dataset inexamples/single_turn_ds/and register it in__init__.py. -
(Optional) Add Metrics:
Add new metrics toexamples/metrics/and register them in__init__.py.
You can now run data generation, reward computation, and model training using your customized setup.
Citation
If you find our work useful in your research, please cite the following:
@inproceedings{collabllm2025,
title={CollabLLM: From Passive Responders to Active Collaborators},
author={Shirley Wu and Michel Galley and Baolin Peng and Hao Cheng and
Gavin Li and Yao Dou and Weixin Cai and James Zou and
Jure Leskovec and Jianfeng Gao},
booktitle={International Conference on Machine Learning (ICML)},
year={2025}
}
Metadata
Release files for collabllm 0.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| collabllm-0.0.8.tar.gz | 29.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| collabllm-0.0.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 63.1 kB
Release files / collabllm-0.0.8.tar.gz
| Download URL | collabllm-0.0.8.tar.gz |
|---|---|
| Size | 29.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2caa900007d7dc83007ad9d3ce72418aeb81641af8ce95557c9c228b7b84e84f
|
|
BLAKE2b-256 checksum How to use checksums |
678af10395ef3f06599bedb3881a4ee8dc7afb71440b36ea180ba30b30ca30d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|
Release files / collabllm-0.0.8-py3-none-any.whl
| Download URL | collabllm-0.0.8-py3-none-any.whl |
|---|---|
| Size | 34.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7785eddb341e2fbaaef202e4549aefc257f34daab0eef5aed236f68526febe01
|
|
BLAKE2b-256 checksum How to use checksums |
a89dabd82e5646693392908ffc48480dcc3d3a3eed1877cd4fc881f76ebf7daf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|
Security for collabllm 0.0.8
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.