File size: 4,457 Bytes
baeb369
 
 
b78da68
 
 
 
 
8628f76
b78da68
9818cf7
 
 
b78da68
 
 
 
 
acb17c8
 
 
 
 
b78da68
 
 
 
 
acb17c8
 
03d8328
acb17c8
 
9818cf7
 
44dbaf1
acb17c8
b78da68
 
 
 
acb17c8
44dbaf1
acb17c8
 
 
 
9818cf7
 
acb17c8
b78da68
 
 
 
 
2ae3040
b78da68
 
 
 
44dbaf1
b78da68
44dbaf1
c108970
 
b78da68
 
06337bb
b78da68
22ff948
b78da68
44dbaf1
b78da68
44dbaf1
 
b78da68
44dbaf1
b78da68
44dbaf1
b78da68
 
 
 
44dbaf1
b78da68
44dbaf1
 
 
 
 
 
 
 
b78da68
 
44dbaf1
b78da68
44dbaf1
b78da68
44dbaf1
b78da68
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
---
license: apache-2.0
---

# Model Card for Model ID

<!-- Provide a quick summary of what the model is/does. -->

BLING-1b-0.1 is the first model release in the BLING ("Best Little Instruction-following No-GPU-required") model series.

BLING models are fine-tuned with distilled high-quality custom instruct datasets, targeted at a specific subset of instruct tasks with 
the objective of providing a high-quality Instruct model that is 'inference-ready' on a CPU laptop even 
without using any advanced quantization optimizations.

### Model Description

<!-- Provide a longer summary of what this model is. -->

- **Developed by:** llmware
- **Model type:** GPTNeoX instruct-trained decoder
- **Language(s) (NLP):** English
- **License:** Apache 2.0
- **Finetuned from model [optional]:** EleutherAI/Pythia-1b-deduped

## Uses

<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->

The intended use of BLING models is two-fold:

1.  Provide high-quality Instruct models that can run on a laptop for local testing.  We have found it extremely useful when building a
   proof-of-concept, or working with sensitive enterprise data that must be closely guarded, especially in RAG use cases.

2.  Push the state of the art for smaller Instruct-following models in the sub-7B parameter range, especially 1B-3B, as single-purpose
    automation tools for specific tasks through targeted fine-tuning datasets and focused "instruction" tasks.


### Direct Use

<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->

BLING is designed for enterprise automation use cases, especially in knowledge-intensive industries, such as financial services,
legal and regulatory industries with complex information sources.  Rather than try to be "all things to all people," BLING models try to focus on a narrower set of Instructions more suitable to a ~1B parameter GPT model.

BLING is ideal for rapid prototyping, testing, and the ability to perform an end-to-end workflow locally on a laptop without
having to send sensitive information over an Internet-based API.

The first BLING models have been trained for common RAG scenarios, specifically:   question-answering, key-value extraction, and basic summarization as the core instruction types
without the need for a lot of complex instruction verbiage - provide a text passage context, ask questions, and get clear fact-based responses.


## Bias, Risks, and Limitations

<!-- This section is meant to convey both technical and sociotechnical limitations. -->

Any model can provide inaccurate or incomplete information, and should be used in conjunction with appropriate safeguards and fact-checking mechanisms.


## How to Get Started with the Model

The fastest way to get started with BLING is through direct import in transformers:

from transformers import AutoTokenizer, AutoModelForCausalLM  
tokenizer = AutoTokenizer.from_pretrained("llmware/bling-1b-0.1")  
model = AutoModelForCausalLM.from_pretrained("llmware/bling-1b-0.1")  


The BLING model was fine-tuned with a simple "\<human> and \<bot> wrapper", so to get the best results, wrap inference entries as:

full_prompt = "\<human>\: " + my_prompt + "\n" + "\<bot>\:"

The BLING model was fine-tuned with closed-context samples, which assume generally that the prompt consists of two sub-parts:

1.  Text Passage Context, and
2.  Specific question or instruction based on the text passage

To get the best results, package "my_prompt" as follows:

my_prompt = {{text_passage}} + "\n" + {{question/instruction}}


## Citation [optional]

BLING models are built on top of EleutherAI/Pythia base - please see citation for Pythia below:

@misc{biderman2023pythia,
      title={Pythia: A Suite for Analyzing Large Language Models Across Training and Scaling}, 
      author={Stella Biderman and Hailey Schoelkopf and Quentin Anthony and Herbie Bradley and Kyle O'Brien and Eric Hallahan and Mohammad Aflah Khan and Shivanshu Purohit and USVSN Sai Prashanth and Edward Raff and Aviya Skowron and Lintang Sutawika and Oskar van der Wal},
      year={2023},
      eprint={2304.01373},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}


## Model Card Contact

Darren Oberst & llmware team

Please reach out anytime if you are interested in this project and would like to participate and work with us!