--- 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"[INST] <>\n{system}\n<>\n\n"] if system is not None else ["[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()} [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.