Closed jaresty closed 2 months ago
Very cool idea. How well does it work in practice?
I'm not sure the fact of it being a snippet is a destination; seems somewhat orthogonal but I'm not sure I have a much better idea and this stuff is still all quite experimental so probably ok
It seemed to work pretty well when I was testing last night. I'm going to keep trying it out and see how it goes. I'm excited at the possibility it provides for the LLM to clearly point out the parts of the response that should be adjusted, which is a pretty useful way to communicate.
I agree about it being somewhat orthogonal to insertion method-it's more of an adverb that could be applied to above/below/replace. We don't have that in the grammar yet though.
Interesting idea. I feel like this could significantly benefit from multishot prompting. Since I feel like the model could interpret the prompt as it is now in many different ways. But multishot prompting is probably a story for another PR.
If you are finding this to be practical, I think we should create a new talon list called modelInsertionModifier
or something similar. We can then also include selected
in that list if you want to always paste with text selected. I would prefer to pass in modelInsertionModifier
instead of modelDestination
just to make it very clear that snippet
is not a destination, but a way by which the text is inserted differently.
But I'd experiment with things a bit before making too many changes.
And once again my only hesitancy with this is that is does seem very experimental and I am not really sure if the added complexity to the grammar is worth it. I think most people would want to just say the snippet in community they want. Arbitrary text instructions usually doesn't conform to snippets as well compared to well defined blocks (classes, if statements, specific boilerplate etc) As with everything this does have a use, I suppose we just have to see how useful since I haven't played around with this myself.
insertionModifier
sounds good to me
To make things consistent with the other code in this repo, I made a couple quick edits and opened a new PR #85 , let's discuss further there. I actually think that snip should be a prompt with arbitrary text after it like ask
so I made some refactors.
I made another alternative inspired by #85 : https://github.com/C-Loftus/talon-ai-tools/pull/86
Closing in favor of #89