fix(anthropic): panic for some cases, close #1112#1114
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses potential panics by improving the robustness of system message conversion for the Anthropic API. It refactors the logic to correctly interpret and transform diverse system message content formats, such as single text strings and arrays of content parts, into the appropriate Anthropic Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request effectively addresses a potential panic in the Anthropic request conversion logic. The introduction of the systemMessageToParts helper function and the refactoring of convertToAnthropicSystemPrompt ensure that system messages with MultipleContent are handled correctly, avoiding nil pointer dereferences. The changes correctly distinguish between single-string and array-based system prompts, preserving the original format where necessary. The accompanying test cases are thorough and validate the new logic for various scenarios, including mixed content types and multiple system messages. Overall, this is a solid fix that improves the robustness of the transformer.
Uh oh!
There was an error while loading. Please reload this page.