@loonylabs/llm-middleware 2.17.0 → 2.18.0
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/README.md +1 -1
- package/dist/middleware/services/llm/index.d.ts +1 -0
- package/dist/middleware/services/llm/index.d.ts.map +1 -1
- package/dist/middleware/services/llm/index.js +2 -0
- package/dist/middleware/services/llm/index.js.map +1 -1
- package/dist/middleware/services/llm/providers/anthropic-provider.d.ts.map +1 -1
- package/dist/middleware/services/llm/providers/anthropic-provider.js +11 -6
- package/dist/middleware/services/llm/providers/anthropic-provider.js.map +1 -1
- package/dist/middleware/services/llm/providers/gemini/gemini-base.provider.d.ts.map +1 -1
- package/dist/middleware/services/llm/providers/gemini/gemini-base.provider.js +14 -2
- package/dist/middleware/services/llm/providers/gemini/gemini-base.provider.js.map +1 -1
- package/dist/middleware/services/llm/providers/ollama-provider.d.ts.map +1 -1
- package/dist/middleware/services/llm/providers/ollama-provider.js +36 -18
- package/dist/middleware/services/llm/providers/ollama-provider.js.map +1 -1
- package/dist/middleware/services/llm/thinking/extractors/index.d.ts +3 -0
- package/dist/middleware/services/llm/thinking/extractors/index.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/extractors/index.js +8 -0
- package/dist/middleware/services/llm/thinking/extractors/index.js.map +1 -0
- package/dist/middleware/services/llm/thinking/extractors/noop.extractor.d.ts +19 -0
- package/dist/middleware/services/llm/thinking/extractors/noop.extractor.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/extractors/noop.extractor.js +26 -0
- package/dist/middleware/services/llm/thinking/extractors/noop.extractor.js.map +1 -0
- package/dist/middleware/services/llm/thinking/extractors/think-tag.extractor.d.ts +27 -0
- package/dist/middleware/services/llm/thinking/extractors/think-tag.extractor.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/extractors/think-tag.extractor.js +64 -0
- package/dist/middleware/services/llm/thinking/extractors/think-tag.extractor.js.map +1 -0
- package/dist/middleware/services/llm/thinking/index.d.ts +4 -0
- package/dist/middleware/services/llm/thinking/index.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/index.js +11 -0
- package/dist/middleware/services/llm/thinking/index.js.map +1 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.factory.d.ts +61 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.factory.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.factory.js +91 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.factory.js.map +1 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.interface.d.ts +32 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.interface.d.ts.map +1 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.interface.js +3 -0
- package/dist/middleware/services/llm/thinking/thinking-extractor.interface.js.map +1 -0
- package/dist/middleware/services/llm/types/common.types.d.ts +2 -0
- package/dist/middleware/services/llm/types/common.types.d.ts.map +1 -1
- package/dist/middleware/services/llm/types/common.types.js.map +1 -1
- package/dist/middleware/services/llm/types/gemini.types.d.ts +7 -0
- package/dist/middleware/services/llm/types/gemini.types.d.ts.map +1 -1
- package/dist/middleware/usecases/base/base-ai.usecase.d.ts.map +1 -1
- package/dist/middleware/usecases/base/base-ai.usecase.js +7 -3
- package/dist/middleware/usecases/base/base-ai.usecase.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -391,7 +391,7 @@ src/
|
|
|
391
391
|
- [Getting Started Guide](docs/GETTING_STARTED.md)
|
|
392
392
|
- [Architecture Overview](docs/ARCHITECTURE.md)
|
|
393
393
|
- [LLM Providers Guide](docs/LLM_PROVIDERS.md) - Multi-provider architecture and how to use different LLM services
|
|
394
|
-
- [Reasoning Control Guide](docs/
|
|
394
|
+
- [Reasoning Control Guide](docs/REASONING_CONTROL.md) - Control model thinking with `reasoningEffort` parameter
|
|
395
395
|
- [LLM Provider Parameters](docs/OLLAMA_PARAMETERS.md) - Ollama-specific parameter reference and presets
|
|
396
396
|
- [Request Formatting Guide](docs/REQUEST_FORMATTING.md) - FlatFormatter vs RequestFormatterService
|
|
397
397
|
- [Performance Monitoring](docs/PERFORMANCE_MONITORING.md) - Metrics and logging
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/llm/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAG9B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/llm/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAG9B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC"}
|
|
@@ -20,6 +20,8 @@ __exportStar(require("./llm.service"), exports);
|
|
|
20
20
|
__exportStar(require("./types"), exports);
|
|
21
21
|
// Providers
|
|
22
22
|
__exportStar(require("./providers"), exports);
|
|
23
|
+
// Thinking extraction (Strategy Pattern for model-specific thinking)
|
|
24
|
+
__exportStar(require("./thinking"), exports);
|
|
23
25
|
// Utils
|
|
24
26
|
__exportStar(require("./utils"), exports);
|
|
25
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/middleware/services/llm/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mBAAmB;AACnB,gDAA8B;AAE9B,QAAQ;AACR,0CAAwB;AAExB,YAAY;AACZ,8CAA4B;AAE5B,QAAQ;AACR,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/middleware/services/llm/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mBAAmB;AACnB,gDAA8B;AAE9B,QAAQ;AACR,0CAAwB;AAExB,YAAY;AACZ,8CAA4B;AAE5B,qEAAqE;AACrE,6CAA2B;AAE3B,QAAQ;AACR,0CAAwB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-provider.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAe,iBAAiB,EAA+B,MAAM,UAAU,CAAC;AACvF,OAAO,EACL,uBAAuB,EAKxB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"anthropic-provider.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAe,iBAAiB,EAA+B,MAAM,UAAU,CAAC;AACvF,OAAO,EACL,uBAAuB,EAKxB,MAAM,0BAA0B,CAAC;AAyBlC;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;;IAO3D;;;;;;OAMG;IACU,qBAAqB,CAChC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CAgVrC;AAGD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AAGzD,OAAO,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,CAAC;AACjD,OAAO,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,CAAC"}
|
|
@@ -11,6 +11,7 @@ const base_llm_provider_1 = require("./base-llm-provider");
|
|
|
11
11
|
const types_1 = require("../types");
|
|
12
12
|
const debug_llm_utils_1 = require("../utils/debug-llm.utils");
|
|
13
13
|
const data_flow_logger_1 = require("../../data-flow-logger");
|
|
14
|
+
const thinking_1 = require("../thinking");
|
|
14
15
|
/**
|
|
15
16
|
* Maps provider-agnostic ReasoningEffort to Anthropic budget_tokens.
|
|
16
17
|
* Returns undefined if thinking should be disabled.
|
|
@@ -162,9 +163,14 @@ class AnthropicProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
162
163
|
if (response && response.status === 200) {
|
|
163
164
|
const apiResponse = response.data;
|
|
164
165
|
// Extract text from content blocks
|
|
165
|
-
const
|
|
166
|
+
const rawResponseText = apiResponse.content
|
|
166
167
|
.map(block => block.text)
|
|
167
168
|
.join('\n');
|
|
169
|
+
// Extract thinking using model-specific extractor (Strategy Pattern)
|
|
170
|
+
// Most Anthropic models don't use <think> tags, but this provides
|
|
171
|
+
// consistency and supports potential use via Anthropic-compatible proxies
|
|
172
|
+
const extractor = thinking_1.ThinkingExtractorFactory.forModel(model);
|
|
173
|
+
const { content: responseText, thinking } = extractor.extract(rawResponseText);
|
|
168
174
|
// Normalize token usage to provider-agnostic format
|
|
169
175
|
const tokenUsage = {
|
|
170
176
|
inputTokens: apiResponse.usage.input_tokens,
|
|
@@ -181,7 +187,8 @@ class AnthropicProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
181
187
|
// Normalize to CommonLLMResponse format
|
|
182
188
|
const normalizedResponse = {
|
|
183
189
|
message: {
|
|
184
|
-
content: responseText
|
|
190
|
+
content: responseText,
|
|
191
|
+
...(thinking && { thinking })
|
|
185
192
|
},
|
|
186
193
|
sessionId: sessionId,
|
|
187
194
|
metadata: {
|
|
@@ -202,10 +209,8 @@ class AnthropicProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
202
209
|
debugInfo.responseTimestamp = new Date();
|
|
203
210
|
debugInfo.response = responseText;
|
|
204
211
|
debugInfo.rawResponseData = apiResponse;
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
if (thinkMatch && thinkMatch[1]) {
|
|
208
|
-
debugInfo.thinking = thinkMatch[1].trim();
|
|
212
|
+
if (thinking) {
|
|
213
|
+
debugInfo.thinking = thinking;
|
|
209
214
|
}
|
|
210
215
|
// Log response (including markdown saving)
|
|
211
216
|
await debug_llm_utils_1.LLMDebugger.logResponse(debugInfo);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/anthropic-provider.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,+BAAoC;AACpC,uEAA6D;AAC7D,2DAAsD;AACtD,oCAAuF;AAQvF,8DAAqE;AACrE,6DAA+D;
|
|
1
|
+
{"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-base.provider.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/providers/gemini/gemini-base.provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAc,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAc,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,GAAG,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAWlF;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,eAAe,GAAG,mBAAmB,CAa9F;AAED;;;;;;;;;GASG;AACH,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAalF;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,eAAe;IAC9D,SAAS,CAAC,cAAc,EAAE,qBAAqB,CAAC;gBAEpC,YAAY,EAAE,WAAW;IAKrC;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAEpF;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAE7F;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAExF;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,MAAM,GACZ,sBAAsB;IA+DzB;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAC3B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,sBAAsB,GACvC,gBAAgB;IAenB;;OAEG;IACH,SAAS,CAAC,aAAa,CACrB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,GACtB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"gemini-base.provider.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/providers/gemini/gemini-base.provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAc,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAc,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,GAAG,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAWlF;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,eAAe,GAAG,mBAAmB,CAa9F;AAED;;;;;;;;;GASG;AACH,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAalF;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,eAAe;IAC9D,SAAS,CAAC,cAAc,EAAE,qBAAqB,CAAC;gBAEpC,YAAY,EAAE,WAAW;IAKrC;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAEpF;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAE7F;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAExF;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,MAAM,GACZ,sBAAsB;IA+DzB;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAC3B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,sBAAsB,GACvC,gBAAgB;IAenB;;OAEG;IACH,SAAS,CAAC,aAAa,CACrB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,GACtB,iBAAiB;IAuDpB;;;OAGG;IACU,qBAAqB,CAChC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IA2MpC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM;CAC7C"}
|
|
@@ -166,9 +166,19 @@ class GeminiBaseProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
166
166
|
}
|
|
167
167
|
// Get the first candidate's content
|
|
168
168
|
const candidate = apiResponse.candidates[0];
|
|
169
|
-
|
|
169
|
+
// Separate thinking parts from content parts
|
|
170
|
+
// When includeThoughts: true is set, Gemini returns:
|
|
171
|
+
// - Parts with thought: true → thinking/reasoning content
|
|
172
|
+
// - Parts without thought: true → actual response content
|
|
173
|
+
const thinkingParts = candidate.content.parts.filter(part => part.thought === true);
|
|
174
|
+
const contentParts = candidate.content.parts.filter(part => part.thought !== true);
|
|
175
|
+
const responseText = contentParts
|
|
170
176
|
.map(part => part.text)
|
|
171
177
|
.join('\n');
|
|
178
|
+
// Extract thinking text separately (undefined if no thinking parts)
|
|
179
|
+
const thinkingText = thinkingParts.length > 0
|
|
180
|
+
? thinkingParts.map(part => part.text).join('\n')
|
|
181
|
+
: undefined;
|
|
172
182
|
// Normalize token usage to provider-agnostic format
|
|
173
183
|
const tokenUsage = apiResponse.usageMetadata
|
|
174
184
|
? {
|
|
@@ -183,7 +193,9 @@ class GeminiBaseProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
183
193
|
: undefined;
|
|
184
194
|
return {
|
|
185
195
|
message: {
|
|
186
|
-
content: responseText
|
|
196
|
+
content: responseText,
|
|
197
|
+
// Only include thinking if present (when includeThoughts: true was set)
|
|
198
|
+
...(thinkingText !== undefined && { thinking: thinkingText })
|
|
187
199
|
},
|
|
188
200
|
sessionId,
|
|
189
201
|
metadata: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-base.provider.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/providers/gemini/gemini-base.provider.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AA6BH,wDAWC;AAKD,8EAaC;AAYD,gFAaC;AAjFD,kDAAkD;AAClD,+BAAoC;AACpC,0EAAgE;AAChE,4DAAuD;AASvD,iEAAwE;AACxE,gEAAkE;AASlE;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,KAAa;IAClD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACxE,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,+CAA+C;IAC/C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,iCAAiC,CAAC,MAAuB;IACvE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,CAAE,kDAAkD;QACvE,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB;YACE,OAAO,QAAQ,CAAC,CAAE,eAAe;IACrC,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,kCAAkC,CAAC,MAAuB;IACxE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,CAAE,mBAAmB;QAChC,KAAK,KAAK;YACR,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;QACd,KAAK,MAAM;YACT,OAAO,KAAK,CAAC;QACf;YACE,OAAO,CAAC,CAAC,CAAC,CAAE,6BAA6B;IAC7C,CAAC;AACH,CAAC;AAUD;;;;;GAKG;AACH,MAAsB,kBAAmB,SAAQ,mCAAe;IAG9D,YAAY,YAAyB;QACnC,KAAK,CAAC,YAAY,CAAC,CAAC;QACpB,IAAI,CAAC,cAAc,GAAG,wCAAqB,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC;IAuBD;;OAEG;IACO,qBAAqB,CAC7B,OAA8B,EAC9B,KAAa;QAEb,MAAM,EACJ,WAAW,GAAG,GAAG,EACjB,SAAS,EACT,eAAe,GAAG,SAAS,IAAI,IAAI,EACnC,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,cAAc,GAAG,CAAC,EAClB,eAAe,EACf,gBAAgB,EACjB,GAAG,OAAO,CAAC;QAEZ,MAAM,MAAM,GAA2B;YACrC,WAAW;YACX,eAAe;YACf,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;YACnC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;YACnC,GAAG,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,CAAC;YACvC,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,cAAc,EAAE,CAAC;SACxD,CAAC;QAEF,uDAAuD;QACvD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,gBAAgB,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAErE,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;gBACvB,gCAAgC;gBAChC,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;oBAC/B,MAAM,CAAC,cAAc,GAAG;wBACtB,aAAa,EAAE,SAAS,CAAE,6CAA6C;qBACxE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,cAAc,GAAG;wBACtB,aAAa,EAAE,iCAAiC,CAAC,eAAe,CAAC;wBACjE,eAAe,EAAE,IAAI;qBACtB,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;gBAChC,iCAAiC;gBACjC,iFAAiF;gBACjF,oFAAoF;gBACpF,wEAAwE;gBACxE,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;oBAC/B,MAAM,CAAC,cAAc,GAAG;wBACtB,cAAc,EAAE,CAAC;wBACjB,wEAAwE;qBACzE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,cAAc,GAAG;wBACtB,cAAc,EAAE,kCAAkC,CAAC,eAAe,CAAC;wBACnE,eAAe,EAAE,IAAI;qBACtB,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,gEAAgE;QAClE,CAAC;QACD,iEAAiE;QACjE,yEAAyE;QAEzE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACO,mBAAmB,CAC3B,UAAkB,EAClB,aAAqB,EACrB,gBAAwC;QAExC,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;iBAC9B;aACF;YACD,gBAAgB;YAChB,iBAAiB,EAAE;gBACjB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;aACjC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,aAAa,CACrB,WAA8B,EAC9B,SAAiB,EACjB,KAAa,EACb,eAAuB;QAEvB,8BAA8B;QAC9B,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,oCAAoC;QACpC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"gemini-base.provider.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/providers/gemini/gemini-base.provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ollama-provider.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/ollama-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAe,iBAAiB,EAAc,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ollama-provider.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/ollama-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAe,iBAAiB,EAAc,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAK7E;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,eAAe;IACjD,OAAO,CAAC,cAAc,CAAwB;;IAO9C;;;;;;OAMG;IACU,qBAAqB,CAChC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAybpC;;OAEG;YACW,wBAAwB;IA2CtC;;OAEG;IACU,8BAA8B,CACzC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAIjC;;OAEG;IACU,aAAa,CACxB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAGlC;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC;AAGnD,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,CAAC;AAC3C,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,CAAC"}
|
|
@@ -11,6 +11,7 @@ const base_llm_provider_1 = require("./base-llm-provider");
|
|
|
11
11
|
const types_1 = require("../types");
|
|
12
12
|
const debug_llm_utils_1 = require("../utils/debug-llm.utils");
|
|
13
13
|
const data_flow_logger_1 = require("../../data-flow-logger");
|
|
14
|
+
const thinking_1 = require("../thinking");
|
|
14
15
|
/**
|
|
15
16
|
* Ollama provider implementation with advanced features:
|
|
16
17
|
* - Comprehensive debugging and logging
|
|
@@ -165,10 +166,15 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
165
166
|
debugInfo.responseTimestamp = new Date();
|
|
166
167
|
debugInfo.response = aiResponse.message.content;
|
|
167
168
|
debugInfo.rawResponseData = aiResponse;
|
|
168
|
-
//
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
169
|
+
// Extract thinking using model-specific extractor (Strategy Pattern)
|
|
170
|
+
// DeepSeek R1 and similar models use <think> tags in their responses
|
|
171
|
+
const extractor = thinking_1.ThinkingExtractorFactory.forModel(model);
|
|
172
|
+
const { content: cleanContent, thinking } = extractor.extract(aiResponse.message.content);
|
|
173
|
+
// Update message with separated content and thinking
|
|
174
|
+
aiResponse.message.content = cleanContent;
|
|
175
|
+
if (thinking) {
|
|
176
|
+
aiResponse.message.thinking = thinking;
|
|
177
|
+
debugInfo.thinking = thinking;
|
|
172
178
|
}
|
|
173
179
|
// Log response (including markdown saving)
|
|
174
180
|
await debug_llm_utils_1.LLMDebugger.logResponse(debugInfo);
|
|
@@ -230,17 +236,23 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
230
236
|
const aiResponse = retryResponse.data;
|
|
231
237
|
// Add session ID for internal tracking anyway
|
|
232
238
|
aiResponse.sessionId = sessionId;
|
|
239
|
+
// Extract thinking using model-specific extractor
|
|
240
|
+
const retryExtractor = thinking_1.ThinkingExtractorFactory.forModel(model);
|
|
241
|
+
const { content: retryCleanContent, thinking: retryThinking } = retryExtractor.extract(aiResponse.message.content);
|
|
242
|
+
aiResponse.message.content = retryCleanContent;
|
|
243
|
+
if (retryThinking) {
|
|
244
|
+
aiResponse.message.thinking = retryThinking;
|
|
245
|
+
}
|
|
233
246
|
debugInfo.responseTimestamp = new Date();
|
|
234
|
-
debugInfo.response =
|
|
247
|
+
debugInfo.response = retryCleanContent;
|
|
235
248
|
debugInfo.rawResponseData = aiResponse;
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
debugInfo.thinking = thinkMatch[1].trim();
|
|
249
|
+
if (retryThinking) {
|
|
250
|
+
debugInfo.thinking = retryThinking;
|
|
239
251
|
}
|
|
240
252
|
await debug_llm_utils_1.LLMDebugger.logResponse(debugInfo);
|
|
241
253
|
// Log successful retry to data flow logger
|
|
242
254
|
this.dataFlowLogger.logLLMResponse(debugContext || 'ollama-direct', {
|
|
243
|
-
rawResponse:
|
|
255
|
+
rawResponse: retryCleanContent,
|
|
244
256
|
processingTime: Date.now() - requestStartTime
|
|
245
257
|
}, contextForLogger, requestId);
|
|
246
258
|
return aiResponse;
|
|
@@ -278,7 +290,7 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
278
290
|
timeout: 180000
|
|
279
291
|
});
|
|
280
292
|
if (retryRaw && retryRaw.status === 200) {
|
|
281
|
-
return this.handleSuccessfulResponse(retryRaw.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId);
|
|
293
|
+
return this.handleSuccessfulResponse(retryRaw.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId, model);
|
|
282
294
|
}
|
|
283
295
|
}
|
|
284
296
|
catch (retryRawErr) {
|
|
@@ -300,7 +312,7 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
300
312
|
timeout: 180000
|
|
301
313
|
});
|
|
302
314
|
if (retryApiKey && retryApiKey.status === 200) {
|
|
303
|
-
return this.handleSuccessfulResponse(retryApiKey.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId);
|
|
315
|
+
return this.handleSuccessfulResponse(retryApiKey.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId, model);
|
|
304
316
|
}
|
|
305
317
|
}
|
|
306
318
|
catch (retryKeyErr) {
|
|
@@ -318,7 +330,7 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
318
330
|
timeout: 180000
|
|
319
331
|
});
|
|
320
332
|
if (retryAuthless && retryAuthless.status === 200) {
|
|
321
|
-
return this.handleSuccessfulResponse(retryAuthless.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId);
|
|
333
|
+
return this.handleSuccessfulResponse(retryAuthless.data, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId, model);
|
|
322
334
|
}
|
|
323
335
|
}
|
|
324
336
|
catch (retryAuthlessError) {
|
|
@@ -372,18 +384,24 @@ class OllamaProvider extends base_llm_provider_1.BaseLLMProvider {
|
|
|
372
384
|
/**
|
|
373
385
|
* Helper method to handle successful responses consistently
|
|
374
386
|
*/
|
|
375
|
-
async handleSuccessfulResponse(aiResponse, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId) {
|
|
387
|
+
async handleSuccessfulResponse(aiResponse, debugInfo, sessionId, requestStartTime, debugContext, contextForLogger, requestId, model) {
|
|
376
388
|
aiResponse.sessionId = sessionId;
|
|
389
|
+
// Extract thinking using model-specific extractor
|
|
390
|
+
const extractor = thinking_1.ThinkingExtractorFactory.forModel(model);
|
|
391
|
+
const { content: cleanContent, thinking } = extractor.extract(aiResponse.message.content);
|
|
392
|
+
aiResponse.message.content = cleanContent;
|
|
393
|
+
if (thinking) {
|
|
394
|
+
aiResponse.message.thinking = thinking;
|
|
395
|
+
}
|
|
377
396
|
debugInfo.responseTimestamp = new Date();
|
|
378
|
-
debugInfo.response =
|
|
397
|
+
debugInfo.response = cleanContent;
|
|
379
398
|
debugInfo.rawResponseData = aiResponse;
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
debugInfo.thinking = thinkMatch[1].trim();
|
|
399
|
+
if (thinking) {
|
|
400
|
+
debugInfo.thinking = thinking;
|
|
383
401
|
}
|
|
384
402
|
await debug_llm_utils_1.LLMDebugger.logResponse(debugInfo);
|
|
385
403
|
this.dataFlowLogger.logLLMResponse(debugContext || 'ollama-direct', {
|
|
386
|
-
rawResponse:
|
|
404
|
+
rawResponse: cleanContent,
|
|
387
405
|
processingTime: Date.now() - requestStartTime
|
|
388
406
|
}, contextForLogger, requestId);
|
|
389
407
|
return aiResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ollama-provider.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/ollama-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ollama-provider.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/providers/ollama-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThinkTagExtractor = exports.NoOpThinkingExtractor = void 0;
|
|
4
|
+
var noop_extractor_1 = require("./noop.extractor");
|
|
5
|
+
Object.defineProperty(exports, "NoOpThinkingExtractor", { enumerable: true, get: function () { return noop_extractor_1.NoOpThinkingExtractor; } });
|
|
6
|
+
var think_tag_extractor_1 = require("./think-tag.extractor");
|
|
7
|
+
Object.defineProperty(exports, "ThinkTagExtractor", { enumerable: true, get: function () { return think_tag_extractor_1.ThinkTagExtractor; } });
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyD;AAAhD,uHAAA,qBAAqB,OAAA;AAC9B,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ThinkingExtractor, ThinkingExtractionResult } from '../thinking-extractor.interface';
|
|
2
|
+
/**
|
|
3
|
+
* No-operation thinking extractor.
|
|
4
|
+
* Returns content unchanged, with no thinking extracted.
|
|
5
|
+
* Used for models that don't use thinking tags in their responses
|
|
6
|
+
* or where thinking is already handled natively by the provider (e.g., Gemini, Anthropic).
|
|
7
|
+
*
|
|
8
|
+
* @since 2.18.0
|
|
9
|
+
*/
|
|
10
|
+
export declare class NoOpThinkingExtractor implements ThinkingExtractor {
|
|
11
|
+
readonly name = "noop";
|
|
12
|
+
/**
|
|
13
|
+
* Returns content unchanged.
|
|
14
|
+
* @param content - Raw content from LLM response
|
|
15
|
+
* @returns Original content with no thinking extracted
|
|
16
|
+
*/
|
|
17
|
+
extract(content: string): ThinkingExtractionResult;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=noop.extractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop.extractor.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/noop.extractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE9F;;;;;;;GAOG;AACH,qBAAa,qBAAsB,YAAW,iBAAiB;IAC7D,QAAQ,CAAC,IAAI,UAAU;IAEvB;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB;CAGnD"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NoOpThinkingExtractor = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* No-operation thinking extractor.
|
|
6
|
+
* Returns content unchanged, with no thinking extracted.
|
|
7
|
+
* Used for models that don't use thinking tags in their responses
|
|
8
|
+
* or where thinking is already handled natively by the provider (e.g., Gemini, Anthropic).
|
|
9
|
+
*
|
|
10
|
+
* @since 2.18.0
|
|
11
|
+
*/
|
|
12
|
+
class NoOpThinkingExtractor {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.name = 'noop';
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Returns content unchanged.
|
|
18
|
+
* @param content - Raw content from LLM response
|
|
19
|
+
* @returns Original content with no thinking extracted
|
|
20
|
+
*/
|
|
21
|
+
extract(content) {
|
|
22
|
+
return { content };
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.NoOpThinkingExtractor = NoOpThinkingExtractor;
|
|
26
|
+
//# sourceMappingURL=noop.extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop.extractor.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/noop.extractor.ts"],"names":[],"mappings":";;;AAEA;;;;;;;GAOG;AACH,MAAa,qBAAqB;IAAlC;QACW,SAAI,GAAG,MAAM,CAAC;IAUzB,CAAC;IARC;;;;OAIG;IACH,OAAO,CAAC,OAAe;QACrB,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;CACF;AAXD,sDAWC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ThinkingExtractor, ThinkingExtractionResult } from '../thinking-extractor.interface';
|
|
2
|
+
/**
|
|
3
|
+
* Thinking extractor for models that use XML-style tags in their responses.
|
|
4
|
+
* Supports multiple tag formats:
|
|
5
|
+
* - <think>...</think> (DeepSeek R1, commonly used)
|
|
6
|
+
* - <thinking>...</thinking> (alternative format)
|
|
7
|
+
* - <reasoning>...</reasoning> (alternative format)
|
|
8
|
+
*
|
|
9
|
+
* All tags are case-insensitive and support multiline content.
|
|
10
|
+
*
|
|
11
|
+
* @since 2.18.0
|
|
12
|
+
*/
|
|
13
|
+
export declare class ThinkTagExtractor implements ThinkingExtractor {
|
|
14
|
+
readonly name = "think-tags";
|
|
15
|
+
/**
|
|
16
|
+
* Regex patterns for supported thinking tags.
|
|
17
|
+
* Order matters: more specific patterns should come first.
|
|
18
|
+
*/
|
|
19
|
+
private readonly patterns;
|
|
20
|
+
/**
|
|
21
|
+
* Extract thinking from content using tag patterns.
|
|
22
|
+
* @param content - Raw content from LLM response
|
|
23
|
+
* @returns Content with thinking tags removed and thinking text extracted
|
|
24
|
+
*/
|
|
25
|
+
extract(content: string): ThinkingExtractionResult;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=think-tag.extractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"think-tag.extractor.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/think-tag.extractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE9F;;;;;;;;;;GAUG;AACH,qBAAa,iBAAkB,YAAW,iBAAiB;IACzD,QAAQ,CAAC,IAAI,gBAAgB;IAE7B;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAIvB;IAEF;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB;CAkCnD"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThinkTagExtractor = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Thinking extractor for models that use XML-style tags in their responses.
|
|
6
|
+
* Supports multiple tag formats:
|
|
7
|
+
* - <think>...</think> (DeepSeek R1, commonly used)
|
|
8
|
+
* - <thinking>...</thinking> (alternative format)
|
|
9
|
+
* - <reasoning>...</reasoning> (alternative format)
|
|
10
|
+
*
|
|
11
|
+
* All tags are case-insensitive and support multiline content.
|
|
12
|
+
*
|
|
13
|
+
* @since 2.18.0
|
|
14
|
+
*/
|
|
15
|
+
class ThinkTagExtractor {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.name = 'think-tags';
|
|
18
|
+
/**
|
|
19
|
+
* Regex patterns for supported thinking tags.
|
|
20
|
+
* Order matters: more specific patterns should come first.
|
|
21
|
+
*/
|
|
22
|
+
this.patterns = [
|
|
23
|
+
/<thinking>([\s\S]*?)<\/thinking>/gi,
|
|
24
|
+
/<reasoning>([\s\S]*?)<\/reasoning>/gi,
|
|
25
|
+
/<think>([\s\S]*?)<\/think>/gi,
|
|
26
|
+
];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Extract thinking from content using tag patterns.
|
|
30
|
+
* @param content - Raw content from LLM response
|
|
31
|
+
* @returns Content with thinking tags removed and thinking text extracted
|
|
32
|
+
*/
|
|
33
|
+
extract(content) {
|
|
34
|
+
let thinkingParts = [];
|
|
35
|
+
let cleanContent = content;
|
|
36
|
+
// Process each pattern
|
|
37
|
+
for (const pattern of this.patterns) {
|
|
38
|
+
// Reset lastIndex for global patterns
|
|
39
|
+
pattern.lastIndex = 0;
|
|
40
|
+
// Find all matches for this pattern
|
|
41
|
+
let match;
|
|
42
|
+
while ((match = pattern.exec(content)) !== null) {
|
|
43
|
+
const extractedThinking = match[1]?.trim();
|
|
44
|
+
if (extractedThinking) {
|
|
45
|
+
thinkingParts.push(extractedThinking);
|
|
46
|
+
}
|
|
47
|
+
// Remove the matched tag from clean content
|
|
48
|
+
cleanContent = cleanContent.replace(match[0], '');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// Clean up whitespace in content
|
|
52
|
+
cleanContent = cleanContent.trim();
|
|
53
|
+
// Join all thinking parts with double newlines
|
|
54
|
+
const thinking = thinkingParts.length > 0
|
|
55
|
+
? thinkingParts.join('\n\n')
|
|
56
|
+
: undefined;
|
|
57
|
+
return {
|
|
58
|
+
content: cleanContent,
|
|
59
|
+
thinking
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.ThinkTagExtractor = ThinkTagExtractor;
|
|
64
|
+
//# sourceMappingURL=think-tag.extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"think-tag.extractor.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/llm/thinking/extractors/think-tag.extractor.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;GAUG;AACH,MAAa,iBAAiB;IAA9B;QACW,SAAI,GAAG,YAAY,CAAC;QAE7B;;;WAGG;QACc,aAAQ,GAAa;YACpC,oCAAoC;YACpC,sCAAsC;YACtC,8BAA8B;SAC/B,CAAC;IAyCJ,CAAC;IAvCC;;;;OAIG;IACH,OAAO,CAAC,OAAe;QACrB,IAAI,aAAa,GAAa,EAAE,CAAC;QACjC,IAAI,YAAY,GAAG,OAAO,CAAC;QAE3B,uBAAuB;QACvB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,sCAAsC;YACtC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;YAEtB,oCAAoC;YACpC,IAAI,KAA6B,CAAC;YAClC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAChD,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBAC3C,IAAI,iBAAiB,EAAE,CAAC;oBACtB,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACxC,CAAC;gBACD,4CAA4C;gBAC5C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,YAAY,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;QAEnC,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;YACvC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,QAAQ;SACT,CAAC;IACJ,CAAC;CACF;AApDD,8CAoDC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { ThinkingExtractor, ThinkingExtractionResult } from './thinking-extractor.interface';
|
|
2
|
+
export { ThinkingExtractorFactory } from './thinking-extractor.factory';
|
|
3
|
+
export { NoOpThinkingExtractor, ThinkTagExtractor } from './extractors';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAG7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAGxE,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThinkTagExtractor = exports.NoOpThinkingExtractor = exports.ThinkingExtractorFactory = void 0;
|
|
4
|
+
// Factory
|
|
5
|
+
var thinking_extractor_factory_1 = require("./thinking-extractor.factory");
|
|
6
|
+
Object.defineProperty(exports, "ThinkingExtractorFactory", { enumerable: true, get: function () { return thinking_extractor_factory_1.ThinkingExtractorFactory; } });
|
|
7
|
+
// Extractors (exported for direct use if needed)
|
|
8
|
+
var extractors_1 = require("./extractors");
|
|
9
|
+
Object.defineProperty(exports, "NoOpThinkingExtractor", { enumerable: true, get: function () { return extractors_1.NoOpThinkingExtractor; } });
|
|
10
|
+
Object.defineProperty(exports, "ThinkTagExtractor", { enumerable: true, get: function () { return extractors_1.ThinkTagExtractor; } });
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/index.ts"],"names":[],"mappings":";;;AAGA,UAAU;AACV,2EAAwE;AAA/D,sIAAA,wBAAwB,OAAA;AAEjC,iDAAiD;AACjD,2CAAwE;AAA/D,mHAAA,qBAAqB,OAAA;AAAE,+GAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ThinkingExtractor } from './thinking-extractor.interface';
|
|
2
|
+
/**
|
|
3
|
+
* Factory for creating and managing ThinkingExtractor instances.
|
|
4
|
+
* Provides model-based heuristics and a registry for custom extractors.
|
|
5
|
+
*
|
|
6
|
+
* Built-in extractors:
|
|
7
|
+
* - 'noop': NoOpThinkingExtractor - returns content unchanged
|
|
8
|
+
* - 'think-tags': ThinkTagExtractor - extracts <think>, <thinking>, <reasoning> tags
|
|
9
|
+
*
|
|
10
|
+
* Model heuristics:
|
|
11
|
+
* - DeepSeek models (deepseek-*, *-r1): ThinkTagExtractor
|
|
12
|
+
* - QwQ models: ThinkTagExtractor
|
|
13
|
+
* - Others: NoOpThinkingExtractor (provider handles thinking natively)
|
|
14
|
+
*
|
|
15
|
+
* @since 2.18.0
|
|
16
|
+
*/
|
|
17
|
+
export declare class ThinkingExtractorFactory {
|
|
18
|
+
/** Registry of named extractors */
|
|
19
|
+
private static extractors;
|
|
20
|
+
/** Singleton instances for built-in extractors */
|
|
21
|
+
private static noopInstance;
|
|
22
|
+
private static thinkTagInstance;
|
|
23
|
+
/**
|
|
24
|
+
* Register a custom extractor.
|
|
25
|
+
* @param name - Unique name for the extractor
|
|
26
|
+
* @param extractor - The extractor instance
|
|
27
|
+
*/
|
|
28
|
+
static register(name: string, extractor: ThinkingExtractor): void;
|
|
29
|
+
/**
|
|
30
|
+
* Get an extractor by name.
|
|
31
|
+
* @param name - The registered name of the extractor
|
|
32
|
+
* @returns The extractor instance, or NoOpThinkingExtractor if not found
|
|
33
|
+
*/
|
|
34
|
+
static get(name: string): ThinkingExtractor;
|
|
35
|
+
/**
|
|
36
|
+
* Get the appropriate extractor for a specific model.
|
|
37
|
+
* Uses heuristics based on model name to determine which extractor to use.
|
|
38
|
+
*
|
|
39
|
+
* @param model - The model name (e.g., 'deepseek-r1:14b', 'qwq:32b')
|
|
40
|
+
* @returns The appropriate ThinkingExtractor for the model
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* // DeepSeek R1 uses <think> tags
|
|
45
|
+
* const extractor = ThinkingExtractorFactory.forModel('deepseek-r1:14b');
|
|
46
|
+
* // Returns ThinkTagExtractor
|
|
47
|
+
*
|
|
48
|
+
* // Standard models don't use thinking tags
|
|
49
|
+
* const extractor = ThinkingExtractorFactory.forModel('llama3:8b');
|
|
50
|
+
* // Returns NoOpThinkingExtractor
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
static forModel(model: string): ThinkingExtractor;
|
|
54
|
+
/**
|
|
55
|
+
* Check if a model is known to use thinking tags.
|
|
56
|
+
* @param model - The model name
|
|
57
|
+
* @returns true if the model uses thinking tags in its responses
|
|
58
|
+
*/
|
|
59
|
+
static usesThinkingTags(model: string): boolean;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=thinking-extractor.factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thinking-extractor.factory.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/thinking-extractor.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGnE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,wBAAwB;IACnC,mCAAmC;IACnC,OAAO,CAAC,MAAM,CAAC,UAAU,CAA6C;IAEtE,kDAAkD;IAClD,OAAO,CAAC,MAAM,CAAC,YAAY,CAAwB;IACnD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAoB;IAanD;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAIjE;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;IAI3C;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAiBjD;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAIhD"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ThinkingExtractorFactory = void 0;
|
|
5
|
+
const extractors_1 = require("./extractors");
|
|
6
|
+
/**
|
|
7
|
+
* Factory for creating and managing ThinkingExtractor instances.
|
|
8
|
+
* Provides model-based heuristics and a registry for custom extractors.
|
|
9
|
+
*
|
|
10
|
+
* Built-in extractors:
|
|
11
|
+
* - 'noop': NoOpThinkingExtractor - returns content unchanged
|
|
12
|
+
* - 'think-tags': ThinkTagExtractor - extracts <think>, <thinking>, <reasoning> tags
|
|
13
|
+
*
|
|
14
|
+
* Model heuristics:
|
|
15
|
+
* - DeepSeek models (deepseek-*, *-r1): ThinkTagExtractor
|
|
16
|
+
* - QwQ models: ThinkTagExtractor
|
|
17
|
+
* - Others: NoOpThinkingExtractor (provider handles thinking natively)
|
|
18
|
+
*
|
|
19
|
+
* @since 2.18.0
|
|
20
|
+
*/
|
|
21
|
+
class ThinkingExtractorFactory {
|
|
22
|
+
/**
|
|
23
|
+
* Register a custom extractor.
|
|
24
|
+
* @param name - Unique name for the extractor
|
|
25
|
+
* @param extractor - The extractor instance
|
|
26
|
+
*/
|
|
27
|
+
static register(name, extractor) {
|
|
28
|
+
this.extractors.set(name, extractor);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Get an extractor by name.
|
|
32
|
+
* @param name - The registered name of the extractor
|
|
33
|
+
* @returns The extractor instance, or NoOpThinkingExtractor if not found
|
|
34
|
+
*/
|
|
35
|
+
static get(name) {
|
|
36
|
+
return this.extractors.get(name) || this.noopInstance;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the appropriate extractor for a specific model.
|
|
40
|
+
* Uses heuristics based on model name to determine which extractor to use.
|
|
41
|
+
*
|
|
42
|
+
* @param model - The model name (e.g., 'deepseek-r1:14b', 'qwq:32b')
|
|
43
|
+
* @returns The appropriate ThinkingExtractor for the model
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* // DeepSeek R1 uses <think> tags
|
|
48
|
+
* const extractor = ThinkingExtractorFactory.forModel('deepseek-r1:14b');
|
|
49
|
+
* // Returns ThinkTagExtractor
|
|
50
|
+
*
|
|
51
|
+
* // Standard models don't use thinking tags
|
|
52
|
+
* const extractor = ThinkingExtractorFactory.forModel('llama3:8b');
|
|
53
|
+
* // Returns NoOpThinkingExtractor
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
static forModel(model) {
|
|
57
|
+
const lowerModel = model.toLowerCase();
|
|
58
|
+
// Models known to use <think> tags
|
|
59
|
+
if (lowerModel.includes('deepseek') ||
|
|
60
|
+
lowerModel.includes('-r1') ||
|
|
61
|
+
lowerModel.includes('qwq')) {
|
|
62
|
+
return this.thinkTagInstance;
|
|
63
|
+
}
|
|
64
|
+
// Default: no extraction
|
|
65
|
+
// For Gemini/Anthropic, thinking is handled natively in the provider
|
|
66
|
+
return this.noopInstance;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Check if a model is known to use thinking tags.
|
|
70
|
+
* @param model - The model name
|
|
71
|
+
* @returns true if the model uses thinking tags in its responses
|
|
72
|
+
*/
|
|
73
|
+
static usesThinkingTags(model) {
|
|
74
|
+
const extractor = this.forModel(model);
|
|
75
|
+
return extractor.name === 'think-tags';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.ThinkingExtractorFactory = ThinkingExtractorFactory;
|
|
79
|
+
_a = ThinkingExtractorFactory;
|
|
80
|
+
/** Registry of named extractors */
|
|
81
|
+
ThinkingExtractorFactory.extractors = new Map();
|
|
82
|
+
// Static initialization block
|
|
83
|
+
(() => {
|
|
84
|
+
// Create singleton instances
|
|
85
|
+
_a.noopInstance = new extractors_1.NoOpThinkingExtractor();
|
|
86
|
+
_a.thinkTagInstance = new extractors_1.ThinkTagExtractor();
|
|
87
|
+
// Register built-in extractors
|
|
88
|
+
_a.register('noop', _a.noopInstance);
|
|
89
|
+
_a.register('think-tags', _a.thinkTagInstance);
|
|
90
|
+
})();
|
|
91
|
+
//# sourceMappingURL=thinking-extractor.factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thinking-extractor.factory.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/thinking-extractor.factory.ts"],"names":[],"mappings":";;;;AACA,6CAAwE;AAExE;;;;;;;;;;;;;;GAcG;AACH,MAAa,wBAAwB;IAmBnC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,SAA4B;QACxD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,GAAG,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAa;QAC3B,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEvC,mCAAmC;QACnC,IACE,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC/B,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC1B,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC1B,CAAC;YACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;QAED,yBAAyB;QACzB,qEAAqE;QACrE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAa;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,SAAS,CAAC,IAAI,KAAK,YAAY,CAAC;IACzC,CAAC;;AAhFH,4DAiFC;;AAhFC,mCAAmC;AACpB,mCAAU,GAAmC,IAAI,GAAG,EAAE,AAA5C,CAA6C;AAMtE,8BAA8B;AAC9B;IACE,6BAA6B;IAC7B,GAAK,YAAY,GAAG,IAAI,kCAAqB,EAAE,CAAC;IAChD,GAAK,gBAAgB,GAAG,IAAI,8BAAiB,EAAE,CAAC;IAEhD,+BAA+B;IAC/B,GAAK,QAAQ,CAAC,MAAM,EAAE,GAAK,YAAY,CAAC,CAAC;IACzC,GAAK,QAAQ,CAAC,YAAY,EAAE,GAAK,gBAAgB,CAAC,CAAC;AACrD,CAAC,GAAA,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Result of thinking extraction from LLM response content.
|
|
3
|
+
*/
|
|
4
|
+
export interface ThinkingExtractionResult {
|
|
5
|
+
/** Content with thinking removed */
|
|
6
|
+
content: string;
|
|
7
|
+
/** Extracted thinking text (undefined if none found) */
|
|
8
|
+
thinking?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Strategy interface for extracting thinking/reasoning from LLM responses.
|
|
12
|
+
* Different models use different mechanisms to expose their reasoning:
|
|
13
|
+
* - DeepSeek R1: <think> tags in content
|
|
14
|
+
* - Some models: <thinking> or <reasoning> tags
|
|
15
|
+
* - Gemini: thought:true parts in API response (handled natively in provider)
|
|
16
|
+
* - Anthropic: Extended Thinking API (handled natively in provider)
|
|
17
|
+
*
|
|
18
|
+
* @since 2.18.0
|
|
19
|
+
*/
|
|
20
|
+
export interface ThinkingExtractor {
|
|
21
|
+
/**
|
|
22
|
+
* Extract thinking from content.
|
|
23
|
+
* @param content - Raw content from LLM response
|
|
24
|
+
* @returns Content with thinking separated
|
|
25
|
+
*/
|
|
26
|
+
extract(content: string): ThinkingExtractionResult;
|
|
27
|
+
/**
|
|
28
|
+
* Human-readable name for logging/debugging.
|
|
29
|
+
*/
|
|
30
|
+
readonly name: string;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=thinking-extractor.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thinking-extractor.interface.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/thinking-extractor.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB,CAAC;IAEnD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thinking-extractor.interface.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/thinking/thinking-extractor.interface.ts"],"names":[],"mappings":""}
|
|
@@ -79,6 +79,8 @@ export interface TokenUsage {
|
|
|
79
79
|
export interface CommonLLMResponse {
|
|
80
80
|
message: {
|
|
81
81
|
content: string;
|
|
82
|
+
/** Optional thinking/reasoning text from models that support it (e.g., Gemini with includeThoughts: true) */
|
|
83
|
+
thinking?: string;
|
|
82
84
|
};
|
|
83
85
|
sessionId?: string;
|
|
84
86
|
metadata?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/common.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,2FAA2F;IAC3F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,aAAa,CAAC,EAAE;QACd,kCAAkC;QAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,6BAA6B;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/common.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/common.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;
|
|
1
|
+
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/common.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAiHH;;GAEG;AACH,IAAY,WAQX;AARD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;IACjB,sCAAuB,CAAA;IACvB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,kEAAkE;IAClE,sCAAuB,CAAA;AACzB,CAAC,EARW,WAAW,2BAAX,WAAW,QAQtB"}
|
|
@@ -55,9 +55,16 @@ export interface GeminiRequestOptions extends CommonLLMOptions {
|
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* Gemini content part (text or other types)
|
|
58
|
+
* When includeThoughts: true is set in thinkingConfig, parts may include:
|
|
59
|
+
* - thought: true - Marks this part as thinking/reasoning content (should be filtered from main content)
|
|
60
|
+
* - thoughtSignature - Present on the actual content part (non-thinking)
|
|
58
61
|
*/
|
|
59
62
|
export interface GeminiPart {
|
|
60
63
|
text: string;
|
|
64
|
+
/** If true, this part contains thinking/reasoning content (not the actual response) */
|
|
65
|
+
thought?: boolean;
|
|
66
|
+
/** Signature present on content parts when thinking is enabled (indicates non-thinking content) */
|
|
67
|
+
thoughtSignature?: string;
|
|
61
68
|
}
|
|
62
69
|
/**
|
|
63
70
|
* Gemini message content
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/gemini.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAmB,MAAM,gBAAgB,CAAC;AAEtF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvG;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAG5D,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB,kEAAkE;IAClE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED
|
|
1
|
+
{"version":3,"file":"gemini.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/llm/types/gemini.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-ai.usecase.d.ts","sourceRoot":"","sources":["../../../../src/middleware/usecases/base/base-ai.usecase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAkB,cAAc,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAEpF,OAAO,EAAgC,uBAAuB,EAAE,MAAM,wEAAwE,CAAC;AAG/I;;;;;;GAMG;AACH,8BAAsB,aAAa,CACjC,OAAO,GAAG,MAAM,EAChB,QAAQ,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,EAChE,OAAO,SAAS,YAAY,GAAG,YAAY;IAE3C;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAElD;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAC,CAAW;IAEnC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM;IAItD;;;OAGG;IACH,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,EAAE,cAAc,CAAY;IAE9E;;;OAGG;IACH,SAAS,KAAK,cAAc,IAAI,cAAc,CAE7C;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,cAAc,GAAG,uBAAuB;IAI9E;;;OAGG;IACH,SAAS,KAAK,WAAW,IAAI,uBAAuB,CAEnD;IAED;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM;IAShD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM;IAEzE;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,IAAI,uBAAuB;IAI1D;;;;OAIG;IACH,SAAS,CAAC,WAAW,IAAI,WAAW;IAIpC;;;;OAIG;IACU,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"base-ai.usecase.d.ts","sourceRoot":"","sources":["../../../../src/middleware/usecases/base/base-ai.usecase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAkB,cAAc,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAEpF,OAAO,EAAgC,uBAAuB,EAAE,MAAM,wEAAwE,CAAC;AAG/I;;;;;;GAMG;AACH,8BAAsB,aAAa,CACjC,OAAO,GAAG,MAAM,EAChB,QAAQ,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,EAChE,OAAO,SAAS,YAAY,GAAG,YAAY;IAE3C;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAElD;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAC,CAAW;IAEnC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM;IAItD;;;OAGG;IACH,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,EAAE,cAAc,CAAY;IAE9E;;;OAGG;IACH,SAAS,KAAK,cAAc,IAAI,cAAc,CAE7C;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,cAAc,GAAG,uBAAuB;IAI9E;;;OAGG;IACH,SAAS,KAAK,WAAW,IAAI,uBAAuB,CAEnD;IAED;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM;IAShD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM;IAEzE;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,IAAI,uBAAuB;IAI1D;;;;OAIG;IACH,SAAS,CAAC,WAAW,IAAI,WAAW;IAIpC;;;;OAIG;IACU,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IA+JzD;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAS,CAAC,4BAA4B,IAAI,yBAAyB;IAKnE;;;;;OAKG;cACa,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAKrG;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO;CACX"}
|
|
@@ -160,8 +160,12 @@ class BaseAIUseCase {
|
|
|
160
160
|
throw new Error('No response received from the LLM provider');
|
|
161
161
|
}
|
|
162
162
|
// Process the response using processResponse() method (uses getResponseProcessingOptions())
|
|
163
|
-
|
|
164
|
-
|
|
163
|
+
// Note: Since 2.18.0, providers extract thinking via ThinkingExtractor strategy pattern.
|
|
164
|
+
// ResponseProcessor extraction is kept as fallback for edge cases.
|
|
165
|
+
const { cleanedJson: processedContent, thinking: responseProcessorThinking } = await this.processResponse(result.message.content);
|
|
166
|
+
// Provider-level thinking takes priority over ResponseProcessor extraction
|
|
167
|
+
// (since 2.18.0: providers handle thinking extraction via ThinkingExtractor)
|
|
168
|
+
thinking = result.message.thinking || responseProcessorThinking;
|
|
165
169
|
success = true;
|
|
166
170
|
// Extract actual token counts from provider response if available
|
|
167
171
|
let actualTokens;
|
|
@@ -178,7 +182,7 @@ class BaseAIUseCase {
|
|
|
178
182
|
// Log completion with metrics
|
|
179
183
|
use_case_metrics_logger_1.UseCaseMetricsLoggerService.logCompletion(this.constructor.name, metrics);
|
|
180
184
|
// Create the business result from concrete implementation
|
|
181
|
-
const businessResult = this.createResult(processedContent, formattedUserMessage,
|
|
185
|
+
const businessResult = this.createResult(processedContent, formattedUserMessage, thinking);
|
|
182
186
|
// Attach usage metadata to result (library responsibility since 2.13.0)
|
|
183
187
|
// This ensures consistent token/cost data across all use cases
|
|
184
188
|
const finalResult = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-ai.usecase.js","sourceRoot":"","sources":["../../../../src/middleware/usecases/base/base-ai.usecase.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"base-ai.usecase.js","sourceRoot":"","sources":["../../../../src/middleware/usecases/base/base-ai.usecase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loonylabs/llm-middleware",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.18.0",
|
|
4
4
|
"description": "Complete middleware infrastructure for LLM-based backends with multi-provider support (Ollama, Anthropic, OpenAI, Google)",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|