File size: 2,039 Bytes
45b8aa4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
---
datasets:
- erfanzar/UltraChat-Mixin
language:
- en
- fr
- es
metrics:
- accuracy
pipeline_tag: text-generation
tags:
- code
---

# LinguaMatic

LinguaMatic is an advanced AI model designed to handle a wide range of Natural Language Processing (NLP) tasks. With its powerful capabilities, LinguaMatic can assist with tasks such as text classification, sentiment analysis, language translation, question answering, and much more.
   
## EasyDel

The model is finetuned Using a custom version of UltraChat on TPU-v4 POD using [EasyDel](https://github.com/erfanzar/EasyDeL)

## Prompting Method

LinguaMatic utilizes the OC prompting method to generate responses. This method, named after the friendly and intelligent llama, enhances the model's ability to engage in meaningful conversations. The `prompt_model` function provided below demonstrates how the llama2 prompting method is implemented:

```python
def prompt_model(
        message: str,
        chat_history: Optional[List[str] | List[List[str]]] = None,
        system_prompt: Optional[str] = None
):
    if chat_history is None:
        chat_history = []
    system = f"<|system|>\n{system_prompt}</s>" if system_prompt is not None else ""
    ua = ""
    for user_input, response in chat_history:
        ua += f"<|user|>\n{user_input}</s>\n" + f"<|assistant|>\n{response}</s>\n"
    return system + ua + f"<|user|>\n{message}</s>\n<|assistant|>\n"
```

The `prompt_model` function takes a `message` as input, along with the `chat_history` and `system_prompt`. It generates a formatted text that includes the system prompt, user inputs, and the current message. This approach allows LinguaMatic to maintain context and provide more coherent and context-aware responses.


## Contributing

We welcome contributions to enhance LinguaMatic's capabilities and improve its performance. If you encounter any issues or have suggestions for improvement, please feel free to submit a pull request or open an issue on [EasyDel](https://github.com/erfanzar/EasyDeL) GitHub repository.