Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hallucination/ code mangeling #60

Closed
Kvadratni opened this issue Sep 11, 2024 · 3 comments
Closed

Hallucination/ code mangeling #60

Kvadratni opened this issue Sep 11, 2024 · 3 comments
Labels
help wanted Great issue for non-Block contributors

Comments

@Kvadratni
Copy link
Collaborator

Sometimes goose experiences a hallucination as most LLM's however due to it's agent nature it can destroy code it was working on.

image

Several fixes for this may be:

  1. Run the returned code agains a compiler before making the change
  2. Run a validator agent loop
@michaelneale
Copy link
Collaborator

michaelneale commented Sep 12, 2024

@baxen this was a bit like I remember you discussing, the benefit of a fast local look post goose editing a file - if it is syntactically nonsense in some fast detectable way, can give that maybe as fast feedback to goose to try again.

One thing to try is tree sitter:

https://github.com/grantjenks/py-tree-sitter-languages

and just see how it parses quickly per edit

@lily-de lily-de added the help wanted Great issue for non-Block contributors label Oct 8, 2024
@TimerErTim
Copy link

For brainstorming purposes, I think another viable solution would be integration with git. A goose session starts by branching off from the current branch and then commits changes for every individual step it does.

This way you can easily revise to previously working state and also keep track of the individual changes made. This way you could f.e. manually combine the end result with some interesting step that was lost in the end product.

@michaelneale
Copy link
Collaborator

@TimerErTim yeah - I have informally done that with goose in the past (.goosehints for example) - so yeah can totally work. Could be done with an MCP extension (ie specific clear function calls to start/end an edit batch - which it must always call). And it could also then deliberately not work if there are unstaged changes (so you don't lose any work?)

@lily-de lily-de closed this as not planned Won't fix, can't repro, duplicate, stale Feb 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Great issue for non-Block contributors
Projects
None yet
Development

No branches or pull requests

4 participants