Feat: Move the reasoning field to the root of the payload in the completion interface. (#12990)

### What problem does this PR solve?


### Type of change


- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu
2026-02-04 19:21:49 +08:00
committed by GitHub
parent 4d4b5a978d
commit 2627a7f5a8
13 changed files with 78 additions and 738 deletions

View File

@ -66,14 +66,19 @@ export const useSendSharedMessage = () => {
const [hasError, setHasError] = useState(false);
const sendMessage = useCallback(
async (message: Message, id?: string) => {
async (
message: Message,
id?: string,
enableThinking?: boolean,
enableInternet?: boolean,
) => {
const res = await send({
conversation_id: id ?? conversationId,
quote: true,
question: message.content,
session_id: get(derivedMessages, '0.session_id'),
reasoning: message.reasoning,
internet: message.internet,
reasoning: enableThinking,
internet: enableInternet,
});
if (isCompletionError(res)) {
@ -86,14 +91,18 @@ export const useSendSharedMessage = () => {
);
const handleSendMessage = useCallback(
async (message: Message) => {
async (
message: Message,
enableThinking?: boolean,
enableInternet?: boolean,
) => {
if (conversationId !== '') {
sendMessage(message);
sendMessage(message, undefined, enableThinking, enableInternet);
} else {
const data = await setConversation('user id');
if (data.code === 0) {
const id = data.data.id;
sendMessage(message, id);
sendMessage(message, id, enableThinking, enableInternet);
}
}
},
@ -120,11 +129,10 @@ export const useSendSharedMessage = () => {
}, [answer, addNewestAnswer]);
const handlePressEnter = useCallback(
(
...[
{ enableThinking, enableInternet },
]: NextMessageInputOnPressEnterParameter
) => {
({
enableThinking,
enableInternet,
}: NextMessageInputOnPressEnterParameter) => {
if (trim(value) === '') return;
const id = uuid();
if (done) {
@ -135,13 +143,15 @@ export const useSendSharedMessage = () => {
id,
role: MessageType.User,
});
handleSendMessage({
content: value.trim(),
id,
role: MessageType.User,
reasoning: enableThinking,
internet: enableInternet,
});
handleSendMessage(
{
content: value.trim(),
id,
role: MessageType.User,
},
enableThinking,
enableInternet,
);
}
},
[addNewestQuestion, done, handleSendMessage, setValue, value],