Add setRaw() methos to MessageRequest class to arbitrarily modify request array#10
Open
incredimike wants to merge 1 commit intoclaude-php:mainfrom
Open
Add setRaw() methos to MessageRequest class to arbitrarily modify request array#10incredimike wants to merge 1 commit intoclaude-php:mainfrom
incredimike wants to merge 1 commit intoclaude-php:mainfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The
MessageRequest::setRaw(array $data)method requires one array parameter which is merged into the request array. The logic for when the "raw" data SHOULD be applied is up for debate, but currently it is after the messages, but before any other options are set by the library (e.g. setMaxTokens()), so those explicit methods will always overwrite the raw settings.I added this method becuase I wanted to use Claude's "thinking" tool which required adding the "thinking" attribute to my request array. See https://www.anthropic.com/engineering/claude-think-tool
I don't think the other services offer this "thinking" tool, so adding a setThinking() method to MessageRequest didn't seem to make sense... Eventually I realized modifying the raw request array/JSON would be more convenient and leave the implementation of the thinking tool functionality to the package author.