@aituber-onair/chat 0.54.0 → 0.56.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.ja.md +54 -10
- package/README.md +56 -11
- package/dist/cjs/constants/claude.d.ts +2 -0
- package/dist/cjs/constants/claude.d.ts.map +1 -1
- package/dist/cjs/constants/claude.js +6 -1
- package/dist/cjs/constants/claude.js.map +1 -1
- package/dist/cjs/constants/deepseek.d.ts +1 -0
- package/dist/cjs/constants/deepseek.d.ts.map +1 -1
- package/dist/cjs/constants/deepseek.js +5 -2
- package/dist/cjs/constants/deepseek.js.map +1 -1
- package/dist/cjs/constants/openai.d.ts +10 -3
- package/dist/cjs/constants/openai.d.ts.map +1 -1
- package/dist/cjs/constants/openai.js +40 -7
- package/dist/cjs/constants/openai.js.map +1 -1
- package/dist/cjs/constants/openrouter.d.ts +11 -0
- package/dist/cjs/constants/openrouter.d.ts.map +1 -1
- package/dist/cjs/constants/openrouter.js +93 -3
- package/dist/cjs/constants/openrouter.js.map +1 -1
- package/dist/cjs/constants/xai.d.ts +1 -0
- package/dist/cjs/constants/xai.d.ts.map +1 -1
- package/dist/cjs/constants/xai.js +7 -2
- package/dist/cjs/constants/xai.js.map +1 -1
- package/dist/cjs/services/ChatService.d.ts +2 -0
- package/dist/cjs/services/ChatService.d.ts.map +1 -1
- package/dist/cjs/services/ChatServiceFactory.d.ts.map +1 -1
- package/dist/cjs/services/ChatServiceFactory.js +23 -15
- package/dist/cjs/services/ChatServiceFactory.js.map +1 -1
- package/dist/cjs/services/providers/ChatServiceProvider.d.ts +2 -0
- package/dist/cjs/services/providers/ChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js +2 -0
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatService.d.ts +24 -3
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatService.js +211 -15
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatService.js.map +1 -1
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatServiceProvider.js +1 -0
- package/dist/cjs/services/providers/geminiNano/GeminiNanoChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatService.js +6 -2
- package/dist/cjs/services/providers/openai/OpenAIChatService.js.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js +17 -4
- package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.js +9 -3
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.js.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js +8 -2
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js +11 -0
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/xai/XAIChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/xai/XAIChatServiceProvider.js +1 -0
- package/dist/cjs/services/providers/xai/XAIChatServiceProvider.js.map +1 -1
- package/dist/esm/constants/claude.d.ts +2 -0
- package/dist/esm/constants/claude.d.ts.map +1 -1
- package/dist/esm/constants/claude.js +5 -0
- package/dist/esm/constants/claude.js.map +1 -1
- package/dist/esm/constants/deepseek.d.ts +1 -0
- package/dist/esm/constants/deepseek.d.ts.map +1 -1
- package/dist/esm/constants/deepseek.js +4 -1
- package/dist/esm/constants/deepseek.js.map +1 -1
- package/dist/esm/constants/openai.d.ts +10 -3
- package/dist/esm/constants/openai.d.ts.map +1 -1
- package/dist/esm/constants/openai.js +37 -6
- package/dist/esm/constants/openai.js.map +1 -1
- package/dist/esm/constants/openrouter.d.ts +11 -0
- package/dist/esm/constants/openrouter.d.ts.map +1 -1
- package/dist/esm/constants/openrouter.js +91 -1
- package/dist/esm/constants/openrouter.js.map +1 -1
- package/dist/esm/constants/xai.d.ts +1 -0
- package/dist/esm/constants/xai.d.ts.map +1 -1
- package/dist/esm/constants/xai.js +6 -1
- package/dist/esm/constants/xai.js.map +1 -1
- package/dist/esm/services/ChatService.d.ts +2 -0
- package/dist/esm/services/ChatService.d.ts.map +1 -1
- package/dist/esm/services/ChatServiceFactory.d.ts.map +1 -1
- package/dist/esm/services/ChatServiceFactory.js +23 -15
- package/dist/esm/services/ChatServiceFactory.js.map +1 -1
- package/dist/esm/services/providers/ChatServiceProvider.d.ts +2 -0
- package/dist/esm/services/providers/ChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js +3 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatService.d.ts +24 -3
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatService.js +211 -15
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatService.js.map +1 -1
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatServiceProvider.js +1 -0
- package/dist/esm/services/providers/geminiNano/GeminiNanoChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatService.js +7 -3
- package/dist/esm/services/providers/openai/OpenAIChatService.js.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js +18 -5
- package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.js +10 -4
- package/dist/esm/services/providers/openai/openaiRequestBuilder.js.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.js +9 -3
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js +12 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/xai/XAIChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/xai/XAIChatServiceProvider.js +2 -1
- package/dist/esm/services/providers/xai/XAIChatServiceProvider.js.map +1 -1
- package/dist/umd/aituber-onair-chat.js +457 -35
- package/dist/umd/aituber-onair-chat.min.js +8 -8
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xai.d.ts","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,yCACN,CAAC;AAGzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,6BAA6B,iCAAiC,CAAC;AAC5E,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAI/E,eAAO,MAAM,qBAAqB,UAGjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAG9E,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"xai.d.ts","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,yCACN,CAAC;AAGzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,6BAA6B,iCAAiC,CAAC;AAC5E,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAI/E,eAAO,MAAM,qBAAqB,UAGjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAG9E,eAAO,MAAM,2BAA2B,UAOvC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,MAAM,GACZ,SAAS,kBAAkB,EAAE,CAc/B;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CAUhC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,eAAe,CAAC,EAAE,kBAAkB,GACnC,kBAAkB,GAAG,SAAS,CAehC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export const ENDPOINT_XAI_CHAT_COMPLETIONS_API = 'https://api.x.ai/v1/chat/completions';
|
|
2
2
|
// xAI Grok models
|
|
3
3
|
export const MODEL_GROK_4_6 = 'grok-4.6';
|
|
4
|
+
export const MODEL_GROK_4_7 = 'grok-4.7';
|
|
4
5
|
export const MODEL_GROK_4_5 = 'grok-4.5';
|
|
5
6
|
export const MODEL_GROK_4_3 = 'grok-4.3';
|
|
6
7
|
export const MODEL_GROK_4_20_REASONING = 'grok-4.20-0309-reasoning';
|
|
@@ -16,6 +17,7 @@ export const XAI_DEPRECATED_MODELS = [
|
|
|
16
17
|
// Vision support for models
|
|
17
18
|
export const XAI_VISION_SUPPORTED_MODELS = [
|
|
18
19
|
MODEL_GROK_4_6,
|
|
20
|
+
MODEL_GROK_4_7,
|
|
19
21
|
MODEL_GROK_4_5,
|
|
20
22
|
MODEL_GROK_4_3,
|
|
21
23
|
MODEL_GROK_4_20_REASONING,
|
|
@@ -37,7 +39,7 @@ export function isXaiReasoningEffortModel(model) {
|
|
|
37
39
|
* Get documented reasoning_effort values for an xAI model
|
|
38
40
|
*/
|
|
39
41
|
export function getXaiSupportedReasoningEfforts(model) {
|
|
40
|
-
if (model === MODEL_GROK_4_6) {
|
|
42
|
+
if (model === MODEL_GROK_4_6 || model === MODEL_GROK_4_7) {
|
|
41
43
|
return ['low', 'medium', 'high', 'xhigh'];
|
|
42
44
|
}
|
|
43
45
|
if (model === MODEL_GROK_4_5) {
|
|
@@ -58,6 +60,9 @@ export function isXaiReasoningEffortNoneModel(model) {
|
|
|
58
60
|
* Get default reasoning effort for xAI models
|
|
59
61
|
*/
|
|
60
62
|
export function getDefaultXaiReasoningEffort(model) {
|
|
63
|
+
if (model === MODEL_GROK_4_7) {
|
|
64
|
+
return 'low';
|
|
65
|
+
}
|
|
61
66
|
if (model === MODEL_GROK_4_6 || model === MODEL_GROK_4_5) {
|
|
62
67
|
return 'low';
|
|
63
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xai.js","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iCAAiC,GAC5C,sCAAsC,CAAC;AAEzC,kBAAkB;AAClB,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AACpE,MAAM,CAAC,MAAM,6BAA6B,GAAG,8BAA8B,CAAC;AAC5E,MAAM,CAAC,MAAM,6BAA6B,GAAG,yBAAyB,CAAC;AACvE,MAAM,CAAC,MAAM,iCAAiC,GAAG,6BAA6B,CAAC;AAE/E,4EAA4E;AAC5E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,6BAA6B;IAC7B,iCAAiC;CAClC,CAAC;AAIF,4BAA4B;AAC5B,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,cAAc;IACd,cAAc;IACd,cAAc;IACd,yBAAyB;IACzB,6BAA6B;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,2BAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B,CAC7C,KAAa;IAEb,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"xai.js","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iCAAiC,GAC5C,sCAAsC,CAAC;AAEzC,kBAAkB;AAClB,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AACzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AACpE,MAAM,CAAC,MAAM,6BAA6B,GAAG,8BAA8B,CAAC;AAC5E,MAAM,CAAC,MAAM,6BAA6B,GAAG,yBAAyB,CAAC;AACvE,MAAM,CAAC,MAAM,iCAAiC,GAAG,6BAA6B,CAAC;AAE/E,4EAA4E;AAC5E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,6BAA6B;IAC7B,iCAAiC;CAClC,CAAC;AAIF,4BAA4B;AAC5B,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,cAAc;IACd,cAAc;IACd,cAAc;IACd,cAAc;IACd,yBAAyB;IACzB,6BAA6B;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,2BAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B,CAC7C,KAAa;IAEb,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QACzD,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAAa;IACzD,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAa;IAEb,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAa,EACb,eAAoC;IAEpC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,4BAA4B,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,SAAS,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,OAAO,eAAe,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC"}
|
|
@@ -7,6 +7,8 @@ import { ToolChatCompletion } from '../types/toolChat';
|
|
|
7
7
|
export interface ChatService {
|
|
8
8
|
/** Provider name for provider-specific orchestration decisions */
|
|
9
9
|
readonly provider: string;
|
|
10
|
+
/** Release provider-owned resources when supported. */
|
|
11
|
+
dispose?(): void;
|
|
10
12
|
/**
|
|
11
13
|
* Get the model name
|
|
12
14
|
* @returns Model name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatService.d.ts","sourceRoot":"","sources":["../../../src/services/ChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,WAAW,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAClB,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,kBAAkB,KAC5B,OAAO,CAAC,IAAI,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;OAKG;IACH,iBAAiB,CACf,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAClB,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,kBAAkB,KAC5B,OAAO,CAAC,IAAI,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,QAAQ,CACN,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;OAOG;IACH,cAAc,CACZ,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChC"}
|
|
1
|
+
{"version":3,"file":"ChatService.d.ts","sourceRoot":"","sources":["../../../src/services/ChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,uDAAuD;IACvD,OAAO,CAAC,IAAI,IAAI,CAAC;IAEjB;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,IAAI,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,WAAW,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAClB,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,kBAAkB,KAC5B,OAAO,CAAC,IAAI,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;OAKG;IACH,iBAAiB,CACf,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAClB,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,kBAAkB,KAC5B,OAAO,CAAC,IAAI,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,QAAQ,CACN,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;OAOG;IACH,cAAc,CACZ,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatServiceFactory.d.ts","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAEL,4BAA4B,EAC5B,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatServiceFactory.d.ts","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAEL,4BAA4B,EAC5B,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAqCtE;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoD;IAE5E;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAAG,IAAI;IAIjE;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAAS,SAAS,gBAAgB,EACzD,YAAY,EAAE,SAAS,EACvB,OAAO,EAAE,4BAA4B,CAAC,SAAS,CAAC,GAC/C,WAAW;IAYd;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAI5D;;;OAGG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAKzD;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,wBAAwB,GAAG,SAAS;IAoDvC;;OAEG;IACH,MAAM,CAAC,0BAA0B,IAAI,wBAAwB,EAAE;IAS/D;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,kBAAkB;IAKtE;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAClC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,kBAAkB;CAkBtB"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DEFAULT_CHAT_SERVICE_PROVIDERS } from './providers';
|
|
2
|
+
import { MODEL_GPT_6_ASTRA, MODEL_GPT_6_LUNA, MODEL_GPT_6_SOL, } from '../constants/openai';
|
|
2
3
|
import { getClaudeSupportedReasoningEfforts } from '../constants/claude';
|
|
3
4
|
import { getGeminiSupportedReasoningEfforts } from '../constants/gemini';
|
|
4
5
|
import { getKimiSupportedReasoningEfforts } from '../constants/kimi';
|
|
@@ -93,21 +94,28 @@ export class ChatServiceFactory {
|
|
|
93
94
|
mcp: MCP_SUPPORTED_PROVIDERS.has(providerName),
|
|
94
95
|
jsonMode: JSON_MODE_SUPPORTED_PROVIDERS.has(providerName),
|
|
95
96
|
responseLength: true,
|
|
96
|
-
reasoningEffort: providerName === '
|
|
97
|
-
? [
|
|
98
|
-
: providerName === '
|
|
99
|
-
? [
|
|
100
|
-
: providerName === '
|
|
101
|
-
? [
|
|
102
|
-
: providerName === '
|
|
103
|
-
? [...
|
|
104
|
-
: providerName === '
|
|
105
|
-
? [...
|
|
106
|
-
: providerName === '
|
|
107
|
-
? [...
|
|
108
|
-
: providerName === '
|
|
109
|
-
? [...
|
|
110
|
-
:
|
|
97
|
+
reasoningEffort: providerName === 'openai' && model === MODEL_GPT_6_ASTRA
|
|
98
|
+
? ['low', 'medium', 'high', 'xhigh', 'max']
|
|
99
|
+
: providerName === 'openai' && model === MODEL_GPT_6_SOL
|
|
100
|
+
? ['none', 'low', 'medium', 'high', 'xhigh', 'max']
|
|
101
|
+
: providerName === 'openai' && model === MODEL_GPT_6_LUNA
|
|
102
|
+
? ['none', 'low', 'medium', 'high', 'xhigh', 'max']
|
|
103
|
+
: providerName === 'claude' && model
|
|
104
|
+
? [...getClaudeSupportedReasoningEfforts(model)]
|
|
105
|
+
: providerName === 'gemini' && model
|
|
106
|
+
? [...getGeminiSupportedReasoningEfforts(model)]
|
|
107
|
+
: providerName === 'kimi' && model
|
|
108
|
+
? [...getKimiSupportedReasoningEfforts(model)]
|
|
109
|
+
: providerName === 'deepseek' && model
|
|
110
|
+
? [...getDeepSeekSupportedReasoningEfforts(model)]
|
|
111
|
+
: providerName === 'openrouter' && model
|
|
112
|
+
? [...getOpenRouterSupportedReasoningEfforts(model)]
|
|
113
|
+
: providerName === 'xai' && model
|
|
114
|
+
? [...getXaiSupportedReasoningEfforts(model)]
|
|
115
|
+
: providerName === 'zai' && model
|
|
116
|
+
? [...getZaiSupportedReasoningEfforts(model)]
|
|
117
|
+
: (REASONING_EFFORT_BY_PROVIDER[providerName] ??
|
|
118
|
+
[]),
|
|
111
119
|
};
|
|
112
120
|
}
|
|
113
121
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -125,6 +125,8 @@ export type GeminiNanoChatServiceOptions = {
|
|
|
125
125
|
expectedInputLanguages?: string[];
|
|
126
126
|
/** Expected output languages for the Prompt API (default: ['ja']) */
|
|
127
127
|
expectedOutputLanguages?: string[];
|
|
128
|
+
/** Session reuse mode (default: 'stateless') */
|
|
129
|
+
sessionMode?: 'stateless' | 'persistent';
|
|
128
130
|
};
|
|
129
131
|
export type ChatServiceOptions<TExtra extends Record<string, unknown> = Record<string, unknown>> = BaseChatServiceOptions & TExtra;
|
|
130
132
|
export type ChatServiceOptionsByProvider = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/services/providers/ChatServiceProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../src/services/providers/ChatServiceProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ClaudeChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAGhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IAsCjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAiB9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;CAGjE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MODEL_CLAUDE_4_5_SONNET, MODEL_CLAUDE_4_5_HAIKU, MODEL_CLAUDE_4_5_OPUS, MODEL_CLAUDE_4_6_SONNET, MODEL_CLAUDE_4_6_OPUS, MODEL_CLAUDE_4_7_OPUS, MODEL_CLAUDE_4_8_OPUS, MODEL_CLAUDE_5_FABLE, MODEL_CLAUDE_5_SONNET, MODEL_CLAUDE_5_OPUS, CLAUDE_VISION_SUPPORTED_MODELS, getClaudeSupportedReasoningEfforts, } from '../../../constants';
|
|
1
|
+
import { MODEL_CLAUDE_4_5_SONNET, MODEL_CLAUDE_4_5_HAIKU, MODEL_CLAUDE_4_5_OPUS, MODEL_CLAUDE_4_6_SONNET, MODEL_CLAUDE_4_6_OPUS, MODEL_CLAUDE_4_7_OPUS, MODEL_CLAUDE_4_8_OPUS, MODEL_CLAUDE_5_1_FABLE, MODEL_CLAUDE_5_FABLE, MODEL_CLAUDE_5_SONNET, MODEL_CLAUDE_5_OPUS, MODEL_CLAUDE_5_5_OPUS, CLAUDE_VISION_SUPPORTED_MODELS, getClaudeSupportedReasoningEfforts, } from '../../../constants';
|
|
2
2
|
import { ClaudeChatService } from './ClaudeChatService';
|
|
3
3
|
import { resolveVisionModel } from '../../../utils';
|
|
4
4
|
/**
|
|
@@ -52,9 +52,11 @@ export class ClaudeChatServiceProvider {
|
|
|
52
52
|
MODEL_CLAUDE_4_6_OPUS,
|
|
53
53
|
MODEL_CLAUDE_4_7_OPUS,
|
|
54
54
|
MODEL_CLAUDE_4_8_OPUS,
|
|
55
|
+
MODEL_CLAUDE_5_1_FABLE,
|
|
55
56
|
MODEL_CLAUDE_5_FABLE,
|
|
56
57
|
MODEL_CLAUDE_5_SONNET,
|
|
57
58
|
MODEL_CLAUDE_5_OPUS,
|
|
59
|
+
MODEL_CLAUDE_5_5_OPUS,
|
|
58
60
|
];
|
|
59
61
|
}
|
|
60
62
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAO,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,MAAM,yBAAyB,GAAG,kCAAkC,CAAC,KAAK,CAAC,CAAC;QAC5E,IACE,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACtC,CAAC,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC7D,CAAC;YACD,MAAM,gBAAgB,GACpB,yBAAyB,CAAC,MAAM,GAAG,CAAC;gBAClC,CAAC,CAAC,qBAAqB,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC9D,CAAC,CAAC,iDAAiD,CAAC;YACxD,MAAM,IAAI,KAAK,CACb,SAAS,KAAK,6CAA6C;gBACzD,GAAG,OAAO,CAAC,gBAAgB,KAAK,gBAAgB,EAAE,CACrD,CAAC;QACJ,CAAC;QAED,gFAAgF;QAChF,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,KAAK;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,eAAe,EAAE;YAC1C,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;YACrE,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,OAAO,IAAI,iBAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,KAAK,EACL,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,gBAAgB,CACzB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,uBAAuB;YACvB,sBAAsB;YACtB,qBAAqB;YACrB,uBAAuB;YACvB,qBAAqB;YACrB,qBAAqB;YACrB,qBAAqB;YACrB,oBAAoB;YACpB,qBAAqB;YACrB,mBAAmB;
|
|
1
|
+
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAO,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,MAAM,yBAAyB,GAAG,kCAAkC,CAAC,KAAK,CAAC,CAAC;QAC5E,IACE,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACtC,CAAC,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC7D,CAAC;YACD,MAAM,gBAAgB,GACpB,yBAAyB,CAAC,MAAM,GAAG,CAAC;gBAClC,CAAC,CAAC,qBAAqB,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC9D,CAAC,CAAC,iDAAiD,CAAC;YACxD,MAAM,IAAI,KAAK,CACb,SAAS,KAAK,6CAA6C;gBACzD,GAAG,OAAO,CAAC,gBAAgB,KAAK,gBAAgB,EAAE,CACrD,CAAC;QACJ,CAAC;QAED,gFAAgF;QAChF,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,KAAK;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,eAAe,EAAE;YAC1C,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;YACrE,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,OAAO,IAAI,iBAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,KAAK,EACL,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,gBAAgB,CACzB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,uBAAuB;YACvB,sBAAsB;YACtB,qBAAqB;YACrB,uBAAuB;YACvB,qBAAqB;YACrB,qBAAqB;YACrB,qBAAqB;YACrB,sBAAsB;YACtB,oBAAoB;YACpB,qBAAqB;YACrB,mBAAmB;YACnB,qBAAqB;SACtB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,qBAAqB,EAAE,KAAK,aAAa,CAAC;IACxD,CAAC;IAED,qBAAqB;QACnB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,8BAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,6BAA6B,CAAC,KAAa;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -13,22 +13,43 @@ export declare class GeminiNanoChatService implements ChatService {
|
|
|
13
13
|
private expectedOutputLanguages;
|
|
14
14
|
private initialPrompts;
|
|
15
15
|
private _responseLength?;
|
|
16
|
+
private sessionMode;
|
|
17
|
+
private baseSession?;
|
|
18
|
+
private liveSession?;
|
|
19
|
+
private persistentSessionKey?;
|
|
20
|
+
private consumedTranscript;
|
|
16
21
|
constructor(options?: GeminiNanoChatServiceOptions);
|
|
17
22
|
getModel(): string;
|
|
18
23
|
getVisionModel(): string;
|
|
24
|
+
/** Destroy any persistent Prompt API sessions held by this service. */
|
|
25
|
+
dispose(): void;
|
|
19
26
|
/**
|
|
20
27
|
* Process chat messages using Gemini Nano.
|
|
21
|
-
*
|
|
22
|
-
*
|
|
28
|
+
* Streams response deltas when Chrome exposes promptStreaming(), then calls
|
|
29
|
+
* onCompleteResponse with the complete response.
|
|
23
30
|
*/
|
|
24
31
|
processChat(messages: Message[], onPartialResponse: (text: string) => void, onCompleteResponse: (text: string) => Promise<void>): Promise<void>;
|
|
25
32
|
processVisionChat(_messages: MessageWithVision[], _onPartialResponse: (text: string) => void, _onCompleteResponse: (text: string) => Promise<void>): Promise<void>;
|
|
26
|
-
chatOnce(messages: Message[],
|
|
33
|
+
chatOnce(messages: Message[], stream?: boolean, onPartialResponse?: (text: string) => void, _maxTokens?: number): Promise<ToolChatCompletion>;
|
|
27
34
|
visionChatOnce(_messages: MessageWithVision[], _stream?: boolean, _onPartialResponse?: (text: string) => void, _maxTokens?: number): Promise<ToolChatCompletion>;
|
|
28
35
|
/**
|
|
29
36
|
* Core logic: extract system prompt, manage session, call prompt().
|
|
30
37
|
*/
|
|
31
38
|
private generateResponse;
|
|
39
|
+
private generatePersistentResponse;
|
|
40
|
+
private ensureAvailability;
|
|
41
|
+
private createPersistentBaseSession;
|
|
42
|
+
private getPersistentLiveSession;
|
|
43
|
+
private createPersistentBaseSessionWithHistory;
|
|
44
|
+
private recordConsumedTranscript;
|
|
45
|
+
private getPersistentSessionKey;
|
|
46
|
+
private isHistoryCompatible;
|
|
47
|
+
private isSuffix;
|
|
48
|
+
private isQuotaExceededError;
|
|
49
|
+
private destroyPersistentLiveSession;
|
|
50
|
+
private destroyPersistentSessions;
|
|
51
|
+
private destroySession;
|
|
52
|
+
private promptSession;
|
|
32
53
|
/**
|
|
33
54
|
* Create a new LanguageModel session with structured initial prompts.
|
|
34
55
|
* System instructions, few-shot examples, and conversation history retain
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeminiNanoChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/geminiNano/GeminiNanoChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAU7D,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"GeminiNanoChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/geminiNano/GeminiNanoChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAU7D,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;AA2ChC;;;;GAIG;AACH,qBAAa,qBAAsB,YAAW,WAAW;IACvD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAiB;IAE1C,OAAO,CAAC,sBAAsB,CAAW;IACzC,OAAO,CAAC,uBAAuB,CAAW;IAC1C,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,eAAe,CAAC,CAAqB;IAC7C,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,WAAW,CAAC,CAAuB;IAC3C,OAAO,CAAC,WAAW,CAAC,CAAuB;IAC3C,OAAO,CAAC,oBAAoB,CAAC,CAAS;IACtC,OAAO,CAAC,kBAAkB,CAAiB;gBAE/B,OAAO,GAAE,4BAAiC;IAatD,QAAQ,IAAI,MAAM;IAIlB,cAAc,IAAI,MAAM;IAIxB,uEAAuE;IACvE,OAAO,IAAI,IAAI;IAIf;;;;OAIG;IACG,WAAW,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IASV,iBAAiB,CACrB,SAAS,EAAE,iBAAiB,EAAE,EAC9B,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC1C,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GACnD,OAAO,CAAC,IAAI,CAAC;IAIV,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC;IAaxB,cAAc,CAClB,SAAS,EAAE,iBAAiB,EAAE,EAC9B,OAAO,GAAE,OAAe,EACxB,kBAAkB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACrD,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;OAEG;YACW,gBAAgB;YAyEhB,0BAA0B;YAkF1B,kBAAkB;YAclB,2BAA2B;YA6B3B,wBAAwB;YAyDxB,sCAAsC;IAkBpD,OAAO,CAAC,wBAAwB;IAgBhC,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,4BAA4B;IAWpC,OAAO,CAAC,yBAAyB;IAajC,OAAO,CAAC,cAAc;YAQR,aAAa;IAkC3B;;;;OAIG;YACW,aAAa;IAkB3B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,mBAAmB;IA+B3B,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,4BAA4B;CAsDrC"}
|
|
@@ -18,6 +18,7 @@ function getLanguageModelAPI() {
|
|
|
18
18
|
export class GeminiNanoChatService {
|
|
19
19
|
constructor(options = {}) {
|
|
20
20
|
this.provider = 'gemini-nano';
|
|
21
|
+
this.consumedTranscript = [];
|
|
21
22
|
this.expectedInputLanguages = options.expectedInputLanguages ?? [
|
|
22
23
|
'ja',
|
|
23
24
|
'en',
|
|
@@ -27,6 +28,7 @@ export class GeminiNanoChatService {
|
|
|
27
28
|
...prompt,
|
|
28
29
|
}));
|
|
29
30
|
this._responseLength = options.responseLength;
|
|
31
|
+
this.sessionMode = options.sessionMode ?? 'stateless';
|
|
30
32
|
}
|
|
31
33
|
getModel() {
|
|
32
34
|
return MODEL_GEMINI_NANO;
|
|
@@ -34,22 +36,24 @@ export class GeminiNanoChatService {
|
|
|
34
36
|
getVisionModel() {
|
|
35
37
|
return MODEL_GEMINI_NANO;
|
|
36
38
|
}
|
|
39
|
+
/** Destroy any persistent Prompt API sessions held by this service. */
|
|
40
|
+
dispose() {
|
|
41
|
+
this.destroyPersistentSessions();
|
|
42
|
+
}
|
|
37
43
|
/**
|
|
38
44
|
* Process chat messages using Gemini Nano.
|
|
39
|
-
*
|
|
40
|
-
*
|
|
45
|
+
* Streams response deltas when Chrome exposes promptStreaming(), then calls
|
|
46
|
+
* onCompleteResponse with the complete response.
|
|
41
47
|
*/
|
|
42
48
|
async processChat(messages, onPartialResponse, onCompleteResponse) {
|
|
43
|
-
const response = await this.generateResponse(messages);
|
|
44
|
-
onPartialResponse(response);
|
|
49
|
+
const response = await this.generateResponse(messages, true, onPartialResponse);
|
|
45
50
|
await onCompleteResponse(response);
|
|
46
51
|
}
|
|
47
52
|
async processVisionChat(_messages, _onPartialResponse, _onCompleteResponse) {
|
|
48
53
|
throw new Error('Gemini Nano does not support vision capabilities.');
|
|
49
54
|
}
|
|
50
|
-
async chatOnce(messages,
|
|
51
|
-
const response = await this.generateResponse(messages);
|
|
52
|
-
onPartialResponse(response);
|
|
55
|
+
async chatOnce(messages, stream = false, onPartialResponse = () => { }, _maxTokens) {
|
|
56
|
+
const response = await this.generateResponse(messages, stream, onPartialResponse);
|
|
53
57
|
return {
|
|
54
58
|
blocks: [{ type: 'text', text: response }],
|
|
55
59
|
stop_reason: 'end',
|
|
@@ -61,18 +65,15 @@ export class GeminiNanoChatService {
|
|
|
61
65
|
/**
|
|
62
66
|
* Core logic: extract system prompt, manage session, call prompt().
|
|
63
67
|
*/
|
|
64
|
-
async generateResponse(messages) {
|
|
68
|
+
async generateResponse(messages, stream, onPartialResponse) {
|
|
65
69
|
const api = getLanguageModelAPI();
|
|
66
70
|
if (!api) {
|
|
67
71
|
throw new Error('Gemini Nano is not available in this environment. ' +
|
|
68
72
|
'Chrome 148+ on a supported desktop device is required for web pages.');
|
|
69
73
|
}
|
|
70
74
|
const modelOptions = this.getModelOptions();
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
throw new Error('Gemini Nano Prompt API is not ready in this environment. ' +
|
|
74
|
-
`LanguageModel.availability() returned "${availability}". ` +
|
|
75
|
-
'Expected "available" or "downloadable".');
|
|
75
|
+
if (this.sessionMode === 'stateless') {
|
|
76
|
+
await this.ensureAvailability(api, modelOptions);
|
|
76
77
|
}
|
|
77
78
|
// Extract system prompt
|
|
78
79
|
const systemMessages = messages.filter((m) => m.role === 'system');
|
|
@@ -87,9 +88,13 @@ export class GeminiNanoChatService {
|
|
|
87
88
|
throw new Error('No user message found in the provided messages.');
|
|
88
89
|
}
|
|
89
90
|
const lastUserMessage = conversationMessages[lastUserMessageIndex];
|
|
90
|
-
const
|
|
91
|
+
const contextHistory = conversationMessages.slice(0, lastUserMessageIndex);
|
|
92
|
+
if (this.sessionMode === 'persistent') {
|
|
93
|
+
return this.generatePersistentResponse(api, systemPrompt, contextHistory, lastUserMessage.content, modelOptions, stream, onPartialResponse);
|
|
94
|
+
}
|
|
95
|
+
const session = await this.createSession(api, systemPrompt, contextHistory, modelOptions);
|
|
91
96
|
try {
|
|
92
|
-
return await
|
|
97
|
+
return await this.promptSession(session, lastUserMessage.content, stream, onPartialResponse);
|
|
93
98
|
}
|
|
94
99
|
finally {
|
|
95
100
|
try {
|
|
@@ -100,6 +105,197 @@ export class GeminiNanoChatService {
|
|
|
100
105
|
}
|
|
101
106
|
}
|
|
102
107
|
}
|
|
108
|
+
async generatePersistentResponse(api, systemPrompt, contextHistory, userPrompt, modelOptions, stream, onPartialResponse) {
|
|
109
|
+
const sessionKey = this.getPersistentSessionKey(systemPrompt, modelOptions);
|
|
110
|
+
if (this.persistentSessionKey !== sessionKey) {
|
|
111
|
+
this.destroyPersistentSessions();
|
|
112
|
+
}
|
|
113
|
+
if (!this.baseSession && !this.liveSession) {
|
|
114
|
+
await this.ensureAvailability(api, modelOptions);
|
|
115
|
+
await this.createPersistentBaseSession(api, systemPrompt, contextHistory, modelOptions);
|
|
116
|
+
this.persistentSessionKey = sessionKey;
|
|
117
|
+
}
|
|
118
|
+
let session = await this.getPersistentLiveSession(api, systemPrompt, contextHistory, modelOptions);
|
|
119
|
+
const reusedLiveSession = session === this.liveSession &&
|
|
120
|
+
this.isHistoryCompatible(contextHistory, this.consumedTranscript);
|
|
121
|
+
this.persistentSessionKey = sessionKey;
|
|
122
|
+
try {
|
|
123
|
+
const response = await this.promptSession(session, userPrompt, stream, onPartialResponse);
|
|
124
|
+
this.recordConsumedTranscript(contextHistory, userPrompt, response, reusedLiveSession);
|
|
125
|
+
return response;
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
if (!this.isQuotaExceededError(error)) {
|
|
129
|
+
this.destroyPersistentLiveSession();
|
|
130
|
+
throw error;
|
|
131
|
+
}
|
|
132
|
+
this.destroyPersistentLiveSession();
|
|
133
|
+
session = await this.getPersistentLiveSession(api, systemPrompt, [], modelOptions);
|
|
134
|
+
this.persistentSessionKey = sessionKey;
|
|
135
|
+
try {
|
|
136
|
+
const response = await this.promptSession(session, userPrompt, stream, onPartialResponse);
|
|
137
|
+
this.recordConsumedTranscript([], userPrompt, response, false);
|
|
138
|
+
return response;
|
|
139
|
+
}
|
|
140
|
+
catch (retryError) {
|
|
141
|
+
this.destroyPersistentLiveSession();
|
|
142
|
+
throw retryError;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
async ensureAvailability(api, modelOptions) {
|
|
147
|
+
const availability = await api.availability(modelOptions);
|
|
148
|
+
if (availability !== 'available' && availability !== 'downloadable') {
|
|
149
|
+
throw new Error('Gemini Nano Prompt API is not ready in this environment. ' +
|
|
150
|
+
`LanguageModel.availability() returned "${availability}". ` +
|
|
151
|
+
'Expected "available" or "downloadable".');
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
async createPersistentBaseSession(api, systemPrompt, contextHistory, modelOptions) {
|
|
155
|
+
this.baseSession = await this.createSession(api, systemPrompt, [], modelOptions);
|
|
156
|
+
if (contextHistory.length > 0) {
|
|
157
|
+
this.liveSession = await this.createSession(api, systemPrompt, contextHistory, modelOptions);
|
|
158
|
+
this.consumedTranscript = contextHistory.map((message) => ({
|
|
159
|
+
...message,
|
|
160
|
+
}));
|
|
161
|
+
}
|
|
162
|
+
else if (typeof this.baseSession.clone === 'function') {
|
|
163
|
+
this.liveSession = await this.baseSession.clone();
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
this.liveSession = this.baseSession;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
async getPersistentLiveSession(api, systemPrompt, contextHistory, modelOptions) {
|
|
170
|
+
if (this.liveSession &&
|
|
171
|
+
this.isHistoryCompatible(contextHistory, this.consumedTranscript)) {
|
|
172
|
+
return this.liveSession;
|
|
173
|
+
}
|
|
174
|
+
if (this.liveSession && this.liveSession !== this.baseSession) {
|
|
175
|
+
this.destroyPersistentLiveSession();
|
|
176
|
+
}
|
|
177
|
+
if (contextHistory.length === 0 && this.baseSession) {
|
|
178
|
+
if (typeof this.baseSession.clone === 'function') {
|
|
179
|
+
this.liveSession = await this.baseSession.clone();
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
if (this.consumedTranscript.length > 0) {
|
|
183
|
+
this.destroyPersistentSessions();
|
|
184
|
+
await this.createPersistentBaseSession(api, systemPrompt, [], modelOptions);
|
|
185
|
+
return this.liveSession;
|
|
186
|
+
}
|
|
187
|
+
this.liveSession = this.baseSession;
|
|
188
|
+
}
|
|
189
|
+
return this.liveSession;
|
|
190
|
+
}
|
|
191
|
+
if (this.baseSession && typeof this.baseSession.clone === 'function') {
|
|
192
|
+
this.liveSession = await this.createSession(api, systemPrompt, contextHistory, modelOptions);
|
|
193
|
+
return this.liveSession;
|
|
194
|
+
}
|
|
195
|
+
this.destroyPersistentSessions();
|
|
196
|
+
await this.ensureAvailability(api, modelOptions);
|
|
197
|
+
await this.createPersistentBaseSessionWithHistory(api, systemPrompt, contextHistory, modelOptions);
|
|
198
|
+
return this.liveSession;
|
|
199
|
+
}
|
|
200
|
+
async createPersistentBaseSessionWithHistory(api, systemPrompt, contextHistory, modelOptions) {
|
|
201
|
+
this.baseSession = await this.createSession(api, systemPrompt, contextHistory, modelOptions);
|
|
202
|
+
this.liveSession = this.baseSession;
|
|
203
|
+
this.consumedTranscript = contextHistory.map((message) => ({
|
|
204
|
+
...message,
|
|
205
|
+
}));
|
|
206
|
+
}
|
|
207
|
+
recordConsumedTranscript(contextHistory, userPrompt, response, reusedLiveSession) {
|
|
208
|
+
const priorTranscript = reusedLiveSession
|
|
209
|
+
? this.consumedTranscript
|
|
210
|
+
: contextHistory;
|
|
211
|
+
this.consumedTranscript = [
|
|
212
|
+
...priorTranscript,
|
|
213
|
+
{ role: 'user', content: userPrompt },
|
|
214
|
+
{ role: 'assistant', content: response },
|
|
215
|
+
];
|
|
216
|
+
}
|
|
217
|
+
getPersistentSessionKey(systemPrompt, modelOptions) {
|
|
218
|
+
return JSON.stringify({
|
|
219
|
+
systemPrompt,
|
|
220
|
+
modelOptions,
|
|
221
|
+
initialPrompts: this.initialPrompts,
|
|
222
|
+
responseLength: this._responseLength,
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
isHistoryCompatible(left, right) {
|
|
226
|
+
if (left.length === 0 || right.length === 0) {
|
|
227
|
+
return left.length === 0 && right.length === 0;
|
|
228
|
+
}
|
|
229
|
+
return this.isSuffix(left, right) || this.isSuffix(right, left);
|
|
230
|
+
}
|
|
231
|
+
isSuffix(candidate, full) {
|
|
232
|
+
if (candidate.length > full.length)
|
|
233
|
+
return false;
|
|
234
|
+
const offset = full.length - candidate.length;
|
|
235
|
+
return candidate.every((message, index) => message.role === full[offset + index].role &&
|
|
236
|
+
message.content === full[offset + index].content);
|
|
237
|
+
}
|
|
238
|
+
isQuotaExceededError(error) {
|
|
239
|
+
return (typeof error === 'object' &&
|
|
240
|
+
error !== null &&
|
|
241
|
+
'name' in error &&
|
|
242
|
+
error.name === 'QuotaExceededError');
|
|
243
|
+
}
|
|
244
|
+
destroyPersistentLiveSession() {
|
|
245
|
+
if (this.liveSession) {
|
|
246
|
+
this.destroySession(this.liveSession);
|
|
247
|
+
if (this.liveSession === this.baseSession) {
|
|
248
|
+
this.baseSession = undefined;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
this.liveSession = undefined;
|
|
252
|
+
this.consumedTranscript = [];
|
|
253
|
+
}
|
|
254
|
+
destroyPersistentSessions() {
|
|
255
|
+
if (this.liveSession && this.liveSession !== this.baseSession) {
|
|
256
|
+
this.destroySession(this.liveSession);
|
|
257
|
+
}
|
|
258
|
+
if (this.baseSession) {
|
|
259
|
+
this.destroySession(this.baseSession);
|
|
260
|
+
}
|
|
261
|
+
this.baseSession = undefined;
|
|
262
|
+
this.liveSession = undefined;
|
|
263
|
+
this.persistentSessionKey = undefined;
|
|
264
|
+
this.consumedTranscript = [];
|
|
265
|
+
}
|
|
266
|
+
destroySession(session) {
|
|
267
|
+
try {
|
|
268
|
+
session.destroy();
|
|
269
|
+
}
|
|
270
|
+
catch {
|
|
271
|
+
// ignore
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
async promptSession(session, prompt, stream, onPartialResponse) {
|
|
275
|
+
if (stream && typeof session.promptStreaming === 'function') {
|
|
276
|
+
const reader = session.promptStreaming(prompt).getReader();
|
|
277
|
+
let response = '';
|
|
278
|
+
let streamMode = 'unknown';
|
|
279
|
+
while (true) {
|
|
280
|
+
const { done, value } = await reader.read();
|
|
281
|
+
if (done)
|
|
282
|
+
break;
|
|
283
|
+
const chunk = String(value ?? '');
|
|
284
|
+
if (streamMode === 'unknown' && response !== '') {
|
|
285
|
+
streamMode = chunk.startsWith(response) ? 'cumulative' : 'delta';
|
|
286
|
+
}
|
|
287
|
+
const isCumulative = streamMode === 'cumulative';
|
|
288
|
+
const delta = isCumulative ? chunk.slice(response.length) : chunk;
|
|
289
|
+
response = isCumulative ? chunk : response + chunk;
|
|
290
|
+
if (delta)
|
|
291
|
+
onPartialResponse(delta);
|
|
292
|
+
}
|
|
293
|
+
return response;
|
|
294
|
+
}
|
|
295
|
+
const response = await session.prompt(prompt);
|
|
296
|
+
onPartialResponse(response);
|
|
297
|
+
return response;
|
|
298
|
+
}
|
|
103
299
|
/**
|
|
104
300
|
* Create a new LanguageModel session with structured initial prompts.
|
|
105
301
|
* System instructions, few-shot examples, and conversation history retain
|