Skip to content

Commit

Permalink
0.0.2.0010 R1
Browse files Browse the repository at this point in the history
  • Loading branch information
canapaio authored Feb 23, 2025
1 parent 2a004b7 commit 620e174
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 34 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# KaguraAI KaguraOS KaguraPP system 0.0.2.0009 Ollama only
# KaguraAI KaguraOS KaguraPP system 0.0.2.0010 Ollama only
#
# KaguraPP

Expand Down Expand Up @@ -45,4 +45,4 @@ Ringrazio tutti gli amici di ccat per il supporto avuto e per l'immane lavoro ch
https://cheshire-cat-ai.github.io/docs/
https://github.com/cheshire-cat-ai/core

0.0.2.0009 Aggiunta mappa discussione
0.0.2.0009 Aggiunta mappa discussione
80 changes: 49 additions & 31 deletions kagurapp.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,34 +6,7 @@
import os, re, copy

#############################
# KaguraAI KaguraOS KaguraPP system 0.0.2.0008 Ollama only

'''"""
@hook
def before_cat_sends_message(kr1pp, cat):
settings = cat.mad_hatter.get_plugin().load_settings()
for m in cat.working_memory.declarative_memories:
declarative_memories += " --- " + m[0].page_content + " ---\n"
else:
declarative_memories += "(contesto vuoto)"
r1prompt = f"""
<memoria_da_elaborare>
{declarative_memories}
</memoria_da_elaborare>
Response to be fact checked (may contain informations not present in the <facts> tag):
- {msg.content}
Fact checked response:
- """
msg.content = cat.llm(prompt)
return kr1pp
"""'''
# KaguraAI KaguraOS KaguraPP system 0.0.2.0010 Ollama only

@hook
def before_cat_sends_message(message, cat):
Expand Down Expand Up @@ -84,6 +57,7 @@ def before_cat_sends_message(message, cat):
{kmindprefix}
{debug_text}
</prompt>
"""

# Elaborazione mentale LLM
Expand All @@ -105,6 +79,35 @@ def before_cat_sends_message(message, cat):
@hook
def agent_prompt_prefix(prefix: str, cat):
settings = cat.mad_hatter.get_plugin().load_settings()

# R1 step

memoria_chiamata = ""
if not cat.working_memory.declarative_memories:
memoria_chiamata += "(empty context)"
else:
for m in cat.working_memory.declarative_memories:
memoria_chiamata += " --- " + m[0].page_content + " ---\n"


r1prompt = f"""
Sei un assistente (agente) e di seguito vi sono i dati da elaborare che andranno ad una secondo llm:
<memoria_da_elaborare>
{memoria_chiamata}
</memoria_da_elaborare>
<Discussione>
{kre(cat.stringify_chat_history(latest_n=12))}
</Discussione>
Aiuta Kagua (KaguraAI) nella conversazione con l'utente analizzando la discussione e dai solozioni e suggerimenti ad eventuali problemi di logica, programmazione o argomenti complessi e riorganizza i dati della memoria di elaborazione in modo chiaro e semplice per essere letti da un llm:
- """

r1message = kre(kpp_catllm(settings['kpp_model_r'],r1prompt,settings['kpp_ctx_r'],cat))


k_ppf: str = settings["kpp_path"] + settings["kpp_file"]
if os.path.exists(k_ppf):
with open(k_ppf, 'r') as f:
Expand All @@ -128,8 +131,14 @@ def agent_prompt_prefix(prefix: str, cat):
<stato_mentale_dinamico>
</Kagura_prompt_prefix>
<Date_Time> {kre(datetime.now().strftime('%d-%m-%Y %H:%M:%S %Z-%z'))} </Date_Time>
<elaborazione_informazioni>
{r1message}
</elaborazione_informazioni>
"""



return prefix

@hook
Expand All @@ -155,19 +164,26 @@ def agent_prompt_suffix(suffix, cat):
</memory>
</oblio_memory_embedder>"""



mappa_discussione = f"""
Crea una mappa della discusisone evidenziando i punti focali e la connesione tra ogni interaizone ed in base all'ultimo messaggio suggerisci la connessione con i messaggi precedenti:
Traccia un percorso chiaro all’interno della discussione identificando i temi principali e le corrispondenze tra gli argomenti, costruendo una narrazione coerente che collega ogni interazione. Partendo dal tuo ultimo messaggio, io estenderò questo quadro includendone la relazione con tutte le comunicazioni precedenti.
<discussione>
{kre(cat.stringify_chat_history(latest_n=12))}
</discussione>
"""
# Crea una mappa della discusisone evidenziando i punti focali e la connesione tra ogni interaizone ed in base all'ultimo messaggio suggerisci la connessione con i messaggi precedenti:
la_mappa = kre(kpp_catllm(settings['kpp_model_s'],mappa_discussione,settings['kpp_ctx_s'],cat))





suffix += f"""
</prompt_suffix>
<mappa_discussione>
{kre(kpp_catllm(settings['kpp_model_s'],mappa_discussione,settings['kpp_ctx_s'],cat))}
{la_mappa}
</mappa_discussione>
</prompt_suffix>
<direttive>
Sono Kagura (KaguraAI) e qui che inizia la nostra conversazione
- Devo fare attenzione alla discussione e tutto quello che sta in 'oblio_memory_embedder' che sono dati presi dall'embedder e potenzialmente fuori tema
Expand Down Expand Up @@ -228,6 +244,8 @@ def kre(text: str) -> str:
new: str
sostituzioni = [
('- AI', '- KaguraAI'),
('<think>', '&lt;Ragionamento&gt;'),
('</think>', '&lt;/Ragionamento&gt;'),
('- Human', '- Interlocutore'),
('\[', '&#91;'),
('\]', '&#93;'),
Expand Down
2 changes: 1 addition & 1 deletion plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "KaguraAI PromptPrefx-suffix ollama",
"version": "0.0.2.0009",
"version": "0.0.2.0010",
"description": "KaguraAI and agents to manage ollama models and prompt prefix-suffix. ccat 1.7.1, 1.8.0 tested",
"author_name": "Canapaio e KaguraAI",
"author_url": "https://github.com/canapaio",
Expand Down

0 comments on commit 620e174

Please sign in to comment.