Create README.md
Browse files
README.md
ADDED
@@ -0,0 +1,205 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
base_model: boun-tabi-LMG/TURNA
|
3 |
+
language:
|
4 |
+
- tr
|
5 |
+
license: apache-2.0
|
6 |
+
model_creator: boun-tabi-LMG
|
7 |
+
model_name: TURNA
|
8 |
+
model_type: t5
|
9 |
+
prompt_template: '[S2S]prompt<EOS>'
|
10 |
+
quantized_by: Furkan Erdi and Beste Şengül
|
11 |
+
---
|
12 |
+
|
13 |
+
# TURNA - GGUF
|
14 |
+
- Model creator: [boun-tabi-LMG](https://huggingface.co/boun-tabi-LMG)
|
15 |
+
- Original model: [TURNA](https://huggingface.co/boun-tabi-LMG/TURNA)
|
16 |
+
|
17 |
+
<!-- description start -->
|
18 |
+
## Description
|
19 |
+
|
20 |
+
This repo contains GGUF format model files for [boun-tabi-LMG's TURNA](https://huggingface.co/boun-tabi-LMG/TURNA).
|
21 |
+
|
22 |
+
<!-- description end -->
|
23 |
+
<!-- README_GGUF.md-about-gguf start -->
|
24 |
+
### About GGUF
|
25 |
+
|
26 |
+
GGUF is a new format introduced by the llama.cpp team on August 21st 2023. It is a replacement for GGML, which is no longer supported by llama.cpp.
|
27 |
+
|
28 |
+
Here is an incomplete list of clients and libraries that are known to support GGUF:
|
29 |
+
|
30 |
+
* [llama.cpp](https://github.com/ggerganov/llama.cpp). The source project for GGUF. Offers a CLI and a server option.
|
31 |
+
* [text-generation-webui](https://github.com/oobabooga/text-generation-webui), the most widely used web UI, with many features and powerful extensions. Supports GPU acceleration.
|
32 |
+
* [KoboldCpp](https://github.com/LostRuins/koboldcpp), a fully featured web UI, with GPU accel across all platforms and GPU architectures. Especially good for story telling.
|
33 |
+
* [GPT4All](https://gpt4all.io/index.html), a free and open source local running GUI, supporting Windows, Linux and macOS with full GPU accel.
|
34 |
+
* [LM Studio](https://lmstudio.ai/), an easy-to-use and powerful local GUI for Windows and macOS (Silicon), with GPU acceleration. Linux available, in beta as of 27/11/2023.
|
35 |
+
* [LoLLMS Web UI](https://github.com/ParisNeo/lollms-webui), a great web UI with many interesting and unique features, including a full model library for easy model selection.
|
36 |
+
* [Faraday.dev](https://faraday.dev/), an attractive and easy to use character-based chat GUI for Windows and macOS (both Silicon and Intel), with GPU acceleration.
|
37 |
+
* [llama-cpp-python](https://github.com/abetlen/llama-cpp-python), a Python library with GPU accel, LangChain support, and OpenAI-compatible API server.
|
38 |
+
* [candle](https://github.com/huggingface/candle), a Rust ML framework with a focus on performance, including GPU support, and ease of use.
|
39 |
+
* [ctransformers](https://github.com/marella/ctransformers), a Python library with GPU accel, LangChain support, and OpenAI-compatible AI server. Note, as of time of writing (November 27th 2023), ctransformers has not been updated in a long time and does not support many recent models.
|
40 |
+
|
41 |
+
<!-- README_GGUF.md-about-gguf end -->
|
42 |
+
|
43 |
+
<!-- prompt-template start -->
|
44 |
+
## Prompt template: ChatML
|
45 |
+
|
46 |
+
```
|
47 |
+
[S2S]prompt<EOS>
|
48 |
+
```
|
49 |
+
|
50 |
+
<!-- prompt-template end -->
|
51 |
+
|
52 |
+
|
53 |
+
<!-- compatibility_gguf start -->
|
54 |
+
## Compatibility
|
55 |
+
|
56 |
+
These quantised GGUFv2 files are compatible with candle from huggingface.
|
57 |
+
|
58 |
+
Those models are quantized by candle, cargo using Rust and Python.
|
59 |
+
|
60 |
+
<!-- compatibility_gguf end -->
|
61 |
+
|
62 |
+
<!-- README_GGUF.md-provided-files start -->
|
63 |
+
## Provided files
|
64 |
+
|
65 |
+
Sure, here's the updated table with comments and the swapped values for Quant Method and Bit:
|
66 |
+
|
67 |
+
| Name | Bit | Quant Method | Size | Use case |
|
68 |
+
| ---- | ---- | ---- | ---- | ---- |
|
69 |
+
| [TURNA_Q2K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q2K.gguf) | 2 | Q2K | 0.36 GB | Smallest size, lowest precision |
|
70 |
+
| [TURNA_Q3K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q3K.gguf) | 3 | Q3K | 0.48 GB | Very low precision |
|
71 |
+
| [TURNA_Q4_0.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q4_0.gguf) | 4 | Q4_0 | 0.63 GB | Low precision, level 0 |
|
72 |
+
| [TURNA_Q4_1.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q4_1.gguf) | 4 | Q4_1 | 0.70 GB | Slightly better than Q4_0 |
|
73 |
+
| [TURNA_Q4K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q4K.gguf) | 4 | Q4K | 0.63 GB | Kernel optimized, low precision |
|
74 |
+
| [TURNA_Q5_0.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q5_0.gguf) | 5 | Q5_0 | 0.77 GB | Moderate precision, level 0 |
|
75 |
+
| [TURNA_Q5_1.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q5_1.gguf) | 5 | Q5_1 | 0.84 GB | Better than Q5_0 |
|
76 |
+
| [TURNA_Q5K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q5K.gguf) | 5 | Q5K | 0.77 GB | Kernel optimized, moderate precision |
|
77 |
+
| [TURNA_Q6K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q6K.gguf) | 6 | Q6K | 0.91 GB | Higher precision than Q5K |
|
78 |
+
| [TURNA_Q8_0.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q8_0.gguf) | 8 | Q8_0 | 1.21 GB | High precision, level 0 |
|
79 |
+
| [TURNA_Q8_1.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q8_1.gguf) | 8 | Q8_1 | 1.29 GB | Better than Q8_0 |
|
80 |
+
| [TURNA_Q8K.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_Q8K.gguf) | 8 | Q8K | 1.30 GB | Kernel optimized, highest precision among quantized |
|
81 |
+
| [TURNA_F16.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_F16.gguf) | 16 | F16 | 2.28 GB | High precision, smaller size |
|
82 |
+
| [TURNA_F32.gguf](https://huggingface.co/helizac/TURNA_GGUF/blob/main/TURNA_F32.gguf) | 32 | F32 | 4.57 GB | Highest precision, largest size |
|
83 |
+
|
84 |
+
<!-- README_GGUF.md-provided-files end -->
|
85 |
+
|
86 |
+
<!-- README_GGUF.md-how-to-download start -->
|
87 |
+
|
88 |
+
## How to download GGUF files
|
89 |
+
|
90 |
+
**Note for manual downloaders:** You almost never want to clone the entire repo! Multiple different quantisation formats are provided, and most users only want to pick and download a single file.
|
91 |
+
|
92 |
+
The following clients/libraries will automatically download models for you, providing a list of available models to choose from:
|
93 |
+
|
94 |
+
### On the command line, including multiple files at once
|
95 |
+
|
96 |
+
I recommend using the `huggingface-hub` Python library:
|
97 |
+
|
98 |
+
```shell
|
99 |
+
pip3 install huggingface-hub
|
100 |
+
```
|
101 |
+
|
102 |
+
Then you can download any individual model file to the current directory, at high speed, with a command like this:
|
103 |
+
|
104 |
+
```shell
|
105 |
+
huggingface-cli download helizac/TURNA_GGUF TURNA_Q4_K.gguf --local-dir . --local-dir-use-symlinks False
|
106 |
+
```
|
107 |
+
|
108 |
+
<details>
|
109 |
+
<summary>More advanced huggingface-cli download usage (click to read)</summary>
|
110 |
+
|
111 |
+
You can also download multiple files at once with a pattern:
|
112 |
+
|
113 |
+
```shell
|
114 |
+
huggingface-cli download helizac/TURNA_GGUF --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'
|
115 |
+
```
|
116 |
+
|
117 |
+
For more documentation on downloading with `huggingface-cli`, please see: [HF -> Hub Python Library -> Download files -> Download from the CLI](https://huggingface.co/docs/huggingface_hub/guides/download#download-from-the-cli).
|
118 |
+
|
119 |
+
<!-- README_GGUF.md-how-to-download end -->
|
120 |
+
|
121 |
+
<!-- README_GGUF.md-how-to-run start -->
|
122 |
+
## Example `colab` usage
|
123 |
+
|
124 |
+
```shell
|
125 |
+
%%shell
|
126 |
+
# Update and install dependencies
|
127 |
+
apt update && apt install -y curl build-essential
|
128 |
+
pip install huggingface_hub
|
129 |
+
|
130 |
+
# Install Rust using rustup
|
131 |
+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
132 |
+
|
133 |
+
# Add Rust to the PATH
|
134 |
+
source $HOME/.cargo/env
|
135 |
+
|
136 |
+
# Cloning Candle from Huggingface
|
137 |
+
git clone https://github.com/huggingface/candle.git
|
138 |
+
|
139 |
+
# Use read CLI or a CLI that has read permissions
|
140 |
+
huggingface-cli login
|
141 |
+
```
|
142 |
+
|
143 |
+
```shell
|
144 |
+
%cd candle
|
145 |
+
```
|
146 |
+
|
147 |
+
```python
|
148 |
+
def run_turna_gguf(prompt="Bir varmış bir yokmuş, ", temperature=1, quantization_method="Q8_1", config_file="config.json", model_id = "helizac/TURNA_GGUF"):
|
149 |
+
os.system(f'cargo run --example quantized-t5 --release -- --model-id "{model_id}" --prompt "[S2S]{prompt}<EOS>" --temperature {temperature} --weight-file "TURNA_{quantization_method}.gguf" --config-file "{config_file}"')
|
150 |
+
```
|
151 |
+
|
152 |
+
```python
|
153 |
+
run_turna_gguf("Bir varmış bir yokmuş") # test
|
154 |
+
```
|
155 |
+
|
156 |
+
Sure, here's an explanation for the function `run_turna_gguf`:
|
157 |
+
|
158 |
+
### Function Explanation: `run_turna_gguf`
|
159 |
+
|
160 |
+
```python
|
161 |
+
def run_turna_gguf(prompt="Bir varmış bir yokmuş, ", temperature=1, quantization_method="Q8_1", config_file="config.json", model_id = "helizac/TURNA_GGUF"):
|
162 |
+
os.system(f'cargo run --example quantized-t5 --release -- --model-id "{model_id}" --prompt "[S2S]{prompt}<EOS>" --temperature {temperature} --weight-file "TURNA_{quantization_method}.gguf" --config-file "{config_file}"')
|
163 |
+
```
|
164 |
+
|
165 |
+
#### Parameters:
|
166 |
+
- **prompt** (`str`, default: "Bir varmış bir yokmuş, "):
|
167 |
+
- The initial text provided as input to the model.
|
168 |
+
- **temperature** (`float`, default: 1):
|
169 |
+
- Controls the randomness of the output. Higher values make the output more random, while lower values make it more deterministic.
|
170 |
+
- **quantization_method** (`str`, default: "Q8_1"):
|
171 |
+
- Specifies the quantization method to use. This selects the corresponding `.gguf` weight file.
|
172 |
+
- **config_file** (`str`, default: "config.json"):
|
173 |
+
- The path to the configuration file containing model-specific settings.
|
174 |
+
- **model_id** (`str`, default: "helizac/TURNA_GGUF"):
|
175 |
+
- The identifier for the model in the Hugging Face repository.
|
176 |
+
|
177 |
+
## Thanks, and how to contribute
|
178 |
+
|
179 |
+
Thanks to the [boun-tabi-LMG](https://github.com/boun-tabi-LMG) team!
|
180 |
+
|
181 |
+
**Special thanks to**: Beste Şengül.
|
182 |
+
|
183 |
+
<!-- footer end -->
|
184 |
+
|
185 |
+
# GGUF model card:
|
186 |
+
|
187 |
+
```
|
188 |
+
{Beste Şengül, Furkan Erdi}
|
189 |
+
```
|
190 |
+
|
191 |
+
<!-- original-model-card start -->
|
192 |
+
# Original model card: BOUN TABI Language Modeling Group's TURNA
|
193 |
+
|
194 |
+
TURNA 🦩
|
195 |
+
|
196 |
+
```
|
197 |
+
@misc{uludoğan2024turna,
|
198 |
+
title={TURNA: A Turkish Encoder-Decoder Language Model for Enhanced Understanding and Generation},
|
199 |
+
author={Gökçe Uludoğan and Zeynep Yirmibeşoğlu Balal and Furkan Akkurt and Melikşah Türker and Onur Güngör and Susan Üsküdarlı},
|
200 |
+
year={2024},
|
201 |
+
eprint={2401.14373},
|
202 |
+
archivePrefix={arXiv},
|
203 |
+
primaryClass={cs.CL}
|
204 |
+
}
|
205 |
+
```
|