feat: 一些优化,以及token消耗展示

This commit is contained in:
2025-06-29 01:25:42 +08:00
parent 2da3fe3b47
commit dfc817e3e3
8 changed files with 146 additions and 64 deletions

View File

@@ -49,7 +49,6 @@ watch(() => modelList.value, (newVal) => {
if (newVal.length > 0 && newVal[0].models.length > 0) {
modelInfo.value = newVal[0].models[0];
}
console.log("Options updated:", options.value);
}
}, { immediate: true, deep: true });
@@ -89,17 +88,17 @@ onMounted(() => {
<!-- 历史消息区 -->
<NScrollbar ref="scrollbarRef" class="flex-1 pr-4 relative">
<div class="flex items-start mb-4">
<span class="rounded-lg overflow-hidden">
<span class="rounded-lg overflow-hidden !w-16 !min-w-16 !h-16">
<avatar :avatar="AIAvatar" />
</span>
<div class="text-base w-full max-w-full ml-2 flex flex-col items-start">
<span class="text-base font-bold">助手</span>
<span class="text-base font-bold mb-4">助手</span>
<span class="text-base">你好我是你的智能助手请问有什么可以帮助你的吗</span>
<NDivider />
</div>
</div>
<div v-for="(msg, idx) in historyMessages" :key="idx" class="flex items-start mb-4">
<span v-if="msg.role === 'user'" class="rounded-lg overflow-hidden">
<span v-if="msg.role === 'user'" class="rounded-lg overflow-hidden !w-16 !min-w-16 !h-16">
<avatar :avatar="UserAvatar" />
</span>
<span v-else class="rounded-lg overflow-hidden">
@@ -107,6 +106,9 @@ onMounted(() => {
</span>
<div class="text-base w-full max-w-full ml-2 flex flex-col items-start">
<span class="text-base font-bold">{{ msg.role === 'user' ? '你:' : '助手:' }}</span>
<div v-if="msg.role !== 'user'" class="text-[12px] text-[#7A7A7A] mb-[2px]">
Tokens: <span class="mr-1">{{ msg.usage?.total_tokens }}</span>
</div>
<div class="w-full max-w-full">
<markdown :content="msg.content || ''" />
<NDivider />
@@ -121,7 +123,12 @@ onMounted(() => {
</div>
</NScrollbar>
<!-- 输入框 -->
<NInput v-model:value="inputData" type="textarea" placeholder="在这里输入消息" @keyup.enter="handleSendMessage" />
<NInput
v-model:value="inputData" type="textarea" placeholder="输入内容Enter发送Shift+Enter换行" :autosize="{
minRows: 3,
maxRows: 15,
}" @keyup.enter="handleSendMessage"
/>
<!-- 操作区 -->
<div class="flex justify-between items-center gap-2">
<div class="flex items-center gap-2">