cigol123 commited on
Commit
9c86859
·
verified ·
1 Parent(s): a2320d0

Update KOPIJA

Browse files
Files changed (1) hide show
  1. KOPIJA +71 -0
KOPIJA CHANGED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from llama_cpp import Llama
3
+
4
+ llm = Llama(
5
+ model_path="mkllm-7b-instruct-q4_0.gguf",
6
+ n_ctx=4096, # Doubled context length
7
+ n_threads=8, # Increased threads
8
+ n_batch=1024, # Increased batch size
9
+ use_mlock=True,
10
+ use_mmap=True,
11
+ n_gpu_layers=0, # Set this to higher number if GPU available
12
+ verbose=False # Reduced logging for better performance
13
+ )
14
+
15
+ def format_chat_history(history):
16
+ formatted_history = ""
17
+ for user_msg, assistant_msg in history:
18
+ formatted_history += f"USER: {user_msg}\nA: {assistant_msg}\n"
19
+ return formatted_history
20
+
21
+ def chat(message, history):
22
+ system_prompt = """Ти си МКЛЛМ-7Б, професионален асистент со вештачка интелигенција кој дава прецизни и корисни информации.
23
+ ПРАВИЛА:
24
+ - Не измислувам неточни информации
25
+ - Ако ја немам потребната информација тогаш недвосмислено кажувам дека незнам
26
+ - Давам проверени јасни и конкретни информации
27
+ - Се фокусирам на фактите
28
+ - Одговарам љубезно и ефикасно
29
+ - Одржувам професионален тон"""
30
+
31
+ chat_history = format_chat_history(history)
32
+ full_prompt = f"""SYSTEM: {system_prompt}
33
+ CONTEXT:
34
+ {chat_history}
35
+ USER: {message}
36
+ A: """
37
+
38
+ response = llm(
39
+ full_prompt,
40
+ max_tokens=4096, # Increased max tokens
41
+ temperature=0.7, # Keeping it precise
42
+ top_p=0.1,
43
+ repeat_penalty=1.2,
44
+ top_k=20,
45
+ stop=["USER:", "\n\n"],
46
+ stream=True
47
+ )
48
+
49
+ partial_message = ""
50
+ for chunk in response:
51
+ if chunk and chunk['choices'][0]['text']:
52
+ partial_message += chunk['choices'][0]['text']
53
+ yield partial_message
54
+
55
+ demo = gr.ChatInterface(
56
+ fn=chat,
57
+ title="МКЛЛМ-7Б Асистент",
58
+ description="Професионален извор на информации, ВНИМАНИЕ, ЗНАЕ ДА ЛАЖЕ!!!",
59
+ examples=[
60
+ "Кои се основните принципи на базите на податоци?",
61
+ "Објаснете како функционира HTTP протоколот",
62
+ "Кои се главните компоненти на електронски сметач и нивните функции?"
63
+ ]
64
+ )
65
+
66
+ if __name__ == "__main__":
67
+ demo.queue().launch(
68
+ server_name="0.0.0.0",
69
+ server_port=7860,
70
+ share=False
71
+ )