| | --- |
| | datasets: |
| | - erfanzar/ShareGPT4 |
| | - HuggingFaceH4/no_robots |
| | language: |
| | - en |
| | - fr |
| | - es |
| | - zh |
| | - ru |
| | metrics: |
| | - accuracy |
| | pipeline_tag: text-generation |
| | license: mit |
| | --- |
| | |
| | # 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 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 prompt_model( |
| | message: str, |
| | chat_history: None | list[list[str]] = [], |
| | system_prompt: str | None = None |
| | ) -> str: |
| | do_strip = False |
| | texts = [f"<s>[INST] <<SYS>>\n{system_prompt}\n<</SYS>>\n\n"] if system_prompt 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. |