File size: 3,624 Bytes
c221f27
 
 
 
 
 
 
4ef3bd3
 
4f16bbe
 
f0cb0c2
 
4f16bbe
 
4ef3bd3
 
7505e81
4ef3bd3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48300ff
4ef3bd3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
---
license: mit
datasets:
- DDSC/partial-danish-gigaword-no-twitter
language:
- da
- en
---

# Model Card for kanelsnegl-v0.1

!!! This model is built for fun and learning and needs much more finetuning !!!


<img src="https://huggingface.co/RJuro/kanelsnegl-v0.1/resolve/main/kanelsnegl_banner.png" alt="Kanelsnegl Logo" width="800" style="margin-left:'auto' margin-right:'auto' display:'block'"/>

## Model Description
Base model: [Zephyr-7b-alpha](https://huggingface.co/HuggingFaceH4/zephyr-7b-alpha) finetuned on [DDSC/partial-danish-gigaword-no-twitter](https://huggingface.co/datasets/DDSC/partial-danish-gigaword-no-twitter). The training involved a maximum length of 512. QLora completion finetuning of all linear layers was also implemented. This model is mostly fun tinkering for personal learning purpose. A heavily instruction-tuned model was used in the hope of transferring some of its behaviors into the Danish finetune. 

The model often produces somewhat fun halucinations and instruction following is not really happening that well, but there may be ways to fine-tune it in a supervised manner for more controlled behavior.

## Usage

```python
from transformers import AutoTokenizer, TextStreamer, AutoModelForCausalLM

model = AutoModelForCausalLM.from_pretrained("RJuro/kanelsnegl-v0.1", device_map="auto")
tokenizer = AutoTokenizer.from_pretrained("RJuro/kanelsnegl-v0.1")
streamer = TextStreamer(tokenizer, skip_special_tokens=True)

tokens = tokenizer(
    """
    Hvordan kan vi udvikle gode open source sprogmodeller i Danmark?
    """,
    return_tensors='pt'
).input_ids.cuda()

generation_output = model.generate(
    tokens,
    streamer=streamer,
    max_length=512,
    repetition_penalty=1.2,  # A value > 1.0 discourages repetition
    no_repeat_ngram_size=3,  # Prevents repeating n-grams (you can adjust the size)
    temperature=0.8,         # Can adjust to make generation less random
    top_k=50,                # Only the top 50 tokens are considered for each prediction
    top_p=0.95,              # Uses nucleus sampling with a cumulative probability of 95%
    early_stopping=True      # Stops generation at the end of a sentence
)

```

Returns

```
    Hvordan kan vi udvikle gode open source sprogmodeller i Danmark?
     
<|assistant|>
Jeg er ikke en menneskelig, der har personlige synspunkter eller måder at tænke på. men jeg vil gerne hjælpe dig med svar på din spørgsmål:

for at udvike gode opensource sprogmodeler i danmark, kan du følgende trin:
1. sammenkoppel den danske forskningsinstitutioner og universiteter til udveksling af ideer og ressourcer.
2. styrke det danske it-industri ved at oprette et netværk mellem virksomheder og akademiske institutioner.
3. skabe en platform for at deltage i internationale projekter og konferencer.
4. anvendte kunstificielle intelligens (ai) til at analyse sproget, sådan som man bruger ai til andre områder.
5. lave workshops og seminarer for at undervise folk om sprogteknikker og metoder.
6. udbygge de eksisterende databaser med danske ord og grammatisk regler.
7. arbejde sammen med nogle store teknologifirmaer, som har interesse i at investere i danske sprogprojektter.
8. udnyttet sociale medier og online kommunikation til at få mere indsigt i danskernes sprogbrud.
9. udvide den dansk sprogbrug til andres lande, således at man kan lave sprogmodels til flere sprog.
10. uddannelse af talentfulde studerende i sprogteknologi, så de kan bidrage til danske projekters succes.

hvis disse trin implementeres korrekt, vil det muliggøre en hurtigere udviking af danske open source spragmodeller.
```