Skip to content

fix: use message["thinking"] instead of message["content"] for analysis channel#414

Closed
yurekami wants to merge 1 commit intounslothai:mainfrom
yurekami:fix-246-thinking-content
Closed

fix: use message["thinking"] instead of message["content"] for analysis channel#414
yurekami wants to merge 1 commit intounslothai:mainfrom
yurekami:fix-246-thinking-content

Conversation

@yurekami
Copy link
Contributor

Summary

  • Fixed encode_conversation_with_harmony to correctly extract thinking content

Problem

When processing assistant messages containing a "thinking" field, the code was using message["content"] instead of message["thinking"], causing the reasoning/analysis content to be discarded.

Before

if "thinking" in message:
    x = Message.from_role_and_content(Role.ASSISTANT, message["content"])  # Wrong!

After

if "thinking" in message:
    x = Message.from_role_and_content(Role.ASSISTANT, message["thinking"])  # Correct!

Changes

  • unsloth_zoo/temporary_patches/gpt_oss.py: Line 1348 now uses message["thinking"]

Fixes #246

🤖 Generated with Claude Code

…is channel

In encode_conversation_with_harmony, when a message has a "thinking"
field, the code should extract the thinking content from
message["thinking"], not message["content"]. The bug caused thinking/
analysis content to be discarded entirely.

Fixes unslothai#246

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @yurekami, 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 a bug in the encode_conversation_with_harmony function where the internal reasoning or 'thinking' content of assistant messages was being overlooked. By switching from message["content"] to message["thinking"] when the 'thinking' field is present, the PR ensures that the full analytical context of assistant responses is correctly processed and retained. This improves the fidelity of conversation encoding, especially for AI models that provide explicit thought processes.

Highlights

  • Correct Extraction of Assistant Thinking Content: The encode_conversation_with_harmony function has been updated to correctly extract the assistant's reasoning. Previously, when an assistant message contained a 'thinking' field, the code incorrectly used message["content"] instead of message["thinking"], leading to the loss of valuable analysis content. This change ensures that the 'thinking' field's content is now properly captured and associated with the 'analysis' channel.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The 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 /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

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 .gemini/ folder in the base of the repository. Detailed instructions can be found here.

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.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request addresses a bug in the encode_conversation_with_harmony function. The change correctly modifies the logic to use the message["thinking"] field instead of message["content"] when processing an assistant message that contains analysis or reasoning content. This ensures that the correct content is passed to the Message object for the 'analysis' channel. The fix is straightforward and correct.

@danielhanchen
Copy link
Contributor

Closing as superseded by #400, which includes the same thinking channel fix and also preserves final content when both are present.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

encode_conversation_with_harmony try to refer "content" when "thinking" in message.

2 participants