chest2vec_0.6b_chest / PUBLISH.md
lukeingawesome's picture
Upload folder using huggingface_hub
364cd6b verified
# Publishing chest2vec_0.6b_chest
This guide covers publishing to both **Hugging Face Hub** (model repository) and **PyPI** (Python package).
## Option 1: Publish to Hugging Face Hub
### Prerequisites
1. Install Hugging Face Hub CLI:
```bash
pip install huggingface_hub
```
2. Login to Hugging Face:
```bash
huggingface-cli login
# Enter your HF token when prompted
```
### Initialize Git Repository (if not already)
```bash
cd /opt/project/chest2vec/export_chest2vec_0.6b_chest
git init
git add .
git commit -m "Initial commit: chest2vec_0.6b_chest"
```
### Create Repository on Hugging Face Hub
1. Go to https://huggingface.co/new
2. Create a new repository named `chest2vec_0.6b_chest` (or `chest2vec/chest2vec_0.6b_chest` if under an organization)
3. Choose "Model" as the repository type
### Push to Hugging Face Hub
```bash
# Add HF remote (replace with your username/org)
git remote add origin https://huggingface.co/YOUR_USERNAME/chest2vec_0.6b_chest
# Push to HF Hub
git push origin main
```
Or use the HF Hub CLI:
```bash
huggingface-cli upload YOUR_USERNAME/chest2vec_0.6b_chest . --repo-type model
```
### Verify Upload
Visit `https://huggingface.co/YOUR_USERNAME/chest2vec_0.6b_chest` to verify all files are uploaded.
---
## Option 2: Publish to PyPI
### Prerequisites
1. Create a PyPI account at https://pypi.org/account/register/
2. Create an API token at https://pypi.org/manage/account/token/
3. Install build tools:
```bash
pip install build twine
```
### Build the Package
```bash
cd /opt/project/chest2vec/export_chest2vec_0.6b_chest
python3 -m build
```
This creates:
- `dist/chest2vec-0.6.0-py3-none-any.whl`
- `dist/chest2vec-0.6.0.tar.gz`
### Upload to PyPI
#### Test first on TestPyPI
```bash
# Upload to TestPyPI first to test
twine upload --repository testpypi dist/*
# You'll be prompted for:
# username: __token__
# password: your API token
```
Test installation:
```bash
pip install --index-url https://test.pypi.org/simple/ chest2vec
```
#### Then upload to PyPI
```bash
twine upload dist/*
# You'll be prompted for:
# username: __token__
# password: your API token
```
### After Publishing
Once published, users can install with:
```bash
pip install chest2vec
```
**Note:** Users will still need to install PyTorch and flash-attention separately as documented in the README, since PyPI doesn't support custom index URLs in dependencies.
---
## Option 3: Publish to Both
You can publish to both platforms:
1. **First publish to Hugging Face Hub** (for model weights and repository)
2. **Then publish to PyPI** (for easy Python package installation)
Users can then either:
- Load from HF Hub: `Chest2Vec.from_pretrained("YOUR_USERNAME/chest2vec_0.6b_chest")`
- Install from PyPI: `pip install chest2vec` (then load from HF Hub or local path)
---
## Important Notes
- **Model weights** (section_pooler.pt, contrastive/) should be on Hugging Face Hub
- **Python package** can be on PyPI for easier installation
- The package name on PyPI is `chest2vec` (shared across all variants)
- Make sure to update version numbers in `setup.py` and `pyproject.toml` if publishing a new version