jcollingj / caret

Caret, an Obsidian Plugin
https://caretplugin.ai/
MIT License
116 stars 11 forks source link

Linear&parallel workflow context window mixed for sperate request #27

Open chenyuz3 opened 1 week ago

chenyuz3 commented 1 week ago

caret - test.png.zip Hi guys,

Sorry for uploading a zip file but the original image was too large to upload here (which you can also view at https://ibb.co/6DsrpSF).

The image demonstrate a few issues:

  1. When using parallel workflows sometimes one branch can see the prompts of other branches (circled in red color in the image), since one branch is responding to other branch's prompts
  2. The same issue happens in a different way for linear workflows: a step/request at front can sometimes doing the jobs of later steps
  3. Though I specifically ask to answer me in English, (with the context provided also in English), sometimes the LLM responds in Chinese anyway (some of the notes in my vault are Chinese, and I know caret can get access via wiki links. But in this case there is no wiki links with created notes)
  4. The language issue persists even after I add a system prompt to ask it response in English: image

no issues related to caret plugin in obsidian console reported during above actions.

Caret has been a huge productivity boost for me for months and I really hope this can help to improve things if these issues were not designed functions.

Sincerely, Jason

jcollingj commented 1 week ago

Hey Jason, looks like a cool use case!

Would you be able to share the workflow markdown file? Might help with some of this debugging.

For points 1 and 2, could you spell out what's happening a bit more? Given this example what happened and did you expect to have happen? For point 3 - Ya I think this will be a prompting technique and not something to Caret. But I would expect the system prompt to handle it. So curious what went wrong here. For point 4 - where did you set the system prompt? From reading the screenshot it looks like no system prompt is set in the workflow.

chenyuz3 commented 1 week ago

Hey Jason, looks like a cool use case!

Would you be able to share the workflow markdown file? Might help with some of this debugging.

For points 1 and 2, could you spell out what's happening a bit more? Given this example what happened and did you expect to have happen? For point 3 - Ya I think this will be a prompting technique and not something to Caret. But I would expect the system prompt to handle it. So curious what went wrong here. For point 4 - where did you set the system prompt? From reading the screenshot it looks like no system prompt is set in the workflow. summarize_the_content - linear.md summarize_the_content - parallel.md

Hi Jake,

Thanks for replying me and I have attached my workflow examples in the first image here.

To put it in a simple way, for the parallel workflows, I simply expect caret response branches will only see THE prompt (plus the shared input) for each request (hence the name "parallel), and they respond accordingly.

For linear workflows, I would expect each request in the workflow only has the context of original input + all previous responses & previous prompts BFORE the current request, and caret can replay accordingly.

Basically all my cases showed before are different kinds of breaches of what I expected above.

Thanks, Jason