MaticGPT / README.md
erfanzar's picture
Create README.md
f8e53b5 verified
metadata
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

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:

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 GitHub repository.