File size: 2,978 Bytes
7cf4f99
 
 
 
 
 
 
 
 
b1d85d1
 
382adf2
b1d85d1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7cf4f99
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
---
license: apache-2.0
language:
- id
library_name: transformers
pipeline_tag: text-generation
tags:
- code
---
# LLM Model for Bahasa Indonesia Dialog

Sidrap-7B-v1 is a Large Language Model (LLM) trained and fine-tuned on a Bahasa Indonesia public dataset. It is designed to enable conversations and dialogues in bahasa Indonesia. The base model used for fine-tuning is [Mistral-7B-v0.1](https://huggingface.co/mistralai/Mistral-7B-v0.1).

## Usage

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

device = "cuda" # the device to load the model onto

model = AutoModelForCausalLM.from_pretrained("robinsyihab/Sidrap-7B-v1")
tokenizer = AutoTokenizer.from_pretrained("robinsyihab/Sidrap-7B-v1")

messages = [
    {"role": "system", "content": "Anda adalah asisten yang suka membantu, penuh hormat, dan jujur. Selalu jawab semaksimal mungkin, sambil tetap aman. Jawaban Anda tidak boleh berisi konten berbahaya, tidak etis, rasis, seksis, beracun, atau ilegal. Harap pastikan bahwa tanggapan Anda tidak memihak secara sosial dan bersifat positif.\n\
Jika sebuah pertanyaan tidak masuk akal, atau tidak koheren secara faktual, jelaskan alasannya daripada menjawab sesuatu yang tidak benar. Jika Anda tidak mengetahui jawaban atas sebuah pertanyaan, mohon jangan membagikan informasi palsu."},
    {"role": "user", "content": "buatkan kode program, sebuah fungsi untuk memvalidasi alamat email menggunakan regex"}
]

encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt")

model_inputs = encodeds.to(device)
model.to(device)

generated_ids = model.generate(model_inputs, max_new_tokens=1000, do_sample=True)
decoded = tokenizer.batch_decode(generated_ids)
print(decoded[0])
```

**NOTES:** To achieve optimal results in Bahasa Indonesia, please use a system message as the initial input as demonstrated above.

## Model Architecture

This model is based on Mistral-7B-v0.1, a transformer model with the following architecture choices:

* Grouped-Query Attention
* Sliding-Window Attention
* Byte-fallback BPE tokenizer


## Limitations and Ethical Considerations

The Sidrap-7B-v1 model has been trained on a public dataset and does not have any moderation mechanism. 

It may still have limitations and biases. It is always recommended to review and evaluate the generated outputs for any potential issues.

We're looking forward to engaging with the community on ways to make the model finely respect guardrails, allowing for deployment in environments requiring moderated outputs.

Furthermore, please ensure that the usage of this language model is aligned with ethical guidelines, respectful of privacy, and avoids harmful content generation.

### Citation

If you use the Sidrap-7B-v1 model in your research or project, please cite it as:

```
@article{Sidrap,
  title={Sidrap-7B-v1: LLM Model for Bahasa Indonesia Dialog},
  author={Robin Syihab},
  publisher={Hugging Face}
  journal={Hugging Face Repository},
  year={2023}
}
```