Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
implementing prompt caching for anthropic.
Anthropic provides up to 4 cache breakpoints. I'm basically using them to mark off as much of the prompt as I can, in powers of 2.
So if the prompt is 5000 tokens, we'll put cache markers at messages at the 4096, 2048 and 1024 mark. (1024 being the minimum that anthropic can cache).
(see https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching for details)
I think this is a pretty decent strategy to make sure that we're reusing as much context as we can while allowing for things to change as files update and move up in the message stream (due to the smart context placement I implemented here: #24