Mistral-8x7b / mistral_8x7b_yepchat.py
DevsDoCode's picture
Upload 3 files
b6fec12 verified
raw
history blame
2.16 kB
import requests
import json
class Mistral_Inference:
def __init__(self, max_tokens=2048, temperature=0.7, message=""):
self.url = "https://api.yep.com/v1/chat/completions"
self.headers = {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br, zstd",
"Accept-Language": "en-US,en;q=0.9",
"Content-Type": "application/json; charset=utf-8",
"Origin": "https://yep.com",
"Referer": "https://yep.com/",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0.0.0 Safari/537.36"
}
self.payload = {
"stream": True,
"max_tokens": max_tokens,
"top_p": temperature,
"temperature": 0.6,
"messages": [{"content": message, "role": "user"}],
"model": "Mixtral-8x7B-Instruct-v0.1"
}
def send_request(self):
return requests.post(self.url, headers=self.headers, data=json.dumps(self.payload), stream=False)
def process_response(self, response):
processed_text = ""
for line in response.iter_lines():
if line:
try:
line_dict = json.loads(line.decode('utf-8')[6:])
if "choices" in line_dict and line_dict["choices"][0].get("delta", {}).get("content"):
processed_text += line_dict["choices"][0]["delta"]["content"]
except:
continue
return processed_text
def chat(self, message):
self.payload["messages"][0]["content"] = message
response = self.send_request()
processed_response = self.process_response(response)
# print(processed_response.strip())
return processed_response.strip()
if __name__ =="__main__":
query = "What is the capital of India"
# Then, create an instance of the YepChat class
mistral_chat_instance = Mistral_Inference(max_tokens=2048, temperature=0.7)
# Next, call the chat method with your desired message
mistral_chat_instance.chat("who developed you")