提交 af7e8dd6 编写于 作者: View Design's avatar View Design

Merge branch 'main' of gitcode.com:git_bot/ai-fe

...@@ -23,7 +23,7 @@ const initMarkdownIt = new MarkdownIt({ ...@@ -23,7 +23,7 @@ const initMarkdownIt = new MarkdownIt({
} catch (__) {} } catch (__) {}
} }
return '<pre><code class="language-none hljs">' + md.utils.escapeHtml(str) + '</code></pre>'; return '<pre><code class="language-none hljs">' + initMarkdownIt.utils.escapeHtml(str) + '</code></pre>';
} }
}) })
const handleRenderMd = () => { const handleRenderMd = () => {
......
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
</template> </template>
<template #item="{ item }"> <template #item="{ item }">
<div class="text-base">改写问题</div> <div class="text-base">改写问题</div>
<article class="prose prose-sm">内容内容内容</article> <MdRenderer class="prose prose-sm" :content="item.description" />
</template> </template>
</UAccordion> </UAccordion>
</UCard> </UCard>
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
<UButton size="xs" color="gray" @click="handleShare(index + 1)" leading-icon="i-heroicons-share-20-solid" label="分享" /> <UButton size="xs" color="gray" @click="handleShare(index + 1)" leading-icon="i-heroicons-share-20-solid" label="分享" />
<UButton size="xs" color="gray" @click="handleReGenerate(index)" leading-icon="i-heroicons-arrow-path-rounded-square-20-solid" label="重写" /> <UButton size="xs" color="gray" @click="handleReGenerate(index)" leading-icon="i-heroicons-arrow-path-rounded-square-20-solid" label="重写" />
</div> </div>
<div class="text-xl flex items-center space-x-1"> <div class="text-xl flex items-center space-x-1" v-if="item.source && item.source.length > 0">
<UIcon name="i-heroicons-link-20-solid" /> <UIcon name="i-heroicons-link-20-solid" />
<span>来源</span> <span>来源</span>
</div> </div>
...@@ -182,9 +182,11 @@ const handleContinueAsk = (question) => { ...@@ -182,9 +182,11 @@ const handleContinueAsk = (question) => {
if (asking.value) return; if (asking.value) return;
asking.value = true; asking.value = true;
} }
// 处理generate
// 处理ai generate
let aiChatController = null; // 用户取消操作方法 let aiChatController = null; // 用户取消操作方法
const markedEnd = '[DONE]'; const markedEnd = '[DONE]';
let storeSource = [];
const handleFormFetchData = (fetchData) => { const handleFormFetchData = (fetchData) => {
let message = {}; let message = {};
try { try {
...@@ -195,22 +197,35 @@ const handleFormFetchData = (fetchData) => { ...@@ -195,22 +197,35 @@ const handleFormFetchData = (fetchData) => {
if (Object.keys(message).length === 0) return; if (Object.keys(message).length === 0) return;
const index = data.value.length === 0 ? 0 : data.value.length - 1; const index = data.value.length === 0 ? 0 : data.value.length - 1;
data.value[index] = data.value[index] || {}; data.value[index] = data.value[index] || {};
if (message.meta.type === 'answer') { const { meta, choices } = message;
if (meta.type === 'answer') {
Object.assign(data.value[index], { Object.assign(data.value[index], {
question: state.query, question: state.query,
article: message.choices[0].message.content article: message.choices[0].message.content
}) })
} else if (message.meta.type === 'log') { return;
console.log('log', JSON.stringify(message)) }
} else if (message.meta.type === 'rephrase_question') { if (meta.type === 'log') {
Object.assign(data.value[index], { if (meta.action === 'rephrase_question') {
description: message.choices[0].message.content Object.assign(data.value[index], { description: choices[0].message.content })
}) } else if (meta.action === 'search_file') {
let source = choices[0].message.content;
storeSource = source.split('\n').map(item => {
return {
label: item,
link: '',
repo: ''
}
});
}
} }
} }
const handleMessage = (event) => { const handleMessage = (event) => {
if (event.data === markedEnd) { if (event.data === markedEnd) {
asking.value = false; asking.value = false;
const index = data.value.length === 0 ? 0 : data.value.length - 1;
data.value[index] = data.value[index] || {};
Object.assign(data.value[index], { source: storeSource });
return; return;
} }
handleFormFetchData(event.data) handleFormFetchData(event.data)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册