semvec/pypi-packages huggingface dataset:
ml-rwkv 0.0.6
RWKV implementation that is friendly with `ml-starter`
Requires Python: >=3.10

# RWKV

This repository contains my implementation of the pretrained RWKV model, with numerically-stable Triton kernels and code for doing LoRA fine-tuning.

For an explanation of the math, see [this accompanying blog post](https://ben.bolte.cc/rwkv-model).

## Getting Started

Install the package:

```
pip install ml-rwkv
```

Generate code:

```
rwkv 169m "Scientists recently discovered a herd of Chinese-speaking goats. To their surprise,"
```

## WKV Computations

This repo currently contains 3 different implementations of the WKV computation:

1. Vanilla
2. Eps
3. Log

See the blog post linked above for more details about how each of these works.

## Speed

The following table shows measured tokens per second for generating a sequence on various devices using the `run.py` script. Take these numbers with a heap of salt though because the inference pass is so fast that the overhead of the Python script is significant (I only observed around 15% GPU utilization on my 4090). For really fast inference, I would suggest using [this implementation](https://github.com/saharNooby/rwkv.cpp), which uses GGML.

| Device      | Vanilla | Eps   | Log   |
| ----------- | ------- | ----- | ----- |
| M2 (Metal)  | 30.87   | 26.56 | 26.99 |
| M2 (CPU)    | 61.25   | 58.90 | 60.69 |
| 4090 (BF16) | 101.94  | 99.28 | 93.11 |
| 4090 (Log)  | 100.86  | 96.05 | 92.61 |
elife-dummy-python-release-project 0.0.4
A small example package
Requires Python: >=3.6

# dummy python release project

This is a *dummy* project that exists to test changes to the release process for Python projects at eLife.

It *should* illustrate how to incorporate a Python project into the Jenkins release process.

It is *not* a template for Python projects at eLife. Projects come in all shapes and sizes.

## usage


1. create a new branch
2. bump the version number in `setup.py`
3. commit, push, open a PR
4. merge PR

CI will then move the changes into `approved`, then `master`, then detect that a version change has occured and do a
Pypi release.