@lobehub/chat 1.128.0 → 1.128.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/test.yml +8 -1
- package/CHANGELOG.md +51 -0
- package/changelog/v1.json +18 -0
- package/locales/ar/models.json +6 -0
- package/locales/bg-BG/models.json +6 -0
- package/locales/de-DE/models.json +6 -0
- package/locales/en-US/models.json +6 -0
- package/locales/es-ES/models.json +6 -0
- package/locales/fa-IR/models.json +6 -0
- package/locales/fr-FR/models.json +6 -0
- package/locales/it-IT/models.json +6 -0
- package/locales/ja-JP/models.json +6 -0
- package/locales/ko-KR/models.json +6 -0
- package/locales/nl-NL/models.json +6 -0
- package/locales/pl-PL/models.json +6 -0
- package/locales/pt-BR/models.json +6 -0
- package/locales/ru-RU/models.json +6 -0
- package/locales/tr-TR/models.json +6 -0
- package/locales/vi-VN/models.json +6 -0
- package/locales/zh-CN/models.json +6 -0
- package/locales/zh-TW/models.json +6 -0
- package/next.config.ts +8 -1
- package/package.json +71 -69
- package/packages/context-engine/ARCHITECTURE.md +425 -0
- package/packages/context-engine/package.json +40 -0
- package/packages/context-engine/src/base/BaseProcessor.ts +87 -0
- package/packages/context-engine/src/base/BaseProvider.ts +22 -0
- package/packages/context-engine/src/index.ts +32 -0
- package/packages/context-engine/src/pipeline.ts +219 -0
- package/packages/context-engine/src/processors/HistoryTruncate.ts +76 -0
- package/packages/context-engine/src/processors/InputTemplate.ts +83 -0
- package/packages/context-engine/src/processors/MessageCleanup.ts +87 -0
- package/packages/context-engine/src/processors/MessageContent.ts +298 -0
- package/packages/context-engine/src/processors/PlaceholderVariables.ts +196 -0
- package/packages/context-engine/src/processors/ToolCall.ts +186 -0
- package/packages/context-engine/src/processors/ToolMessageReorder.ts +113 -0
- package/packages/context-engine/src/processors/__tests__/HistoryTruncate.test.ts +175 -0
- package/packages/context-engine/src/processors/__tests__/InputTemplate.test.ts +243 -0
- package/packages/context-engine/src/processors/__tests__/MessageContent.test.ts +394 -0
- package/packages/context-engine/src/processors/__tests__/PlaceholderVariables.test.ts +334 -0
- package/packages/context-engine/src/processors/__tests__/ToolMessageReorder.test.ts +186 -0
- package/packages/context-engine/src/processors/index.ts +15 -0
- package/packages/context-engine/src/providers/HistorySummary.ts +102 -0
- package/packages/context-engine/src/providers/InboxGuide.ts +102 -0
- package/packages/context-engine/src/providers/SystemRoleInjector.ts +64 -0
- package/packages/context-engine/src/providers/ToolSystemRole.ts +118 -0
- package/packages/context-engine/src/providers/__tests__/HistorySummaryProvider.test.ts +112 -0
- package/packages/context-engine/src/providers/__tests__/InboxGuideProvider.test.ts +121 -0
- package/packages/context-engine/src/providers/__tests__/SystemRoleInjector.test.ts +200 -0
- package/packages/context-engine/src/providers/__tests__/ToolSystemRoleProvider.test.ts +140 -0
- package/packages/context-engine/src/providers/index.ts +11 -0
- package/packages/context-engine/src/types.ts +201 -0
- package/packages/context-engine/vitest.config.mts +10 -0
- package/packages/database/package.json +1 -1
- package/packages/model-bank/src/aiModels/deepseek.ts +4 -4
- package/packages/model-bank/src/aiModels/google.ts +30 -6
- package/packages/model-bank/src/aiModels/groq.ts +1 -19
- package/packages/model-bank/src/aiModels/modelscope.ts +24 -18
- package/packages/model-bank/src/aiModels/novita.ts +71 -5
- package/packages/model-bank/src/aiModels/qwen.ts +87 -2
- package/packages/model-bank/src/aiModels/siliconcloud.ts +65 -2
- package/packages/model-bank/src/aiModels/volcengine.ts +4 -3
- package/packages/model-runtime/src/utils/modelParse.ts +4 -4
- package/packages/prompts/src/prompts/systemRole/index.ts +1 -1
- package/packages/utils/src/index.ts +2 -0
- package/packages/utils/src/uriParser.test.ts +29 -0
- package/packages/utils/src/uriParser.ts +24 -0
- package/src/services/{__tests__ → chat}/chat.test.ts +22 -1032
- package/src/services/chat/clientModelRuntime.test.ts +385 -0
- package/src/services/chat/clientModelRuntime.ts +34 -0
- package/src/services/chat/contextEngineering.test.ts +848 -0
- package/src/services/chat/contextEngineering.ts +123 -0
- package/src/services/chat/helper.ts +61 -0
- package/src/services/{chat.ts → chat/index.ts} +24 -366
- package/src/services/chat/types.ts +9 -0
- package/src/services/models.ts +1 -1
- package/src/store/aiInfra/slices/aiModel/selectors.ts +2 -2
- package/src/store/chat/slices/aiChat/actions/generateAIChat.ts +1 -40
- /package/src/services/{__tests__ → chat}/__snapshots__/chat.test.ts.snap +0 -0
|
@@ -4,7 +4,6 @@ import { knowledgeBaseQAPrompts } from '@lobechat/prompts';
|
|
|
4
4
|
import { TraceEventType, TraceNameMap } from '@lobechat/types';
|
|
5
5
|
import { t } from 'i18next';
|
|
6
6
|
import { produce } from 'immer';
|
|
7
|
-
import { template } from 'lodash-es';
|
|
8
7
|
import { StateCreator } from 'zustand/vanilla';
|
|
9
8
|
|
|
10
9
|
import { LOADING_FLAT, MESSAGE_CANCEL_FLAT } from '@/const/message';
|
|
@@ -16,7 +15,6 @@ import { agentChatConfigSelectors, agentSelectors } from '@/store/agent/selector
|
|
|
16
15
|
import { getAgentStoreState } from '@/store/agent/store';
|
|
17
16
|
import { aiModelSelectors, aiProviderSelectors } from '@/store/aiInfra';
|
|
18
17
|
import { getAiInfraStoreState } from '@/store/aiInfra/store';
|
|
19
|
-
import { chatHelpers } from '@/store/chat/helpers';
|
|
20
18
|
import { ChatStore } from '@/store/chat/store';
|
|
21
19
|
import { messageMapKey } from '@/store/chat/utils/messageMapKey';
|
|
22
20
|
import { getFileStoreState } from '@/store/file/store';
|
|
@@ -545,46 +543,9 @@ export const generateAIChat: StateCreator<
|
|
|
545
543
|
const agentConfig = agentSelectors.currentAgentConfig(getAgentStoreState());
|
|
546
544
|
const chatConfig = agentChatConfigSelectors.currentChatConfig(getAgentStoreState());
|
|
547
545
|
|
|
548
|
-
const compiler = template(chatConfig.inputTemplate, {
|
|
549
|
-
interpolate: /{{\s*(text)\s*}}/g,
|
|
550
|
-
});
|
|
551
|
-
|
|
552
546
|
// ================================== //
|
|
553
547
|
// messages uniformly preprocess //
|
|
554
548
|
// ================================== //
|
|
555
|
-
|
|
556
|
-
// 1. slice messages with config
|
|
557
|
-
const historyCount = agentChatConfigSelectors.historyCount(getAgentStoreState());
|
|
558
|
-
const enableHistoryCount = agentChatConfigSelectors.enableHistoryCount(getAgentStoreState());
|
|
559
|
-
|
|
560
|
-
let preprocessMsgs = chatHelpers.getSlicedMessages(messages, {
|
|
561
|
-
includeNewUserMessage: true,
|
|
562
|
-
enableHistoryCount,
|
|
563
|
-
historyCount,
|
|
564
|
-
});
|
|
565
|
-
|
|
566
|
-
// 2. replace inputMessage template
|
|
567
|
-
preprocessMsgs = !chatConfig.inputTemplate
|
|
568
|
-
? preprocessMsgs
|
|
569
|
-
: preprocessMsgs.map((m) => {
|
|
570
|
-
if (m.role === 'user') {
|
|
571
|
-
try {
|
|
572
|
-
return { ...m, content: compiler({ text: m.content }) };
|
|
573
|
-
} catch (error) {
|
|
574
|
-
console.error(error);
|
|
575
|
-
|
|
576
|
-
return m;
|
|
577
|
-
}
|
|
578
|
-
}
|
|
579
|
-
|
|
580
|
-
return m;
|
|
581
|
-
});
|
|
582
|
-
|
|
583
|
-
// 3. add systemRole
|
|
584
|
-
if (agentConfig.systemRole) {
|
|
585
|
-
preprocessMsgs.unshift({ content: agentConfig.systemRole, role: 'system' } as ChatMessage);
|
|
586
|
-
}
|
|
587
|
-
|
|
588
549
|
// 4. handle max_tokens
|
|
589
550
|
agentConfig.params.max_tokens = chatConfig.enableMaxTokens
|
|
590
551
|
? agentConfig.params.max_tokens
|
|
@@ -610,7 +571,7 @@ export const generateAIChat: StateCreator<
|
|
|
610
571
|
await chatService.createAssistantMessageStream({
|
|
611
572
|
abortController,
|
|
612
573
|
params: {
|
|
613
|
-
messages
|
|
574
|
+
messages,
|
|
614
575
|
model,
|
|
615
576
|
provider,
|
|
616
577
|
...agentConfig.params,
|
|
File without changes
|