feat: add metering data

This commit is contained in:
zhaoweijie
2025-02-22 14:09:57 +08:00
parent f617a05483
commit 6d79d42925
2 changed files with 58 additions and 6 deletions

View File

@@ -55,6 +55,8 @@ export const useMessageOption = () => {
const {
history,
setHistory,
chatMessages,
setChatMessages,
setStreaming,
streaming,
setIsFirstMessage,
@@ -166,7 +168,6 @@ export const useMessageOption = () => {
useMlock:
currentChatModelSettings?.useMlock ?? userDefaultModelSettings?.useMlock
})
let newMessage: Message[] = []
let generateMessageId = generateID()
@@ -285,16 +286,19 @@ export const useMessageOption = () => {
const response = await ollama.invoke(promptForQuestion)
let res = response.content.toString()
res = removeReasoning(res)
keywords = res.replace(/^Keywords:/i, '').split(', ').map(k => k.trim())
keywords = res
.replace(/^Keywords:/i, "")
.split(", ")
.map((k) => k.trim())
}
const { prompt, webSources, iodSources } = await getSystemPromptForWeb(
query,
keywords,
webSearch,
iodSearch,
iodSearch
)
console.log("prompt:\n"+prompt);
console.log("prompt:\n" + prompt)
setIsSearchingInternet(false)
// message = message.trim().replaceAll("\n", " ")
@@ -455,6 +459,24 @@ export const useMessageOption = () => {
setIsProcessing(false)
setStreaming(false)
setChatMessages([
...chatMessages,
{
id: generateMessageId,
query: message,
prompt: prompt,
thinkingChain: "",
answer: fullText,
relatedDataCount: count,
iodInputToken: "",
iodOutputToken: "",
modelInputToken: "",
modelOutputToken: "",
date: reasoningStartTime,
timeTaken: timetaken
}
])
} catch (e) {
const errorSave = await saveMessageOnError({
e,