|
--- |
|
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. |
|
## Last Update |
|
|
|
* Nov 19 - Now AI works better with system prompting and you can achive better result with giving model better system prompts |
|
* Nov 20 - Fixing Questioning responses |
|
|
|
## 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 llama2 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 llama_prompt( |
|
message: str, |
|
chat_history: list = None, |
|
system: str = None |
|
) -> str: |
|
do_strip = False |
|
texts = [f"<s>[INST] <<SYS>>\n{system}\n<</SYS>>\n\n"] if system is not None else ["<s>[INST] "] |
|
for user_input, response in chat_history: |
|
user_input = user_input.strip() if do_strip else user_input |
|
do_strip = True |
|
texts.append(f"{user_input} [/INST] {response.strip()} </s><s>[INST] ") |
|
message = message.strip() if do_strip else message |
|
texts.append(f"{message} [/INST]") |
|
return "".join(texts) |
|
``` |
|
|
|
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. |
|
|