Skip to content

Commit

Permalink
[README][EXAMPLE]
Browse files Browse the repository at this point in the history
  • Loading branch information
Kye committed Mar 4, 2024
1 parent 07af9db commit 3500a15
Show file tree
Hide file tree
Showing 7 changed files with 511 additions and 223 deletions.
67 changes: 20 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,62 +1,35 @@
[![Multi-Modality](agorabanner.png)](https://discord.gg/qUtxnK2NMf)

# Python Package Template
A easy, reliable, fluid template for python packages complete with docs, testing suites, readme's, github workflows, linting and much much more
# Griffin

## install
`$ pip install griffin-torch`

## Installation

You can install the package using pip

```bash
pip install -e .
```

# Usage
## usage
```python
print("hello world")

```



### Code Quality 🧹

- `make style` to format the code
- `make check_code_quality` to check code quality (PEP8 basically)
- `black .`
- `ruff . --fix`
import torch
from griffin_torch.main import Griffin

### Tests 🧪
# Forward pass
x = torch.randint(0, 100, (1, 10))

[`pytests`](https://docs.pytest.org/en/7.1.x/) is used to run our tests.
# Model
model = Griffin(
dim=512, # Dimension of the model
num_tokens=100, # Number of tokens in the input
seq_len=10, # Length of the input sequence
depth=8, # Number of transformer blocks
mlp_mult=4, # Multiplier for the hidden dimension in the MLPs
dropout=0.1, # Dropout rate
)

### Publish on PyPi 🚀
# Forward pass
y = model(x)

**Important**: Before publishing, edit `__version__` in [src/__init__](/src/__init__.py) to match the wanted new version.
print(y)

```
poetry build
poetry publish
```

### CI/CD 🤖

We use [GitHub actions](https://github.com/features/actions) to automatically run tests and check code quality when a new PR is done on `main`.

On any pull request, we will check the code quality and tests.

When a new release is created, we will try to push the new code to PyPi. We use [`twine`](https://twine.readthedocs.io/en/stable/) to make our life easier.

The **correct steps** to create a new realease are the following:
- edit `__version__` in [src/__init__](/src/__init__.py) to match the wanted new version.
- create a new [`tag`](https://git-scm.com/docs/git-tag) with the release name, e.g. `git tag v0.0.1 && git push origin v0.0.1` or from the GitHub UI.
- create a new release from GitHub UI

The CI will run when you create the new release.

# Docs
We use MK docs. This repo comes with the zeta docs. All the docs configurations are already here along with the readthedocs configs.



Expand Down
20 changes: 20 additions & 0 deletions example.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import torch
from griffin_torch.main import Griffin

# Forward pass
x = torch.randint(0, 100, (1, 10))

# Model
model = Griffin(
dim=512, # Dimension of the model
num_tokens=100, # Number of tokens in the input
seq_len=10, # Length of the input sequence
depth=8, # Number of transformer blocks
mlp_mult=4, # Multiplier for the hidden dimension in the MLPs
dropout=0.1, # Dropout rate
)

# Forward pass
y = model(x)

print(y)
166 changes: 0 additions & 166 deletions griffin/main.py

This file was deleted.

3 changes: 3 additions & 0 deletions griffin_torch/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from griffin_torch.main import Griffin

__all__ = ["Griffin"]
Loading

0 comments on commit 3500a15

Please sign in to comment.