@aituber-onair/chat 0.43.0 → 0.44.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 +33 -2
- package/README.md +33 -2
- package/dist/cjs/constants/claude.d.ts +1 -0
- package/dist/cjs/constants/claude.d.ts.map +1 -1
- package/dist/cjs/constants/claude.js +3 -1
- package/dist/cjs/constants/claude.js.map +1 -1
- package/dist/cjs/services/ChatServiceFactory.d.ts +9 -0
- package/dist/cjs/services/ChatServiceFactory.d.ts.map +1 -1
- package/dist/cjs/services/ChatServiceFactory.js +63 -0
- package/dist/cjs/services/ChatServiceFactory.js.map +1 -1
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js +1 -0
- package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatService.d.ts +5 -1
- package/dist/cjs/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/openai/OpenAIChatService.js +3 -1
- 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 -1
- package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.d.ts +4 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.js +21 -1
- package/dist/cjs/services/providers/openai/openaiRequestBuilder.js.map +1 -1
- package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js +18 -1
- package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js.map +1 -1
- package/dist/cjs/types/capabilities.d.ts +15 -0
- package/dist/cjs/types/capabilities.d.ts.map +1 -0
- package/dist/cjs/types/capabilities.js +3 -0
- package/dist/cjs/types/capabilities.js.map +1 -0
- package/dist/cjs/types/index.d.ts +1 -0
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/esm/constants/claude.d.ts +1 -0
- package/dist/esm/constants/claude.d.ts.map +1 -1
- package/dist/esm/constants/claude.js +2 -0
- package/dist/esm/constants/claude.js.map +1 -1
- package/dist/esm/services/ChatServiceFactory.d.ts +9 -0
- package/dist/esm/services/ChatServiceFactory.d.ts.map +1 -1
- package/dist/esm/services/ChatServiceFactory.js +63 -0
- package/dist/esm/services/ChatServiceFactory.js.map +1 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js +2 -1
- package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatService.d.ts +5 -1
- package/dist/esm/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/openai/OpenAIChatService.js +3 -1
- 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 +17 -1
- package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.d.ts +4 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.js +21 -1
- package/dist/esm/services/providers/openai/openaiRequestBuilder.js.map +1 -1
- package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js +18 -1
- package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js.map +1 -1
- package/dist/esm/types/capabilities.d.ts +15 -0
- package/dist/esm/types/capabilities.d.ts.map +1 -0
- package/dist/esm/types/capabilities.js +2 -0
- package/dist/esm/types/capabilities.js.map +1 -0
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/umd/aituber-onair-chat.js +99 -6
- package/dist/umd/aituber-onair-chat.min.js +7 -7
- package/package.json +1 -1
package/README.ja.md
CHANGED
|
@@ -566,7 +566,7 @@ CI/ローカルで再現性を高める場合は
|
|
|
566
566
|
```typescript
|
|
567
567
|
const claudeService = ChatServiceFactory.createChatService('claude', {
|
|
568
568
|
apiKey: process.env.ANTHROPIC_API_KEY,
|
|
569
|
-
model: 'claude-
|
|
569
|
+
model: 'claude-sonnet-5'
|
|
570
570
|
});
|
|
571
571
|
```
|
|
572
572
|
|
|
@@ -1092,6 +1092,37 @@ console.log(modelLevel); // 'unknown'
|
|
|
1092
1092
|
- `unsupported`: リクエスト送信前に非対応と分かっている
|
|
1093
1093
|
- `unknown`: 事前判定できないが、実際には成功する可能性がある
|
|
1094
1094
|
|
|
1095
|
+
### プロバイダー機能の事前判定
|
|
1096
|
+
|
|
1097
|
+
UI やエージェント実行環境は、チャットサービスを作成する前にプロバイダーの
|
|
1098
|
+
機能を確認できます。
|
|
1099
|
+
|
|
1100
|
+
```typescript
|
|
1101
|
+
const capabilities = ChatServiceFactory.getProviderCapabilities(
|
|
1102
|
+
'openai',
|
|
1103
|
+
'gpt-5.4-mini',
|
|
1104
|
+
);
|
|
1105
|
+
|
|
1106
|
+
if (capabilities?.jsonMode) {
|
|
1107
|
+
// JSON mode のトグル表示や responseFormat の指定が安全にできます。
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
if (!capabilities?.mcp) {
|
|
1111
|
+
// このプロバイダーでは MCP server 設定を無効化できます。
|
|
1112
|
+
}
|
|
1113
|
+
```
|
|
1114
|
+
|
|
1115
|
+
`getProviderCapabilities(provider, model?)` は `models`, `defaultModel`,
|
|
1116
|
+
`vision`, `tools`, `mcp`, `jsonMode`, `responseLength`, 対応する
|
|
1117
|
+
`reasoningEffort` などの機械可読な metadata を返します。プロバイダー選択 UI
|
|
1118
|
+
やダッシュボードを作る場合は `getAllProviderCapabilities()` も利用できます。
|
|
1119
|
+
|
|
1120
|
+
capability object は実行前の判断に使う静的 metadata です。API key、endpoint、
|
|
1121
|
+
base URL、MCP server 定義、その他のユーザー設定は含みません。これにより、UI
|
|
1122
|
+
では非対応の設定を実行前に非表示/無効化でき、エージェント側では tools、MCP、
|
|
1123
|
+
vision、JSON mode、reasoning 設定を使うべきかを provider 固有ロジックの
|
|
1124
|
+
ベタ書きなしで判断できます。
|
|
1125
|
+
|
|
1095
1126
|
## 利用可能なプロバイダー
|
|
1096
1127
|
|
|
1097
1128
|
現在、以下のAIプロバイダーが組み込まれています:
|
|
@@ -1099,7 +1130,7 @@ console.log(modelLevel); // 'unknown'
|
|
|
1099
1130
|
- **OpenAI**: GPT-5.5、GPT-5.4 Pro、GPT-5.4、GPT-5.4 Mini、GPT-5.4 Nano、GPT-5.1、GPT-5(Nano/Mini/Standard)、GPT-4.1(miniとnanoを含む), GPT-4, GPT-4o-mini, O3-mini, o1, o1-miniのモデルをサポート
|
|
1100
1131
|
- **OpenAI-Compatible**: OpenAI互換 endpoint 経由で任意のローカル/セルフホスト model ID を利用できます。vision 対応可否は endpoint ごとに差があるため、原則 `unknown` 扱いです
|
|
1101
1132
|
- **Gemini**: Gemini 3.5 Flash、Gemini 3.1 Flash-Lite、Gemini 3.1 Pro Preview、Gemini 3 Flash Preview、Gemini 2.5 Pro、Gemini 2.5 Flash、Gemini 2.5 Flash Lite、Gemma 4 31B IT、Gemma 4 26B A4B IT などの推奨モデルをサポート。Gemini 3.5 Flash はチャット用途向けに minimal thinking を自動適用します。Gemini 3.1 Flash-Lite Preview、Gemini 3 Pro Preview、Gemini 2.5 Flash Lite Preview などの lifecycle 上 deprecated なモデルは明示指定用に export を残しています
|
|
1102
|
-
- **Claude**: Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5 に加え、まだ利用可能だが非推奨の Claude 4 Opus, Claude 4 Sonnet, Claude 3 Haiku をサポート
|
|
1133
|
+
- **Claude**: Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5 に加え、まだ利用可能だが非推奨の Claude 4 Opus, Claude 4 Sonnet, Claude 3 Haiku をサポート
|
|
1103
1134
|
- **OpenRouter**: OpenRouterのキュレーション済みモデル一覧(OpenAI/Claude/Gemini/Z.ai/Kimi)をサポート。モデルIDはOpenRouter節を参照してください
|
|
1104
1135
|
- **Z.ai**: GLM-5.2/GLM-5/GLM-5-Turbo(テキスト)、GLM-4.7/4.6(テキスト)、GLM-4.6V系(ビジョン)をサポート
|
|
1105
1136
|
- **xAI**: Grok 4.3、Grok 4.20 の Reasoning/Non-Reasoning、Grok 4-1 Fast の Reasoning/Non-Reasoning をサポートし、全モデルでビジョン対応
|
package/README.md
CHANGED
|
@@ -579,7 +579,7 @@ For CI/local deterministic runs, pair it with `examples/mock-openai-server`.
|
|
|
579
579
|
```typescript
|
|
580
580
|
const claudeService = ChatServiceFactory.createChatService('claude', {
|
|
581
581
|
apiKey: process.env.ANTHROPIC_API_KEY,
|
|
582
|
-
model: 'claude-
|
|
582
|
+
model: 'claude-sonnet-5'
|
|
583
583
|
});
|
|
584
584
|
```
|
|
585
585
|
|
|
@@ -1107,6 +1107,37 @@ Semantics:
|
|
|
1107
1107
|
- `unsupported`: Known to reject vision before sending the request
|
|
1108
1108
|
- `unknown`: Cannot be pre-validated, but vision requests may still succeed
|
|
1109
1109
|
|
|
1110
|
+
### Provider Capability Discovery
|
|
1111
|
+
|
|
1112
|
+
UI and agent runtimes can inspect provider features before creating a chat
|
|
1113
|
+
service:
|
|
1114
|
+
|
|
1115
|
+
```typescript
|
|
1116
|
+
const capabilities = ChatServiceFactory.getProviderCapabilities(
|
|
1117
|
+
'openai',
|
|
1118
|
+
'gpt-5.4-mini',
|
|
1119
|
+
);
|
|
1120
|
+
|
|
1121
|
+
if (capabilities?.jsonMode) {
|
|
1122
|
+
// Show a JSON mode toggle or pass responseFormat safely.
|
|
1123
|
+
}
|
|
1124
|
+
|
|
1125
|
+
if (!capabilities?.mcp) {
|
|
1126
|
+
// Disable MCP server settings for this provider.
|
|
1127
|
+
}
|
|
1128
|
+
```
|
|
1129
|
+
|
|
1130
|
+
`getProviderCapabilities(provider, model?)` returns machine-readable metadata
|
|
1131
|
+
such as `models`, `defaultModel`, `vision`, `tools`, `mcp`, `jsonMode`,
|
|
1132
|
+
`responseLength`, and supported `reasoningEffort` values. Use
|
|
1133
|
+
`getAllProviderCapabilities()` to populate provider pickers or dashboards.
|
|
1134
|
+
|
|
1135
|
+
The capability object is static planning metadata. It does not include API keys,
|
|
1136
|
+
endpoints, base URLs, MCP server definitions, or other user configuration. This
|
|
1137
|
+
helps UI surfaces hide unsupported controls before execution, and lets agents
|
|
1138
|
+
choose whether to use tools, MCP, vision, JSON mode, or reasoning settings
|
|
1139
|
+
without hard-coding provider-specific rules.
|
|
1140
|
+
|
|
1110
1141
|
## Available Providers
|
|
1111
1142
|
|
|
1112
1143
|
Currently, the following AI providers are built-in:
|
|
@@ -1114,7 +1145,7 @@ Currently, the following AI providers are built-in:
|
|
|
1114
1145
|
- **OpenAI**: Supports models like GPT-5.5, GPT-5.4 Pro, GPT-5.4, GPT-5.4 Mini, GPT-5.4 Nano, GPT-5.1, GPT-5 (Nano/Mini/Standard), GPT-4.1 (including mini and nano), GPT-4, GPT-4o-mini, O3-mini, o1, o1-mini
|
|
1115
1146
|
- **OpenAI-Compatible**: Supports arbitrary local/self-hosted model IDs via OpenAI-compatible endpoints. Vision capability is treated as `unknown` unless your app knows the endpoint-specific model catalog.
|
|
1116
1147
|
- **Gemini**: Supports recommended models like Gemini 3.5 Flash, Gemini 3.1 Flash-Lite, Gemini 3.1 Pro Preview, Gemini 3 Flash Preview, Gemini 2.5 Pro, Gemini 2.5 Flash, Gemini 2.5 Flash Lite, Gemma 4 31B IT, and Gemma 4 26B A4B IT. Gemini 3.5 Flash automatically uses minimal thinking for chat-style responses. Deprecated lifecycle models such as Gemini 3.1 Flash-Lite Preview, Gemini 3 Pro Preview, and Gemini 2.5 Flash Lite Preview remain exported for explicit use.
|
|
1117
|
-
- **Claude**: Supports current Claude API model IDs including Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5, plus deprecated-but-still-available Claude 4 Opus, Claude 4 Sonnet, and Claude 3 Haiku
|
|
1148
|
+
- **Claude**: Supports current Claude API model IDs including Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5, plus deprecated-but-still-available Claude 4 Opus, Claude 4 Sonnet, and Claude 3 Haiku
|
|
1118
1149
|
- **OpenRouter**: Supports a curated OpenRouter model list (OpenAI/Claude/Gemini/Z.ai/Kimi). See the OpenRouter section for model IDs.
|
|
1119
1150
|
- **Z.ai**: Supports GLM-5.2/GLM-5/GLM-5-Turbo (text), GLM-4.7/4.6 (text), and GLM-4.6V family (vision)
|
|
1120
1151
|
- **xAI**: Supports Grok 4.3, Grok 4.20 Reasoning/Non-Reasoning, and Grok 4-1 Fast Reasoning/Non-Reasoning, all with vision support
|
|
@@ -12,5 +12,6 @@ export declare const MODEL_CLAUDE_4_6_SONNET = "claude-sonnet-4-6";
|
|
|
12
12
|
export declare const MODEL_CLAUDE_4_6_OPUS = "claude-opus-4-6";
|
|
13
13
|
export declare const MODEL_CLAUDE_4_7_OPUS = "claude-opus-4-7";
|
|
14
14
|
export declare const MODEL_CLAUDE_4_8_OPUS = "claude-opus-4-8";
|
|
15
|
+
export declare const MODEL_CLAUDE_5_SONNET = "claude-sonnet-5";
|
|
15
16
|
export declare const CLAUDE_VISION_SUPPORTED_MODELS: string[];
|
|
16
17
|
//# sourceMappingURL=claude.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAG3E,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,8BAA8B,
|
|
1
|
+
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAG3E,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,8BAA8B,UAY1C,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CLAUDE_VISION_SUPPORTED_MODELS = exports.MODEL_CLAUDE_4_8_OPUS = exports.MODEL_CLAUDE_4_7_OPUS = exports.MODEL_CLAUDE_4_6_OPUS = exports.MODEL_CLAUDE_4_6_SONNET = exports.MODEL_CLAUDE_4_5_OPUS = exports.MODEL_CLAUDE_4_5_HAIKU = exports.MODEL_CLAUDE_4_5_SONNET = exports.MODEL_CLAUDE_4_OPUS = exports.MODEL_CLAUDE_4_SONNET = exports.MODEL_CLAUDE_3_7_SONNET = exports.MODEL_CLAUDE_3_5_SONNET = exports.MODEL_CLAUDE_3_5_HAIKU = exports.MODEL_CLAUDE_3_HAIKU = exports.ENDPOINT_CLAUDE_API = void 0;
|
|
3
|
+
exports.CLAUDE_VISION_SUPPORTED_MODELS = exports.MODEL_CLAUDE_5_SONNET = exports.MODEL_CLAUDE_4_8_OPUS = exports.MODEL_CLAUDE_4_7_OPUS = exports.MODEL_CLAUDE_4_6_OPUS = exports.MODEL_CLAUDE_4_6_SONNET = exports.MODEL_CLAUDE_4_5_OPUS = exports.MODEL_CLAUDE_4_5_HAIKU = exports.MODEL_CLAUDE_4_5_SONNET = exports.MODEL_CLAUDE_4_OPUS = exports.MODEL_CLAUDE_4_SONNET = exports.MODEL_CLAUDE_3_7_SONNET = exports.MODEL_CLAUDE_3_5_SONNET = exports.MODEL_CLAUDE_3_5_HAIKU = exports.MODEL_CLAUDE_3_HAIKU = exports.ENDPOINT_CLAUDE_API = void 0;
|
|
4
4
|
exports.ENDPOINT_CLAUDE_API = 'https://api.anthropic.com/v1/messages';
|
|
5
5
|
// claude model
|
|
6
6
|
exports.MODEL_CLAUDE_3_HAIKU = 'claude-3-haiku-20240307';
|
|
@@ -16,6 +16,7 @@ exports.MODEL_CLAUDE_4_6_SONNET = 'claude-sonnet-4-6';
|
|
|
16
16
|
exports.MODEL_CLAUDE_4_6_OPUS = 'claude-opus-4-6';
|
|
17
17
|
exports.MODEL_CLAUDE_4_7_OPUS = 'claude-opus-4-7';
|
|
18
18
|
exports.MODEL_CLAUDE_4_8_OPUS = 'claude-opus-4-8';
|
|
19
|
+
exports.MODEL_CLAUDE_5_SONNET = 'claude-sonnet-5';
|
|
19
20
|
exports.CLAUDE_VISION_SUPPORTED_MODELS = [
|
|
20
21
|
exports.MODEL_CLAUDE_3_HAIKU,
|
|
21
22
|
exports.MODEL_CLAUDE_4_SONNET,
|
|
@@ -27,5 +28,6 @@ exports.CLAUDE_VISION_SUPPORTED_MODELS = [
|
|
|
27
28
|
exports.MODEL_CLAUDE_4_6_OPUS,
|
|
28
29
|
exports.MODEL_CLAUDE_4_7_OPUS,
|
|
29
30
|
exports.MODEL_CLAUDE_4_8_OPUS,
|
|
31
|
+
exports.MODEL_CLAUDE_5_SONNET,
|
|
30
32
|
];
|
|
31
33
|
//# sourceMappingURL=claude.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,uCAAuC,CAAC;AAE3E,eAAe;AACF,QAAA,oBAAoB,GAAG,yBAAyB,CAAC;AACjD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,mBAAmB,GAAG,wBAAwB,CAAC;AAC/C,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAE1C,QAAA,8BAA8B,GAAG;IAC5C,4BAAoB;IACpB,6BAAqB;IACrB,2BAAmB;IACnB,+BAAuB;IACvB,8BAAsB;IACtB,6BAAqB;IACrB,+BAAuB;IACvB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;CACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,uCAAuC,CAAC;AAE3E,eAAe;AACF,QAAA,oBAAoB,GAAG,yBAAyB,CAAC;AACjD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,mBAAmB,GAAG,wBAAwB,CAAC;AAC/C,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAE1C,QAAA,8BAA8B,GAAG;IAC5C,4BAAoB;IACpB,6BAAqB;IACrB,2BAAmB;IACnB,+BAAuB;IACvB,8BAAsB;IACtB,6BAAqB;IACrB,+BAAuB;IACvB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;CACtB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ChatService } from './ChatService';
|
|
2
2
|
import { ChatServiceOptionsByProvider, ChatProviderName, ChatServiceProvider, VisionSupportLevel } from './providers/ChatServiceProvider';
|
|
3
|
+
import type { ChatProviderCapabilities } from '../types/capabilities';
|
|
3
4
|
/**
|
|
4
5
|
* Chat service factory
|
|
5
6
|
* Manages and creates various AI providers
|
|
@@ -35,6 +36,14 @@ export declare class ChatServiceFactory {
|
|
|
35
36
|
* @returns Array of supported models, empty array if provider doesn't exist
|
|
36
37
|
*/
|
|
37
38
|
static getSupportedModels(providerName: string): string[];
|
|
39
|
+
/**
|
|
40
|
+
* Get machine-readable provider capabilities for UI and agent planning.
|
|
41
|
+
*/
|
|
42
|
+
static getProviderCapabilities(providerName: string, model?: string): ChatProviderCapabilities | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Get machine-readable capabilities for all registered providers.
|
|
45
|
+
*/
|
|
46
|
+
static getAllProviderCapabilities(): ChatProviderCapabilities[];
|
|
38
47
|
/**
|
|
39
48
|
* Get provider-level vision support status.
|
|
40
49
|
*/
|
|
@@ -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;
|
|
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;AAkCtE;;;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;IA4BvC;;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"}
|
|
@@ -2,6 +2,34 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ChatServiceFactory = void 0;
|
|
4
4
|
const providers_1 = require("./providers");
|
|
5
|
+
const TOOL_SUPPORTED_PROVIDERS = new Set([
|
|
6
|
+
'openai',
|
|
7
|
+
'openai-compatible',
|
|
8
|
+
'openrouter',
|
|
9
|
+
'gemini',
|
|
10
|
+
'claude',
|
|
11
|
+
'zai',
|
|
12
|
+
'xai',
|
|
13
|
+
'kimi',
|
|
14
|
+
'deepseek',
|
|
15
|
+
'mistral',
|
|
16
|
+
'sakana',
|
|
17
|
+
'plamo',
|
|
18
|
+
]);
|
|
19
|
+
const MCP_SUPPORTED_PROVIDERS = new Set(['openai', 'gemini', 'claude']);
|
|
20
|
+
const JSON_MODE_SUPPORTED_PROVIDERS = new Set([
|
|
21
|
+
'openai',
|
|
22
|
+
'openai-compatible',
|
|
23
|
+
'zai',
|
|
24
|
+
'kimi',
|
|
25
|
+
]);
|
|
26
|
+
const REASONING_EFFORT_BY_PROVIDER = {
|
|
27
|
+
openai: ['none', 'minimal', 'low', 'medium', 'high', 'xhigh'],
|
|
28
|
+
openrouter: ['none', 'minimal', 'low', 'medium', 'high'],
|
|
29
|
+
mistral: ['low', 'medium', 'high'],
|
|
30
|
+
plamo: ['none', 'medium'],
|
|
31
|
+
xai: ['low', 'high'],
|
|
32
|
+
};
|
|
5
33
|
/**
|
|
6
34
|
* Chat service factory
|
|
7
35
|
* Manages and creates various AI providers
|
|
@@ -44,6 +72,41 @@ class ChatServiceFactory {
|
|
|
44
72
|
const provider = this.providers.get(providerName);
|
|
45
73
|
return provider ? provider.getSupportedModels() : [];
|
|
46
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Get machine-readable provider capabilities for UI and agent planning.
|
|
77
|
+
*/
|
|
78
|
+
static getProviderCapabilities(providerName, model) {
|
|
79
|
+
const provider = this.providers.get(providerName);
|
|
80
|
+
if (!provider) {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
const vision = model
|
|
84
|
+
? this.getVisionSupportLevelForModel(providerName, model)
|
|
85
|
+
: provider.getVisionSupportLevel();
|
|
86
|
+
return {
|
|
87
|
+
provider: providerName,
|
|
88
|
+
models: provider.getSupportedModels(),
|
|
89
|
+
defaultModel: typeof provider.getDefaultModel === 'function'
|
|
90
|
+
? provider.getDefaultModel()
|
|
91
|
+
: undefined,
|
|
92
|
+
text: true,
|
|
93
|
+
streaming: true,
|
|
94
|
+
vision,
|
|
95
|
+
tools: TOOL_SUPPORTED_PROVIDERS.has(providerName),
|
|
96
|
+
mcp: MCP_SUPPORTED_PROVIDERS.has(providerName),
|
|
97
|
+
jsonMode: JSON_MODE_SUPPORTED_PROVIDERS.has(providerName),
|
|
98
|
+
responseLength: true,
|
|
99
|
+
reasoningEffort: REASONING_EFFORT_BY_PROVIDER[providerName] ?? [],
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Get machine-readable capabilities for all registered providers.
|
|
104
|
+
*/
|
|
105
|
+
static getAllProviderCapabilities() {
|
|
106
|
+
return this.getAvailableProviders()
|
|
107
|
+
.map((providerName) => this.getProviderCapabilities(providerName))
|
|
108
|
+
.filter((capabilities) => capabilities !== undefined);
|
|
109
|
+
}
|
|
47
110
|
/**
|
|
48
111
|
* Get provider-level vision support status.
|
|
49
112
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":";;;AAQA,2CAA6D;
|
|
1
|
+
{"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.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":"AAcA,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;IAqBjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAgB9B;;;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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":";;;AAAA,kDAa4B;AAE5B,2DAAwD;AAOxD,0CAAoD;AAEpD;;GAEG;AACH,MAAa,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,gFAAgF;QAChF,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC;YACrC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,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,qCAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,EACvC,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,cAAc,CACvB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,iCAAqB;YACrB,+BAAmB;YACnB,mCAAuB;YACvB,kCAAsB;YACtB,iCAAqB;YACrB,mCAAuB;YACvB,iCAAqB;YACrB,iCAAqB;YACrB,iCAAqB;YACrB,iCAAqB;YACrB,gCAAoB;SACrB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,kCAAsB,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,0CAA8B,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;AAzFD,8DAyFC"}
|
|
@@ -2,6 +2,8 @@ import { ChatService } from '../../ChatService';
|
|
|
2
2
|
import type { OpenAIReasoningEffort } from '../../../constants';
|
|
3
3
|
import type { ChatResponseLength } from '../../../constants/chat';
|
|
4
4
|
import type { MCPServerConfig, Message, MessageWithVision, ToolChatCompletion, ToolDefinition } from '../../../types';
|
|
5
|
+
import type { BaseChatServiceOptions } from '../ChatServiceProvider';
|
|
6
|
+
type OpenAIResponseFormat = NonNullable<BaseChatServiceOptions['responseFormat']>;
|
|
5
7
|
/**
|
|
6
8
|
* OpenAI implementation of ChatService
|
|
7
9
|
*/
|
|
@@ -18,13 +20,14 @@ export declare class OpenAIChatService implements ChatService {
|
|
|
18
20
|
private verbosity?;
|
|
19
21
|
private reasoning_effort?;
|
|
20
22
|
private enableReasoningSummary?;
|
|
23
|
+
private responseFormat?;
|
|
21
24
|
/**
|
|
22
25
|
* Constructor
|
|
23
26
|
* @param apiKey OpenAI API key
|
|
24
27
|
* @param model Name of the model to use
|
|
25
28
|
* @param visionModel Name of the vision model
|
|
26
29
|
*/
|
|
27
|
-
constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[], endpoint?: string, mcpServers?: MCPServerConfig[], responseLength?: ChatResponseLength, verbosity?: 'low' | 'medium' | 'high', reasoning_effort?: OpenAIReasoningEffort, enableReasoningSummary?: boolean, provider?: string, validateVisionModel?: boolean);
|
|
30
|
+
constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[], endpoint?: string, mcpServers?: MCPServerConfig[], responseLength?: ChatResponseLength, verbosity?: 'low' | 'medium' | 'high', reasoning_effort?: OpenAIReasoningEffort, enableReasoningSummary?: boolean, provider?: string, validateVisionModel?: boolean, responseFormat?: OpenAIResponseFormat);
|
|
28
31
|
/**
|
|
29
32
|
* Get the current model name
|
|
30
33
|
* @returns Model name
|
|
@@ -77,4 +80,5 @@ export declare class OpenAIChatService implements ChatService {
|
|
|
77
80
|
private parseStream;
|
|
78
81
|
private parseOneShot;
|
|
79
82
|
}
|
|
83
|
+
export {};
|
|
80
84
|
//# sourceMappingURL=OpenAIChatService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACf,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenAIChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAerE,KAAK,oBAAoB,GAAG,WAAW,CACrC,sBAAsB,CAAC,gBAAgB,CAAC,CACzC,CAAC;AAEF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,SAAS,CAAC,CAA4B;IAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAwB;IACjD,OAAO,CAAC,sBAAsB,CAAC,CAAU;IACzC,OAAO,CAAC,cAAc,CAAC,CAAuB;IAE9C;;;;;OAKG;gBAED,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAA0B,EACjC,WAAW,GAAE,MAA0B,EACvC,KAAK,CAAC,EAAE,cAAc,EAAE,EACxB,QAAQ,GAAE,MAA6C,EACvD,UAAU,GAAE,eAAe,EAAO,EAClC,cAAc,CAAC,EAAE,kBAAkB,EACnC,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,EACrC,gBAAgB,CAAC,EAAE,qBAAqB,EACxC,sBAAsB,GAAE,OAAe,EACvC,QAAQ,GAAE,MAAiB,EAC3B,mBAAmB,GAAE,OAAc,EACnC,cAAc,CAAC,EAAE,oBAAoB;IA0BvC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;;OAKG;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;IA6BhB;;;;;;OAMG;IACG,iBAAiB,CACrB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,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;IAuChB;;;;;;;OAOG;IACG,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,UAAO,EACb,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAK9B;;;;;;;OAOG;IACG,cAAc,CAClB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAU9B;;OAEG;YACW,aAAa;YAkBb,UAAU;YAiCV,YAAY;YAIZ,WAAW;IASzB,OAAO,CAAC,YAAY;CAGrB"}
|
|
@@ -17,7 +17,7 @@ class OpenAIChatService {
|
|
|
17
17
|
* @param model Name of the model to use
|
|
18
18
|
* @param visionModel Name of the vision model
|
|
19
19
|
*/
|
|
20
|
-
constructor(apiKey, model = constants_1.MODEL_GPT_4O_MINI, visionModel = constants_1.MODEL_GPT_4O_MINI, tools, endpoint = constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API, mcpServers = [], responseLength, verbosity, reasoning_effort, enableReasoningSummary = false, provider = 'openai', validateVisionModel = true) {
|
|
20
|
+
constructor(apiKey, model = constants_1.MODEL_GPT_4O_MINI, visionModel = constants_1.MODEL_GPT_4O_MINI, tools, endpoint = constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API, mcpServers = [], responseLength, verbosity, reasoning_effort, enableReasoningSummary = false, provider = 'openai', validateVisionModel = true, responseFormat) {
|
|
21
21
|
this.provider = provider;
|
|
22
22
|
this.apiKey = apiKey;
|
|
23
23
|
this.model = model;
|
|
@@ -29,6 +29,7 @@ class OpenAIChatService {
|
|
|
29
29
|
this.verbosity = verbosity;
|
|
30
30
|
this.reasoning_effort = reasoning_effort;
|
|
31
31
|
this.enableReasoningSummary = enableReasoningSummary;
|
|
32
|
+
this.responseFormat = responseFormat;
|
|
32
33
|
// Official OpenAI validates vision model names strictly.
|
|
33
34
|
// Compatible providers can skip this to support arbitrary local IDs.
|
|
34
35
|
if (validateVisionModel && !constants_1.VISION_SUPPORTED_MODELS.includes(visionModel)) {
|
|
@@ -168,6 +169,7 @@ class OpenAIChatService {
|
|
|
168
169
|
verbosity: this.verbosity,
|
|
169
170
|
reasoning_effort: this.reasoning_effort,
|
|
170
171
|
enableReasoningSummary: this.enableReasoningSummary,
|
|
172
|
+
responseFormat: this.responseFormat,
|
|
171
173
|
maxTokens,
|
|
172
174
|
});
|
|
173
175
|
const headers = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":";;;AACA,kDAK4B;
|
|
1
|
+
{"version":3,"file":"OpenAIChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;
|
|
1
|
+
{"version":3,"file":"OpenAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IA8DjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAsB9B;;;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;IAIhE;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;CA+BjC"}
|
|
@@ -50,7 +50,23 @@ class OpenAIChatServiceProvider {
|
|
|
50
50
|
(shouldUseResponsesAPI
|
|
51
51
|
? constants_1.ENDPOINT_OPENAI_RESPONSES_API
|
|
52
52
|
: constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API);
|
|
53
|
-
|
|
53
|
+
const serviceArgs = [
|
|
54
|
+
optimizedOptions.apiKey,
|
|
55
|
+
modelName,
|
|
56
|
+
visionModel,
|
|
57
|
+
tools,
|
|
58
|
+
endpoint,
|
|
59
|
+
mcpServers,
|
|
60
|
+
optimizedOptions.responseLength,
|
|
61
|
+
optimizedOptions.verbosity,
|
|
62
|
+
optimizedOptions.reasoning_effort,
|
|
63
|
+
optimizedOptions.enableReasoningSummary,
|
|
64
|
+
this.getProviderName(),
|
|
65
|
+
];
|
|
66
|
+
if (optimizedOptions.responseFormat !== undefined) {
|
|
67
|
+
serviceArgs.push(true, optimizedOptions.responseFormat);
|
|
68
|
+
}
|
|
69
|
+
return new OpenAIChatService_1.OpenAIChatService(...serviceArgs);
|
|
54
70
|
}
|
|
55
71
|
/**
|
|
56
72
|
* Get the provider name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":";;;AAAA,kDA6B4B;AAC5B,kDAAuD;AAEvD,2DAAwD;AAOxD,0CAAoD;AAEpD;;GAEG;AACH,MAAa,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,sCAAsC;QACtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC3D,gFAAgF;QAChF,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC;YACrC,KAAK,EAAE,gBAAgB,CAAC,KAAK;YAC7B,WAAW,EAAE,gBAAgB,CAAC,WAAW;YACzC,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,mBAAmB;QACnB,MAAM,KAAK,GAAiC,gBAAgB,CAAC,KAAK,CAAC;QAEnE,kFAAkF;QAClF,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QAEnE,gCAAgC;QAChC,IAAI,qBAAqB,GAAG,KAAK,CAAC;QAElC,iDAAiD;QACjD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,qBAAqB,GAAG,IAAI,CAAC;QAC/B,CAAC;aAAM,IAAI,IAAA,oCAAwB,EAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,oCAAoC;YACpC,qBAAqB,GAAG,IAAI,CAAC;QAC/B,CAAC;aAAM,IAAI,IAAA,uBAAW,EAAC,SAAS,CAAC,EAAE,CAAC;YAClC,iEAAiE;YACjE,MAAM,UAAU,GAAG,gBAAgB,CAAC,sBAAsB,IAAI,MAAM,CAAC,CAAC,gCAAgC;YACtG,qBAAqB,GAAG,UAAU,KAAK,WAAW,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GACZ,gBAAgB,CAAC,QAAQ;YACzB,CAAC,qBAAqB;gBACpB,CAAC,CAAC,yCAA6B;gBAC/B,CAAC,CAAC,gDAAoC,CAAC,CAAC;QAE5C,
|
|
1
|
+
{"version":3,"file":"OpenAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { OpenAIReasoningEffort } from '../../../constants';
|
|
2
2
|
import { ChatResponseLength } from '../../../constants/chat';
|
|
3
3
|
import type { MCPServerConfig, Message, MessageWithVision, ToolDefinition } from '../../../types';
|
|
4
|
+
import type { BaseChatServiceOptions } from '../ChatServiceProvider';
|
|
5
|
+
type OpenAIResponseFormat = NonNullable<BaseChatServiceOptions['responseFormat']>;
|
|
4
6
|
type BuildOpenAIRequestBodyOptions = {
|
|
5
7
|
provider: string;
|
|
6
8
|
endpoint: string;
|
|
@@ -13,12 +15,13 @@ type BuildOpenAIRequestBodyOptions = {
|
|
|
13
15
|
verbosity?: 'low' | 'medium' | 'high';
|
|
14
16
|
reasoning_effort?: OpenAIReasoningEffort;
|
|
15
17
|
enableReasoningSummary?: boolean;
|
|
18
|
+
responseFormat?: OpenAIResponseFormat;
|
|
16
19
|
maxTokens?: number;
|
|
17
20
|
};
|
|
18
21
|
/**
|
|
19
22
|
* Build request body based on the endpoint type.
|
|
20
23
|
*/
|
|
21
|
-
export declare function buildOpenAIRequestBody({ provider, endpoint, messages, model, stream, tools, mcpServers, responseLength, verbosity, reasoning_effort, enableReasoningSummary, maxTokens, }: BuildOpenAIRequestBodyOptions): any;
|
|
24
|
+
export declare function buildOpenAIRequestBody({ provider, endpoint, messages, model, stream, tools, mcpServers, responseLength, verbosity, reasoning_effort, enableReasoningSummary, responseFormat, maxTokens, }: BuildOpenAIRequestBodyOptions): any;
|
|
22
25
|
type ResolveOpenAITokenLimitOptions = {
|
|
23
26
|
provider: string;
|
|
24
27
|
model: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openaiRequestBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/openaiRequestBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,EAKtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,cAAc,EACf,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"openaiRequestBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/openaiRequestBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,EAKtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGrE,KAAK,oBAAoB,GAAG,WAAW,CACrC,sBAAsB,CAAC,gBAAgB,CAAC,CACzC,CAAC;AA4BF,KAAK,6BAA6B,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,OAAO,GAAG,iBAAiB,CAAC,EAAE,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAaF;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,MAAM,EACN,KAAK,EACL,UAAU,EACV,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,SAAS,GACV,EAAE,6BAA6B,GAAG,GAAG,CAwHrC;AAED,KAAK,8BAA8B,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,EACtC,QAAQ,EACR,KAAK,EACL,cAAc,EACd,gBAAgB,EAChB,SAAS,GACV,EAAE,8BAA8B,GAAG,MAAM,GAAG,SAAS,CA2BrD;AAmBD,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,CAAC,OAAO,GAAG,iBAAiB,CAAC,EAAE,GACxC,GAAG,EAAE,CAoCP;AAED,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,CAAC,OAAO,GAAG,iBAAiB,CAAC,EAAE,GACxC,GAAG,EAAE,CA2BP"}
|
|
@@ -30,10 +30,19 @@ const OPENAI_COMPATIBLE_CHAT_COMPLETIONS_PROVIDERS = new Set([
|
|
|
30
30
|
'sakana',
|
|
31
31
|
'plamo',
|
|
32
32
|
]);
|
|
33
|
+
function toResponsesTextFormat(responseFormat) {
|
|
34
|
+
if (responseFormat.type !== 'json_schema') {
|
|
35
|
+
return responseFormat;
|
|
36
|
+
}
|
|
37
|
+
return {
|
|
38
|
+
type: responseFormat.type,
|
|
39
|
+
...responseFormat.json_schema,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
33
42
|
/**
|
|
34
43
|
* Build request body based on the endpoint type.
|
|
35
44
|
*/
|
|
36
|
-
function buildOpenAIRequestBody({ provider, endpoint, messages, model, stream, tools, mcpServers, responseLength, verbosity, reasoning_effort, enableReasoningSummary, maxTokens, }) {
|
|
45
|
+
function buildOpenAIRequestBody({ provider, endpoint, messages, model, stream, tools, mcpServers, responseLength, verbosity, reasoning_effort, enableReasoningSummary, responseFormat, maxTokens, }) {
|
|
37
46
|
const isResponsesAPI = endpoint === constants_1.ENDPOINT_OPENAI_RESPONSES_API;
|
|
38
47
|
validateMCPCompatibility(endpoint, mcpServers);
|
|
39
48
|
const body = {
|
|
@@ -111,6 +120,17 @@ function buildOpenAIRequestBody({ provider, endpoint, messages, model, stream, t
|
|
|
111
120
|
}
|
|
112
121
|
}
|
|
113
122
|
}
|
|
123
|
+
if (responseFormat) {
|
|
124
|
+
if (isResponsesAPI) {
|
|
125
|
+
body.text = {
|
|
126
|
+
...body.text,
|
|
127
|
+
format: toResponsesTextFormat(responseFormat),
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
body.response_format = responseFormat;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
114
134
|
if (provider === 'mistral' &&
|
|
115
135
|
(0, constants_1.isMistralReasoningEffortModel)(model) &&
|
|
116
136
|
reasoning_effort &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openaiRequestBuilder.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/openaiRequestBuilder.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"openaiRequestBuilder.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/openaiRequestBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAICompatibleChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,kCAAkC,EAClC,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAGhC;;;;;;GAMG;AACH,qBAAa,mCACX,YAAW,mBAAmB,CAAC,kCAAkC,CAAC;IAElE,iBAAiB,CAAC,OAAO,EAAE,kCAAkC,GAAG,WAAW;
|
|
1
|
+
{"version":3,"file":"OpenAICompatibleChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,kCAAkC,EAClC,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAGhC;;;;;;GAMG;AACH,qBAAa,mCACX,YAAW,mBAAmB,CAAC,kCAAkC,CAAC;IAElE,iBAAiB,CAAC,OAAO,EAAE,kCAAkC,GAAG,WAAW;IAwB3E,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI/C,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB;IAIjE,eAAe,IAAI,MAAM;IAIzB,OAAO,CAAC,uBAAuB;CAmChC"}
|
|
@@ -12,7 +12,24 @@ const OpenAIChatService_1 = require("../openai/OpenAIChatService");
|
|
|
12
12
|
class OpenAICompatibleChatServiceProvider {
|
|
13
13
|
createChatService(options) {
|
|
14
14
|
this.validateRequiredOptions(options);
|
|
15
|
-
|
|
15
|
+
const serviceArgs = [
|
|
16
|
+
options.apiKey?.trim() ?? '',
|
|
17
|
+
options.model,
|
|
18
|
+
options.visionModel ?? options.model,
|
|
19
|
+
options.tools,
|
|
20
|
+
options.endpoint,
|
|
21
|
+
[],
|
|
22
|
+
options.responseLength,
|
|
23
|
+
options.verbosity,
|
|
24
|
+
options.reasoning_effort,
|
|
25
|
+
options.enableReasoningSummary,
|
|
26
|
+
this.getProviderName(),
|
|
27
|
+
false,
|
|
28
|
+
];
|
|
29
|
+
if (options.responseFormat !== undefined) {
|
|
30
|
+
serviceArgs.push(options.responseFormat);
|
|
31
|
+
}
|
|
32
|
+
return new OpenAIChatService_1.OpenAIChatService(...serviceArgs);
|
|
16
33
|
}
|
|
17
34
|
getProviderName() {
|
|
18
35
|
return 'openai-compatible';
|