Text Generation
ELM
English
dev-slx's picture
initial commit
793da2f verified
|
raw
history blame
2.82 kB
# SliceX AI™ ELM (Efficient Language Models)
This repository contains code to run our ELM models.
Models are located in the "models" folder. ELM models in this repository comes in three sizes (elm-1.0, elm-0.75 and elm-0.25) and supports the following use-cases.
- news_classification
- toxicity_detection
- news_content_generation
## Download ELM repo
```bash
git clone git@hf.co:slicexai/elm-0.25-v0.1
sudo apt-get intall git-lfs
git lfs install
```
(Optional) Installing git-lfs without sudo,
```bash
wget https://github.com/git-lfs/git-lfs/releases/download/v3.2.0/git-lfs-linux-amd64-v3.2.0.tar.gz
tar -xzf git-lfs-linux-amd64-v3.2.0.tar.gz
PATH=$PATH:/<absolute-path>/git-lfs-3.2.0/
git lfs install
```
## Download ELM task-specific model checkpoints
```bash
cd elm-0.25-v0.1
git lfs pull -I models/elm-0.25_news_classification/ckpt.pt
git lfs pull -I models/elm-0.25_toxicity_detection/ckpt.pt
git lfs pull -I models/elm-0.25_news_content_generation/ckpt.pt
```
## Installation
```bash
pip install -r requirements.txt
```
## How to use - Run ELM on a sample task (e.g., news classification)
```bash
python run.py <elm-model-directory>
E.g. python run.py models/elm-0.25_news_classification
```
Prompts for the specific tasks can be found in the corresponding checkpoint directory. See an example below in the form of `models/elm-0.25_news_classification/example_prompts.json`.
```json
{
"inputs": ["GM May Close Plant in Europe DETROIT (Reuters) - General Motors Corp. &lt;A HREF=\"http://www.investor.reuters.com/FullQuote.aspx?ticker=GM.N target=/stocks/quickinfo/fullquote\"&gt;GM.N&lt;/A&gt; will likely cut some jobs in Europe and may close a plant there as part of a restructuring plan under development to try to return the region to profitability, the U.S. automaker said on Wednesday."],
"template": "[INST]Below is a news article. Please classify it under one of the following classes (World, Business, Sports, Sci/Tech). Please format your response as a JSON payload.\n\n### Article: {input}\n\n### JSON Response:[/INST]"
}
```
Running the above command returns the following response
```json
{
"prompt": "[INST]Below is a news article. Please classify it under one of the following classes (World, Business, Sports, Sci/Tech). Please format your response as a JSON payload.\n\n### Article: GM May Close Plant in Europe DETROIT (Reuters) - General Motors Corp. &lt;A HREF=\"http://www.investor.reuters.com/FullQuote.aspx?ticker=GM.N target=/stocks/quickinfo/fullquote\"&gt;GM.N&lt;/A&gt; will likely cut some jobs in Europe and may close a plant there as part of a restructuring plan under development to try to return the region to profitability, the U.S. automaker said on Wednesday.\n\n### JSON Response:[/INST]",
"response": "{'text_label': 'Business'}"
}
```