From 38fbf4526368a8a7729eaf1b48550a5f61c948c5 Mon Sep 17 00:00:00 2001 From: pancake Date: Thu, 9 May 2024 13:21:37 +0200 Subject: [PATCH] Add support for phi3-mini-4k from Microsoft --- r2ai/interpreter.py | 23 +++++++++++++++++++++++ r2ai/models.py | 1 + 2 files changed, 24 insertions(+) diff --git a/r2ai/interpreter.py b/r2ai/interpreter.py index 6c3cdf8b..b39da19d 100644 --- a/r2ai/interpreter.py +++ b/r2ai/interpreter.py @@ -117,6 +117,8 @@ def messages_to_prompt(self, messages): formatted_messages = template_zephyr(self, messages) elif "dolphin" in lowermodel: formatted_messages = template_ferret(self, messages) + elif "Phi" in lowermodel: + formatted_messages = template_phi3(self, messages) elif "coder" in lowermodel: formatted_messages = template_alpaca(self, messages) elif "deepseek" in lowermodel: @@ -256,6 +258,27 @@ def template_falcon(self,messages): formatted_messages += f"{message['role'].capitalize()}: {message['content']}" return formatted_messages.strip() +def template_phi3(self,messages): + self.terminator = "<|end|>" + system_prompt = self.system_message # messages[0]['content'].strip() + if system_prompt != "": + q = f"<|assistant|>\n{system_prompt}<|end|>\n" + else: + q = f"" + for index, item in enumerate(messages): + role = item['role'] + content = item['content'] + if role == 'user': + q += f"<|user|>\n{content}<|end|>" + elif role == "hint": + q += f"knowledge: {content}\n" + elif role == 'function': + q += f"user {content} " + elif role == 'assistant' and self.env["chat.reply"] == "true": + q += f"<|assistant|>\n{content}<|end|>\n" + q += f"<|assistant|>\n" + return q + def template_zephyr(self,messages): #<|system|> #{system_message} diff --git a/r2ai/models.py b/r2ai/models.py index 7346c46b..05bf5fa2 100644 --- a/r2ai/models.py +++ b/r2ai/models.py @@ -108,6 +108,7 @@ def models(): -m bartowski/stable-code-instruct-3b-GGUF -m cognitivecomputations/dolphin-2.9-llama3-8b-gguf -m mlabonne/gemma-7b-it-GGUF +-m microsoft/Phi-3-mini-4k-instruct-gguf Uncensored: -m TheBloke/Dawn-v2-70B-GGUF -m TheBloke/Guanaco-7B-Uncensored-GGUF