SciPhi-Self-RAG-Mistral-7B-32k Model Card
94
15 commits
2 linked in READMEs
updated Nov 1, 2023
SciPhi-Self-RAG-Mistral-7B-32k is a Large Language Model (LLM) fine-tuned from Mistral-7B-v0.1. This model underwent the fine-tuning process described in the SciPhi-Mistral-7B-32k model card. It then underwent further fine-tuning on the recently released self-rag dataset. Other RAG-related instruct datasets were mixed in during this process in an effort to keep the tone of the current model. This model benchmarks well, but it needs further tuning to be an excellent conversationalist.
Benchmark Results:

SciPhi-AI is available via a free hosted API, though the exposed model can vary. Currently, SciPhi-Self-RAG-Mistral-7B-32k is available. More details can be found in the docs here.
We recommend mapping such that
messages = [
{
"role": "system",
"content": "You are a friendly chatbot who always responds in the style of a pirate",
},
{"role": "user", "content": "How many helicopters can a human eat in one sitting?"},
]
goes to --->
### System:
You are a friendly chatbot who always responds in the style of a pirate
### Instruction:
How many helicopters can a human eat in one sitting?
### Response:
...
Here is a sample implementation that does this and combines with RAG context retrieval.
def get_chat_completion(
self, conversation: list[dict], generation_config: GenerationConfig
) -> str:
self._check_stop_token(generation_config.stop_token)
prompt = ""
added_system_prompt = False
for message in conversation:
if message["role"] == "system":
prompt += f"### System:\n{SciPhiLLMInterface.ALPACA_CHAT_SYSTEM_PROMPT}. Further, the assistant is given the following additional instructions - {message['content']}\n\n"
added_system_prompt = True
elif message["role"] == "user":
last_user_message = message["content"]
prompt += f"### Instruction:\n{last_user_message}\n\n"
elif message["role"] == "assistant":
prompt += f"### Response:\n{message['content']}\n\n"
if not added_system_prompt:
prompt = f"### System:\n{SciPhiLLMInterface.ALPACA_CHAT_SYSTEM_PROMPT}.\n\n{prompt}"
context = self.rag_interface.get_contexts([last_user_message])[0]
prompt += f"### Response:\n{SciPhiFormatter.RETRIEVAL_TOKEN} {SciPhiFormatter.INIT_PARAGRAPH_TOKEN}{context}{SciPhiFormatter.END_PARAGRAPH_TOKEN}"
latest_completion = self.model.get_instruct_completion(
prompt, generation_config
).strip()
return SciPhiFormatter.remove_cruft(latest_completion)
Base Model: Mistral-7B-v0.1
Architecture Features:
Thank you to the AI Alignment Lab, vikp, jph00 and others who contributed to this work.
15 commits
SciPhi-Self-RAG-Mistral-7B-32k Model Card
94
15 commits
2 linked in READMEs
updated Nov 1, 2023
SciPhi-Self-RAG-Mistral-7B-32k is a Large Language Model (LLM) fine-tuned from Mistral-7B-v0.1. This model underwent the fine-tuning process described in the SciPhi-Mistral-7B-32k model card. It then underwent further fine-tuning on the recently released self-rag dataset. Other RAG-related instruct datasets were mixed in during this process in an effort to keep the tone of the current model. This model benchmarks well, but it needs further tuning to be an excellent conversationalist.
Benchmark Results:

SciPhi-AI is available via a free hosted API, though the exposed model can vary. Currently, SciPhi-Self-RAG-Mistral-7B-32k is available. More details can be found in the docs here.
We recommend mapping such that
messages = [
{
"role": "system",
"content": "You are a friendly chatbot who always responds in the style of a pirate",
},
{"role": "user", "content": "How many helicopters can a human eat in one sitting?"},
]
goes to --->
### System:
You are a friendly chatbot who always responds in the style of a pirate
### Instruction:
How many helicopters can a human eat in one sitting?
### Response:
...
Here is a sample implementation that does this and combines with RAG context retrieval.
def get_chat_completion(
self, conversation: list[dict], generation_config: GenerationConfig
) -> str:
self._check_stop_token(generation_config.stop_token)
prompt = ""
added_system_prompt = False
for message in conversation:
if message["role"] == "system":
prompt += f"### System:\n{SciPhiLLMInterface.ALPACA_CHAT_SYSTEM_PROMPT}. Further, the assistant is given the following additional instructions - {message['content']}\n\n"
added_system_prompt = True
elif message["role"] == "user":
last_user_message = message["content"]
prompt += f"### Instruction:\n{last_user_message}\n\n"
elif message["role"] == "assistant":
prompt += f"### Response:\n{message['content']}\n\n"
if not added_system_prompt:
prompt = f"### System:\n{SciPhiLLMInterface.ALPACA_CHAT_SYSTEM_PROMPT}.\n\n{prompt}"
context = self.rag_interface.get_contexts([last_user_message])[0]
prompt += f"### Response:\n{SciPhiFormatter.RETRIEVAL_TOKEN} {SciPhiFormatter.INIT_PARAGRAPH_TOKEN}{context}{SciPhiFormatter.END_PARAGRAPH_TOKEN}"
latest_completion = self.model.get_instruct_completion(
prompt, generation_config
).strip()
return SciPhiFormatter.remove_cruft(latest_completion)
Base Model: Mistral-7B-v0.1
Architecture Features:
Thank you to the AI Alignment Lab, vikp, jph00 and others who contributed to this work.
15 commits