qwen3:8b sometimes writes a tool call as plain text instead of making it
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- ai, backend-api-design
Línea de trabajo
Start by reading sentient/agent/loop.py and searching sentient/llm/ for existing text-to-tool-call parsing. Reproduce the issue with qwen3:8b and inspect the written-out memory_remember call, including any <tool_call> wrapper. Done when it runs through the same safety checks or gets one nudge, and raw call text is never shown to the user.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Seen while testing #531 (#526) on ollama_chat/qwen3:8b. One chat reply contained the memory_remember call written out as text, the tool name and its JSON arguments, rather than an actual tool call. Nothing was saved, and the user saw the raw call in the reply.
To look at
- Whether the agent loop already recovers tool calls written as text for small models (search
sentient/agent/loop.pyandsentient/llm/for any text-to-tool-call parsing), and why it didn't catch this one: its shape, or a<tool_call>wrapper qwen uses. - If not, add a tolerant parser: when a reply is only a tool call written out (a known tool name plus a JSON object), run it as a call. Use the same safety checks as a real call, so the risk rules still apply. Otherwise nudge the model once to make the call properly.
- Never show the raw call text to the user.
Done when: in a real run on qwen3:8b, a written-out memory_remember either runs as a real call or gets one nudge, and the user never sees the raw text.
- Lenguaje dominante
- Python
- Estrellas
- 716
- Forks
- 132
- Merge medio
- 15 h 24 min
- PR fusionados (30 d)
- 211
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de existence-master/Sentient
-
Telegram/Discord: tapping "Local only" in the /model list should ask too, and "/model Local only no" should cancelPosiblemente ocupada @bernalalexis-try la tomó hace 12 días. Abiertoarea: channels enhancement good first issue priority: P2 size: S
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
existence-master/Sentient#457 · 4 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
area: devices good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
existence-master/Sentient#96 ·
Los mantenedores suelen responder en 1 día
-
Deleting a memory with a broken stored field fails in the REST routePosiblemente ocupada @Ankit874396 la tomó hace 1 día. Abiertoarea: memory bug good first issue priority: P2 size: S
existence-master/Sentient#539 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Second look on qwen3:8b lets a code step that also empties a file throughPosiblemente ocupada @sahilphad07-sudo la tomó hace 7 días. Abiertoarea: engine bug priority: P2 size: S
existence-master/Sentient#518 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
qwen3:8b helper gives an empty answer after browser_open instead of taking the screenshotPosiblemente ocupada @n-o-t-mugen la tomó hace 8 días. Abiertoarea: browser area: engine bug priority: P2 size: S
Dificultad 4/5 1-2 días Aptitud para principiantes 53/100
existence-master/Sentient#509 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de existence-master/Sentient
Issues similares
-
good first issue test
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
ANCORATE/EncryptHome#8 ·
-
PluginProvider.storeInstance races and clobbers the dedup cache for concurrent loadsPosiblemente ocupada @Wilson0511 la tomó hoy. Abiertoneeds-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 2 días
-
Bug: failed Together chat calls do not record operation duration or error.typePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
community documentation good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100