diff --git a/packages/adapter-azure-openai/package.json b/packages/adapter-azure-openai/package.json index 921b9fab7..a9082d2a7 100644 --- a/packages/adapter-azure-openai/package.json +++ b/packages/adapter-azure-openai/package.json @@ -57,7 +57,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "resolutions": { "@langchain/core": "^0.3.80", diff --git a/packages/adapter-claude/package.json b/packages/adapter-claude/package.json index ca39e02e4..8367f9453 100644 --- a/packages/adapter-claude/package.json +++ b/packages/adapter-claude/package.json @@ -59,7 +59,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "resolutions": { "@langchain/core": "^0.3.80", diff --git a/packages/adapter-deepseek/package.json b/packages/adapter-deepseek/package.json index b68975e00..a3d910f46 100644 --- a/packages/adapter-deepseek/package.json +++ b/packages/adapter-deepseek/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "category": "ai", diff --git a/packages/adapter-dify/package.json b/packages/adapter-dify/package.json index d5d1d5332..ea5ec4e27 100644 --- a/packages/adapter-dify/package.json +++ b/packages/adapter-dify/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-doubao/package.json b/packages/adapter-doubao/package.json index af493ac79..12de313d0 100644 --- a/packages/adapter-doubao/package.json +++ b/packages/adapter-doubao/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-gemini/package.json b/packages/adapter-gemini/package.json index 668e90b10..df0b7ee4c 100644 --- a/packages/adapter-gemini/package.json +++ b/packages/adapter-gemini/package.json @@ -75,7 +75,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18", + "koishi-plugin-chatluna": "^1.4.0-alpha.19", "koishi-plugin-chatluna-storage-service": "^1.0.6" }, "peerDependenciesMeta": { diff --git a/packages/adapter-hunyuan/package.json b/packages/adapter-hunyuan/package.json index d510fea34..160808c59 100644 --- a/packages/adapter-hunyuan/package.json +++ b/packages/adapter-hunyuan/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-ollama/package.json b/packages/adapter-ollama/package.json index 1bfb12638..148c186ed 100644 --- a/packages/adapter-ollama/package.json +++ b/packages/adapter-ollama/package.json @@ -54,7 +54,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "resolutions": { "@langchain/core": "^0.3.80", diff --git a/packages/adapter-openai-like/package.json b/packages/adapter-openai-like/package.json index 69a1c4579..63ad9dc68 100644 --- a/packages/adapter-openai-like/package.json +++ b/packages/adapter-openai-like/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-openai/package.json b/packages/adapter-openai/package.json index 3d9c436ca..73ad4f59e 100644 --- a/packages/adapter-openai/package.json +++ b/packages/adapter-openai/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-qwen/package.json b/packages/adapter-qwen/package.json index 086aab45e..034f4ae3b 100644 --- a/packages/adapter-qwen/package.json +++ b/packages/adapter-qwen/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-rwkv/package.json b/packages/adapter-rwkv/package.json index 1c9bd5e8e..dab9fc8ce 100644 --- a/packages/adapter-rwkv/package.json +++ b/packages/adapter-rwkv/package.json @@ -69,7 +69,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-spark/package.json b/packages/adapter-spark/package.json index 213d9e29c..7dbc99665 100644 --- a/packages/adapter-spark/package.json +++ b/packages/adapter-spark/package.json @@ -72,7 +72,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-wenxin/package.json b/packages/adapter-wenxin/package.json index 3ba9ebd09..435c72614 100644 --- a/packages/adapter-wenxin/package.json +++ b/packages/adapter-wenxin/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/adapter-zhipu/package.json b/packages/adapter-zhipu/package.json index fbffb1deb..b1bc7df5b 100644 --- a/packages/adapter-zhipu/package.json +++ b/packages/adapter-zhipu/package.json @@ -73,7 +73,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/core/package.json b/packages/core/package.json index 03a682a7f..6fade5a25 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "koishi-plugin-chatluna", "description": "chatluna for koishi", - "version": "1.4.0-alpha.18", + "version": "1.4.0-alpha.19", "main": "lib/index.cjs", "module": "lib/index.mjs", "typings": "lib/index.d.ts", diff --git a/packages/core/src/services/chat.ts b/packages/core/src/services/chat.ts index 244f3fd49..76c88c504 100644 --- a/packages/core/src/services/chat.ts +++ b/packages/core/src/services/chat.ts @@ -71,7 +71,7 @@ import { Embeddings } from '@langchain/core/embeddings' import { RunnableConfig } from '@langchain/core/runnables' import type { Notifier } from '@koishijs/plugin-notifier' import { ChatLunaContextManagerService } from 'koishi-plugin-chatluna/llm-core/prompt' -import { createChatPrompt } from 'koishi-plugin-chatluna/utils/chatluna' +import { ChatLunaChatPrompt } from 'koishi-plugin-chatluna/llm-core/chain/prompt' export class ChatLunaService extends Service { private _plugins: Record = {} @@ -449,8 +449,18 @@ export class ChatLunaService extends Service { const { preset, instructions } = resolveAgentPreset(options, (name) => computed(() => this._preset.getPreset(name).value) ) + const model = llm.value const prompt = - options.prompt ?? createChatPrompt(this.ctx, llm.value, preset) + options.prompt ?? + new ChatLunaChatPrompt({ + preset, + tokenCounter: (text) => model.getNumTokens(text), + sendTokenLimit: + model.invocationParams().maxTokenLimit ?? + model.getModelMaxContextSize(), + contextManager: this._contextManager, + promptRenderService: this._promptRenderer + }) return createAgent({ id: options.id, diff --git a/packages/extension-agent/package.json b/packages/extension-agent/package.json index 1f2ed94a7..f5c9342ec 100644 --- a/packages/extension-agent/package.json +++ b/packages/extension-agent/package.json @@ -89,7 +89,7 @@ "peerDependencies": { "@koishijs/plugin-console": "^5.30.11", "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18", + "koishi-plugin-chatluna": "^1.4.0-alpha.19", "koishi-plugin-chatluna-storage-service": "^1.0.6" }, "peerDependenciesMeta": { diff --git a/packages/extension-long-memory/package.json b/packages/extension-long-memory/package.json index d2338e260..4059e84cd 100644 --- a/packages/extension-long-memory/package.json +++ b/packages/extension-long-memory/package.json @@ -62,7 +62,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "resolutions": { "@langchain/core": "^0.3.80", diff --git a/packages/extension-tools/package.json b/packages/extension-tools/package.json index 84f04f3bd..a82fd5f54 100644 --- a/packages/extension-tools/package.json +++ b/packages/extension-tools/package.json @@ -71,7 +71,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18", + "koishi-plugin-chatluna": "^1.4.0-alpha.19", "koishi-plugin-chatluna-agent": "^1.0.30", "koishi-plugin-chatluna-storage-service": "^1.0.6" }, diff --git a/packages/extension-usage/package.json b/packages/extension-usage/package.json index 638da0c3a..2318e6f36 100644 --- a/packages/extension-usage/package.json +++ b/packages/extension-usage/package.json @@ -1,7 +1,7 @@ { "name": "koishi-plugin-chatluna-usage", "description": "Usage records for ChatLuna model calls", - "version": "1.0.0", + "version": "1.0.1", "main": "lib/index.cjs", "module": "lib/index.mjs", "typings": "lib/index.d.ts", @@ -59,7 +59,7 @@ "peerDependencies": { "@koishijs/plugin-console": "^5.30.11", "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/extension-variable/package.json b/packages/extension-variable/package.json index e5f2e30bb..a42dd6a4f 100644 --- a/packages/extension-variable/package.json +++ b/packages/extension-variable/package.json @@ -58,7 +58,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "resolutions": { "@langchain/core": "^0.3.80", diff --git a/packages/renderer-image/package.json b/packages/renderer-image/package.json index 3f3054acc..4ad3128d1 100644 --- a/packages/renderer-image/package.json +++ b/packages/renderer-image/package.json @@ -62,7 +62,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/service-embeddings/package.json b/packages/service-embeddings/package.json index 4b0c102c5..162e05264 100644 --- a/packages/service-embeddings/package.json +++ b/packages/service-embeddings/package.json @@ -63,7 +63,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "koishi": { "description": { diff --git a/packages/service-multimodal/package.json b/packages/service-multimodal/package.json index b0987f6bb..fa7a3af8d 100644 --- a/packages/service-multimodal/package.json +++ b/packages/service-multimodal/package.json @@ -61,7 +61,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18", + "koishi-plugin-chatluna": "^1.4.0-alpha.19", "koishi-plugin-ffmpeg-path": "^2.0.0" }, "peerDependenciesMeta": { diff --git a/packages/service-search/package.json b/packages/service-search/package.json index 824dd4543..e9d3babd0 100644 --- a/packages/service-search/package.json +++ b/packages/service-search/package.json @@ -75,7 +75,7 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18", + "koishi-plugin-chatluna": "^1.4.0-alpha.19", "koishi-plugin-chatluna-agent": "^1.0.30" }, "peerDependenciesMeta": { diff --git a/packages/service-vector-store/package.json b/packages/service-vector-store/package.json index 25ad7cd7b..1e0bc62c4 100644 --- a/packages/service-vector-store/package.json +++ b/packages/service-vector-store/package.json @@ -58,7 +58,7 @@ "@zilliz/milvus2-sdk-node": "^2.6.2", "faiss-node": "^0.5.1", "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" }, "peerDependenciesMeta": { "@zilliz/milvus2-sdk-node": { diff --git a/packages/shared-adapter/package.json b/packages/shared-adapter/package.json index cb8136a5e..015f31de7 100644 --- a/packages/shared-adapter/package.json +++ b/packages/shared-adapter/package.json @@ -70,6 +70,6 @@ }, "peerDependencies": { "koishi": "^4.18.9", - "koishi-plugin-chatluna": "^1.4.0-alpha.18" + "koishi-plugin-chatluna": "^1.4.0-alpha.19" } }