Replies: 6 comments
-
Could it be better to give a more "high level" way of interacting with a software project, like interacting with a Language Server Protocol (https://github.com/palantir/python-language-server). Of course, it would be much more difficult to implement. And it I don't know if GPT 3.5/4 has the ability to generate the needed queries / requests, I'm just throwing and idea that just occurred to me (sorry if it is noise!). |
Beta Was this translation helpful? Give feedback.
-
@domingogallardo This actually sounds great. I'm not really recommending the 'diffs' part, but rather a more compact and streamlined method of modifying files, to account for the token limit, as modifying really large files quickly becomes impossible when modifying large files in large projects. So if using a Language Server Protocol works, then it works, I'm sure there are various other methods that can perform this as well. |
Beta Was this translation helpful? Give feedback.
-
FWIW, I actually have Python code for the diff thing, because you need to hash the source file anyway - but it's not exactly ideal for LLMs I guess. But would definitely be interested in learning more about your idea/s ! |
Beta Was this translation helpful? Give feedback.
-
@Boostrix So thus far I've dropped the idea for the diffs approach, this is problematic because the ai output is unpredictable, and making a diff requires your lines match what's actually in the file. I like the LSP approach, but what worries me is that if we go with this it seems like we'll just end up making a whole new protocol from scratch. This normally wouldn't be an issue, except for the fact that the AI performs much better on material and protocols its been trained on, so we'd have to rely on serious prompt engineering, and even with that the result doesn't seem like it would be ideal. |
Beta Was this translation helpful? Give feedback.
-
one way would be sed/awk based patching on *nix systems (for python there actually is a dedicated sed module). Otherwise, this is touching on semantic patching. |
Beta Was this translation helpful? Give feedback.
-
Very good it crashed a few times because my txt files to analyze where too large. I think the "break down things into smaller junks" seems quite important, also the "selfreflection between steps and checking if it is stuck in a loop" might help since im very often stuck in a loop |
Beta Was this translation helpful? Give feedback.
-
Duplicates
Summary 💡
A command for the AI where it can edit files using diffs rather than reading the whole file, then outputting the whole file again with the modifications.
Motivation 🔦
This helps solve the issue for having it write large projects like building code-bases, because reading and writing out the whole file simply does not work when dealing with token limits.
Beta Was this translation helpful? Give feedback.
All reactions