mirror of
https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
synced 2025-05-19 20:20:16 +09:00
feat: Remove reasoning_contentfor DeepSeek API messages
This commit is contained in:
parent
c449737127
commit
dabb7c70d5
@ -22,7 +22,10 @@ import {
|
||||
SpeechOptions,
|
||||
} from "../api";
|
||||
import { getClientConfig } from "@/app/config/client";
|
||||
import { getMessageTextContent } from "@/app/utils";
|
||||
import {
|
||||
getMessageTextContent,
|
||||
getMessageTextContentWithoutThinking,
|
||||
} from "@/app/utils";
|
||||
import { RequestPayload } from "./openai";
|
||||
import { fetch } from "@/app/utils/stream";
|
||||
|
||||
@ -67,9 +70,14 @@ export class DeepSeekApi implements LLMApi {
|
||||
async chat(options: ChatOptions) {
|
||||
const messages: ChatOptions["messages"] = [];
|
||||
for (const v of options.messages) {
|
||||
if (v.role === "assistant") {
|
||||
const content = getMessageTextContentWithoutThinking(v);
|
||||
messages.push({ role: v.role, content });
|
||||
} else {
|
||||
const content = getMessageTextContent(v);
|
||||
messages.push({ role: v.role, content });
|
||||
}
|
||||
}
|
||||
|
||||
const modelConfig = {
|
||||
...useAppConfig.getState().modelConfig,
|
||||
|
30
app/utils.ts
30
app/utils.ts
@ -16,8 +16,8 @@ export function trimTopic(topic: string) {
|
||||
return (
|
||||
topic
|
||||
// fix for gemini
|
||||
.replace(/^["“”*]+|["“”*]+$/g, "")
|
||||
.replace(/[,。!?”“"、,.!?*]*$/, "")
|
||||
.replace(/^["""*]+|[""*]+$/g, "")
|
||||
.replace(/[,。!?""""、,.!?*]*$/, "")
|
||||
);
|
||||
}
|
||||
|
||||
@ -241,6 +241,28 @@ export function getMessageTextContent(message: RequestMessage) {
|
||||
return "";
|
||||
}
|
||||
|
||||
export function getMessageTextContentWithoutThinking(message: RequestMessage) {
|
||||
let content = "";
|
||||
|
||||
if (typeof message.content === "string") {
|
||||
content = message.content;
|
||||
} else {
|
||||
for (const c of message.content) {
|
||||
if (c.type === "text") {
|
||||
content = c.text ?? "";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Filter out thinking lines (starting with "> ")
|
||||
return content
|
||||
.split("\n")
|
||||
.filter((line) => !line.startsWith("> ") && line.trim() !== "")
|
||||
.join("\n")
|
||||
.trim();
|
||||
}
|
||||
|
||||
export function getMessageImages(message: RequestMessage): string[] {
|
||||
if (typeof message.content === "string") {
|
||||
return [];
|
||||
@ -256,9 +278,7 @@ export function getMessageImages(message: RequestMessage): string[] {
|
||||
|
||||
export function isVisionModel(model: string) {
|
||||
const visionModels = useAccessStore.getState().visionModels;
|
||||
const envVisionModels = visionModels
|
||||
?.split(",")
|
||||
.map((m) => m.trim());
|
||||
const envVisionModels = visionModels?.split(",").map((m) => m.trim());
|
||||
if (envVisionModels?.includes(model)) {
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user