mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-18 12:46:56 +02:00
v0.2.8 : l'IA garde la trace de ses appels d'outils entre les tours
Les tours d'outils (lecture de skill, commandes shell) ne survivaient qu'a l'interieur de la boucle agentique d'un seul tour : seul le texte final etait persiste. Resultat : a chaque nouveau message le modele n'avait aucune trace d'avoir deja lu un skill, donc il le re-appelait en boucle et confabulait des chemins/resultats disparus du contexte. runChat retourne desormais les messages intermediaires (assistant tool_calls + resultats tool). Le CLI les insere dans l'historique avant la reponse finale ; le serveur web les emet en fin de flux SSE pour que le client (stateless) les stocke. Couvre aussi ajean.link via E2E (handleE2EChat -> runChatStream).
This commit is contained in:
1 parent
a453229642
commit
f632b7b42c
7 files changed
+54
-19
No files matched your search
+1
-1
@@ -24,7 +24,7 @@ func cmdTest(args []string) error {
|
||||
t0 := time.Now()
|
||||
var firstTok time.Time
|
||||
tokens := 0
|
||||
err := runChat(context.Background(), msgs, 0, Caps{}, func(ev StreamEvent) bool {
|
||||
_, err := runChat(context.Background(), msgs, 0, Caps{}, func(ev StreamEvent) bool {
|
||||
if ev.Content != "" {
|
||||
if firstTok.IsZero() {
|
||||
firstTok = time.Now()
|
||||
|
||||
Reference in new issue
Block a user