提交 6521fc27 authored 作者: 王鹏飞's avatar 王鹏飞

fix: 支持本地AI调用

上级 8354c27b
...@@ -40,9 +40,15 @@ export function useChat() { ...@@ -40,9 +40,15 @@ export function useChat() {
content = content.replaceAll('\n', '<br/>') content = content.replaceAll('\n', '<br/>')
} }
if (messageIndex === -1) { if (messageIndex === -1) {
messages.value.push({ id, role: 'assistant', content }) messages.value.push({
id,
role: 'assistant',
content: content.replace(/<think>[\s\S]*?<\/think>/g, '').replace(/^((<br\s*\/?>)|\s|\\n|\\r)+/g, ''),
})
} else { } else {
messages.value[messageIndex].content = messages.value[messageIndex].content + content messages.value[messageIndex].content = (messages.value[messageIndex].content + content)
.replace(/<think>[\s\S]*?<\/think>/g, '')
.replace(/^((<br\s*\/?>)|\s|\\n|\\r)+/g, '')
} }
} catch (error) { } catch (error) {
console.log(error) console.log(error)
......
...@@ -10,6 +10,7 @@ async function fetchAI() { ...@@ -10,6 +10,7 @@ async function fetchAI() {
const stream = await getAISummary() const stream = await getAISummary()
aiStreamParse(stream, (json, messageContent) => { aiStreamParse(stream, (json, messageContent) => {
content.value += messageContent content.value += messageContent
content.value = content.value.replace(/<think>[\s\S]*?<\/think>/g, '').replace(/^((<br\s*\/?>)|\s|\\n|\\r)+/g, '')
}) })
isLoading.value = false isLoading.value = false
} }
......
...@@ -10,6 +10,7 @@ async function fetchAI() { ...@@ -10,6 +10,7 @@ async function fetchAI() {
const stream = await getAISummary() const stream = await getAISummary()
aiStreamParse(stream, (json, messageContent) => { aiStreamParse(stream, (json, messageContent) => {
content.value += messageContent content.value += messageContent
content.value = content.value.replace(/<think>[\s\S]*?<\/think>/g, '').replace(/^((<br\s*\/?>)|\s|\\n|\\r)+/g, '')
}) })
isLoading.value = false isLoading.value = false
} }
......
...@@ -12,6 +12,7 @@ async function fetchAI() { ...@@ -12,6 +12,7 @@ async function fetchAI() {
const stream = await getAISummary({ member_id: props.id }) const stream = await getAISummary({ member_id: props.id })
aiStreamParse(stream, (json, messageContent) => { aiStreamParse(stream, (json, messageContent) => {
content.value += messageContent content.value += messageContent
content.value = content.value.replace(/<think>[\s\S]*?<\/think>/g, '').replace(/^((<br\s*\/?>)|\s|\\n|\\r)+/g, '')
}) })
isLoading.value = false isLoading.value = false
} }
......
...@@ -7,7 +7,7 @@ const httpRequest = axios.create({ ...@@ -7,7 +7,7 @@ const httpRequest = axios.create({
withCredentials: true, withCredentials: true,
headers: { headers: {
// 'Content-Type': 'application/x-www-form-urlencoded' // 'Content-Type': 'application/x-www-form-urlencoded'
} },
}) })
// 请求拦截 // 请求拦截
...@@ -19,14 +19,14 @@ httpRequest.interceptors.request.use( ...@@ -19,14 +19,14 @@ httpRequest.interceptors.request.use(
config.params = Object.assign({}, config.params, { config.params = Object.assign({}, config.params, {
experiment_id: params.get('experiment_id'), experiment_id: params.get('experiment_id'),
student_id: params.get('student_id') || undefined, student_id: params.get('student_id') || undefined,
force_tgc: params.get('force_tgc') || undefined force_tgc: params.get('force_tgc') || undefined,
}) })
if (config.method === 'post') if (config.method === 'post')
config.data = Object.assign({}, config.data, { config.data = Object.assign({}, config.data, {
experiment_id: params.get('experiment_id'), experiment_id: params.get('experiment_id'),
student_id: params.get('student_id') || undefined, student_id: params.get('student_id') || undefined,
force_tgc: params.get('force_tgc') || undefined force_tgc: params.get('force_tgc') || undefined,
}) })
return config return config
...@@ -52,7 +52,11 @@ httpRequest.interceptors.response.use( ...@@ -52,7 +52,11 @@ httpRequest.interceptors.response.use(
if (import.meta.env.VITE_STATIC_URL) { if (import.meta.env.VITE_STATIC_URL) {
try { try {
const regex = /(http|https):\/\/(.*?)saas-lab-api/gi const regex = /(http|https):\/\/(.*?)saas-lab-api/gi
return JSON.parse(JSON.stringify(data).replaceAll(regex, import.meta.env.VITE_STATIC_URL)) const dataStr = JSON.stringify(data)
if (regex.test(dataStr)) {
return JSON.parse(dataStr.replaceAll(regex, import.meta.env.VITE_STATIC_URL))
}
return data
} catch (error) { } catch (error) {
console.log(error) console.log(error)
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论