@123toto/ai-app-assistant-server 0.2.1 → 0.2.3
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 +17 -0
- package/dist/express.d.cts +1 -1
- package/dist/express.d.ts +1 -1
- package/dist/index.cjs +27 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -3
- package/dist/index.d.ts +11 -3
- package/dist/index.js +26 -7
- package/dist/index.js.map +1 -1
- package/dist/{managed-server-CGmvVYsF.d.ts → managed-server-CusQWWBB.d.ts} +4 -2
- package/dist/{managed-server-CQb-RK-i.d.cts → managed-server-wXfu_9rp.d.cts} +4 -2
- package/dist/nest.cjs +2 -0
- package/dist/nest.cjs.map +1 -1
- package/dist/nest.d.cts +1 -1
- package/dist/nest.d.ts +1 -1
- package/dist/nest.js +2 -0
- package/dist/nest.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as AiAppAssistant, a as AiAppAssistantStreamEvent, b as AiAppAssistantConfiguration, B as BuiltInProvider } from './managed-server-
|
|
2
|
-
export { c as
|
|
1
|
+
import { A as AiAppAssistant, a as AiAppAssistantStreamEvent, b as AiAppAssistantConfiguration, B as BuiltInProvider } from './managed-server-wXfu_9rp.cjs';
|
|
2
|
+
export { c as AI_APP_ASSISTANT_PROVIDERS, d as AiAppAssistantAccessRule, e as AiAppAssistantConfigurationActor, f as AiAppAssistantConfigurationAdministration, g as AiAppAssistantConfigurationAuditChange, h as AiAppAssistantConfigurationAuditEntry, i as AiAppAssistantConfigurationAuditField, j as AiAppAssistantConfigurationChangeEvent, k as AiAppAssistantConfigurationConflictError, l as AiAppAssistantConfigurationManager, m as AiAppAssistantConfigurationManagerOptions, n as AiAppAssistantConfigurationRepository, o as AiAppAssistantConfigurationSaveResult, p as AiAppAssistantConfigurationSynchronizer, q as AiAppAssistantConfigurationView, r as AiAppAssistantGenerationEvent, s as AiAppAssistantGenerationOperation, t as AiAppAssistantKeyValueStore, u as AiAppAssistantManagedConfigurationSetup, v as AiAppAssistantManagedStorage, w as AiAppAssistantManagementError, x as AiAppAssistantManagementErrorCode, y as AiAppAssistantQuotaPolicy, z as AiAppAssistantQuotaResult, C as AiAppAssistantQuotaStore, D as AiAppAssistantRecentFailure, E as AiAppAssistantRedisClient, F as AiAppAssistantRedisQuotaClient, G as AiAppAssistantRedisTelemetryClient, H as AiAppAssistantRuntimeIdentity, I as AiAppAssistantSecretProtector, J as AiAppAssistantTelemetryStore, K as AiAppAssistantTelemetrySummary, L as AiModelDiscoveryError, N as AiModelInfo, O as AiProviderInfo, P as CreateAiAppAssistantConfigurationRepositoryOptions, Q as CreateManagedAiAppAssistantRuntimeOptions, R as CreateManagedAiAppAssistantServerOptions, S as ListAiModelsOptions, T as ManagedAiAppAssistantFetchHandlerOptions, U as ManagedAiAppAssistantFetchHandlers, V as ManagedAiAppAssistantRuntime, M as ManagedAiAppAssistantServer, W as createAes256GcmSecretProtector, X as createAiAppAssistant, Y as createAiAppAssistantConfigurationRepository, Z as createAiAppAssistantFailureEvent, _ as createDisabledSecretProtector, $ as createManagedAiAppAssistantFetchHandlers, a0 as createManagedAiAppAssistantRuntime, a1 as createManagedAiAppAssistantServer, a2 as createMemoryAiAppAssistantQuotaStore, a3 as createMemoryAiAppAssistantStore, a4 as createMemoryAiAppAssistantTelemetryStore, a5 as createPollingAiAppAssistantConfigurationSynchronizer, a6 as createRedisAiAppAssistantQuotaStore, a7 as createRedisAiAppAssistantStore, a8 as createRedisAiAppAssistantTelemetryStore, a9 as listAiModels, aa as listAiProviders, ab as validateAndSaveAiAppAssistantConfiguration } from './managed-server-wXfu_9rp.cjs';
|
|
3
3
|
import { AiAppAssistantRequest, AiAppAssistantResponse } from '@123toto/ai-app-assistant-contracts';
|
|
4
4
|
export { AiAppAssistantConfigurationFieldSource, AiAppAssistantConfigurationInput, AiAppAssistantConfigurationOptions, AiAppAssistantConnectionResult, AiAppAssistantConnectionTestInput, AiAppAssistantCredentials, AiAppAssistantManagedConfigurationView, AiAppAssistantModelInfoContract, AiAppAssistantProvider, AiAppAssistantProviderInfoContract, AiAppAssistantRequest, AiAppAssistantResponse, AiAppAssistantRuntimeConnection, AiAppAssistantRuntimeConnectionStatus, AiAppAssistantTransportEvent, EvidenceSource, GeneratedAnswer, PROTOCOL_VERSION, aiAppAssistantAccessRuleSchema, aiAppAssistantConfigurationInputSchema, aiAppAssistantConfigurationOptionsSchema, aiAppAssistantConfigurationSaveResultSchema, aiAppAssistantConnectionResultSchema, aiAppAssistantConnectionTestInputSchema, aiAppAssistantCredentialsSchema, aiAppAssistantManagedConfigurationViewSchema, aiAppAssistantModelInfoSchema, aiAppAssistantProviderInfoSchema, aiAppAssistantProviderSchema, aiAppAssistantRequestSchema, aiAppAssistantResponseSchema, aiAppAssistantTransportEventSchema } from '@123toto/ai-app-assistant-contracts';
|
|
5
5
|
import { IncomingMessage, ServerResponse } from 'node:http';
|
|
@@ -89,9 +89,17 @@ declare function createAiAppAssistantServer<TContext = undefined>(options: Creat
|
|
|
89
89
|
|
|
90
90
|
interface AiAppAssistantDeploymentDefaultsOptions {
|
|
91
91
|
enabled: boolean;
|
|
92
|
-
/** `
|
|
92
|
+
/** Provider selected by the host application. Allows `model` to remain a plain model identifier. */
|
|
93
|
+
provider?: BuiltInProvider;
|
|
94
|
+
/** Plain model identifier when `provider` is set, or legacy `provider:model` identifier. */
|
|
93
95
|
model?: string;
|
|
96
|
+
/** API key for the selected provider. Prefer this for one-provider deployments. */
|
|
97
|
+
apiKey?: string;
|
|
98
|
+
/** Provider endpoint override. Required by local providers such as Ollama. */
|
|
99
|
+
baseURL?: string;
|
|
100
|
+
/** @deprecated Prefer `provider` with the singular `apiKey` option. */
|
|
94
101
|
apiKeys?: Partial<Record<BuiltInProvider, string | undefined>>;
|
|
102
|
+
/** @deprecated Prefer `provider` with the singular `baseURL` option. */
|
|
95
103
|
baseURLs?: Partial<Record<BuiltInProvider, string | undefined>>;
|
|
96
104
|
access?: AiAppAssistantConfiguration["access"];
|
|
97
105
|
quota?: AiAppAssistantConfiguration["quota"];
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as AiAppAssistant, a as AiAppAssistantStreamEvent, b as AiAppAssistantConfiguration, B as BuiltInProvider } from './managed-server-
|
|
2
|
-
export { c as
|
|
1
|
+
import { A as AiAppAssistant, a as AiAppAssistantStreamEvent, b as AiAppAssistantConfiguration, B as BuiltInProvider } from './managed-server-CusQWWBB.js';
|
|
2
|
+
export { c as AI_APP_ASSISTANT_PROVIDERS, d as AiAppAssistantAccessRule, e as AiAppAssistantConfigurationActor, f as AiAppAssistantConfigurationAdministration, g as AiAppAssistantConfigurationAuditChange, h as AiAppAssistantConfigurationAuditEntry, i as AiAppAssistantConfigurationAuditField, j as AiAppAssistantConfigurationChangeEvent, k as AiAppAssistantConfigurationConflictError, l as AiAppAssistantConfigurationManager, m as AiAppAssistantConfigurationManagerOptions, n as AiAppAssistantConfigurationRepository, o as AiAppAssistantConfigurationSaveResult, p as AiAppAssistantConfigurationSynchronizer, q as AiAppAssistantConfigurationView, r as AiAppAssistantGenerationEvent, s as AiAppAssistantGenerationOperation, t as AiAppAssistantKeyValueStore, u as AiAppAssistantManagedConfigurationSetup, v as AiAppAssistantManagedStorage, w as AiAppAssistantManagementError, x as AiAppAssistantManagementErrorCode, y as AiAppAssistantQuotaPolicy, z as AiAppAssistantQuotaResult, C as AiAppAssistantQuotaStore, D as AiAppAssistantRecentFailure, E as AiAppAssistantRedisClient, F as AiAppAssistantRedisQuotaClient, G as AiAppAssistantRedisTelemetryClient, H as AiAppAssistantRuntimeIdentity, I as AiAppAssistantSecretProtector, J as AiAppAssistantTelemetryStore, K as AiAppAssistantTelemetrySummary, L as AiModelDiscoveryError, N as AiModelInfo, O as AiProviderInfo, P as CreateAiAppAssistantConfigurationRepositoryOptions, Q as CreateManagedAiAppAssistantRuntimeOptions, R as CreateManagedAiAppAssistantServerOptions, S as ListAiModelsOptions, T as ManagedAiAppAssistantFetchHandlerOptions, U as ManagedAiAppAssistantFetchHandlers, V as ManagedAiAppAssistantRuntime, M as ManagedAiAppAssistantServer, W as createAes256GcmSecretProtector, X as createAiAppAssistant, Y as createAiAppAssistantConfigurationRepository, Z as createAiAppAssistantFailureEvent, _ as createDisabledSecretProtector, $ as createManagedAiAppAssistantFetchHandlers, a0 as createManagedAiAppAssistantRuntime, a1 as createManagedAiAppAssistantServer, a2 as createMemoryAiAppAssistantQuotaStore, a3 as createMemoryAiAppAssistantStore, a4 as createMemoryAiAppAssistantTelemetryStore, a5 as createPollingAiAppAssistantConfigurationSynchronizer, a6 as createRedisAiAppAssistantQuotaStore, a7 as createRedisAiAppAssistantStore, a8 as createRedisAiAppAssistantTelemetryStore, a9 as listAiModels, aa as listAiProviders, ab as validateAndSaveAiAppAssistantConfiguration } from './managed-server-CusQWWBB.js';
|
|
3
3
|
import { AiAppAssistantRequest, AiAppAssistantResponse } from '@123toto/ai-app-assistant-contracts';
|
|
4
4
|
export { AiAppAssistantConfigurationFieldSource, AiAppAssistantConfigurationInput, AiAppAssistantConfigurationOptions, AiAppAssistantConnectionResult, AiAppAssistantConnectionTestInput, AiAppAssistantCredentials, AiAppAssistantManagedConfigurationView, AiAppAssistantModelInfoContract, AiAppAssistantProvider, AiAppAssistantProviderInfoContract, AiAppAssistantRequest, AiAppAssistantResponse, AiAppAssistantRuntimeConnection, AiAppAssistantRuntimeConnectionStatus, AiAppAssistantTransportEvent, EvidenceSource, GeneratedAnswer, PROTOCOL_VERSION, aiAppAssistantAccessRuleSchema, aiAppAssistantConfigurationInputSchema, aiAppAssistantConfigurationOptionsSchema, aiAppAssistantConfigurationSaveResultSchema, aiAppAssistantConnectionResultSchema, aiAppAssistantConnectionTestInputSchema, aiAppAssistantCredentialsSchema, aiAppAssistantManagedConfigurationViewSchema, aiAppAssistantModelInfoSchema, aiAppAssistantProviderInfoSchema, aiAppAssistantProviderSchema, aiAppAssistantRequestSchema, aiAppAssistantResponseSchema, aiAppAssistantTransportEventSchema } from '@123toto/ai-app-assistant-contracts';
|
|
5
5
|
import { IncomingMessage, ServerResponse } from 'node:http';
|
|
@@ -89,9 +89,17 @@ declare function createAiAppAssistantServer<TContext = undefined>(options: Creat
|
|
|
89
89
|
|
|
90
90
|
interface AiAppAssistantDeploymentDefaultsOptions {
|
|
91
91
|
enabled: boolean;
|
|
92
|
-
/** `
|
|
92
|
+
/** Provider selected by the host application. Allows `model` to remain a plain model identifier. */
|
|
93
|
+
provider?: BuiltInProvider;
|
|
94
|
+
/** Plain model identifier when `provider` is set, or legacy `provider:model` identifier. */
|
|
93
95
|
model?: string;
|
|
96
|
+
/** API key for the selected provider. Prefer this for one-provider deployments. */
|
|
97
|
+
apiKey?: string;
|
|
98
|
+
/** Provider endpoint override. Required by local providers such as Ollama. */
|
|
99
|
+
baseURL?: string;
|
|
100
|
+
/** @deprecated Prefer `provider` with the singular `apiKey` option. */
|
|
94
101
|
apiKeys?: Partial<Record<BuiltInProvider, string | undefined>>;
|
|
102
|
+
/** @deprecated Prefer `provider` with the singular `baseURL` option. */
|
|
95
103
|
baseURLs?: Partial<Record<BuiltInProvider, string | undefined>>;
|
|
96
104
|
access?: AiAppAssistantConfiguration["access"];
|
|
97
105
|
quota?: AiAppAssistantConfiguration["quota"];
|
package/dist/index.js
CHANGED
|
@@ -751,6 +751,7 @@ function quotaResult(count, resetAt, maxRequests, now) {
|
|
|
751
751
|
}
|
|
752
752
|
|
|
753
753
|
// src/provider-catalog.ts
|
|
754
|
+
var AI_APP_ASSISTANT_PROVIDERS = ["anthropic", "google", "mistral", "ollama", "openai"];
|
|
754
755
|
var PROVIDERS = Object.freeze([
|
|
755
756
|
{ id: "anthropic", label: "Anthropic", requiresApiKey: true, supportsModelDiscovery: true },
|
|
756
757
|
{ id: "google", label: "Google Gemini", requiresApiKey: true, supportsModelDiscovery: true },
|
|
@@ -2110,21 +2111,38 @@ function createAiAppAssistantDeploymentDefaults(options) {
|
|
|
2110
2111
|
const apiKeys = Object.fromEntries(
|
|
2111
2112
|
Object.entries(options.apiKeys ?? {}).map(([provider2, value]) => [provider2, value?.trim() || void 0])
|
|
2112
2113
|
);
|
|
2113
|
-
const
|
|
2114
|
+
const selectedProvider = options.provider;
|
|
2115
|
+
const selectedApiKey = options.apiKey?.trim() || void 0;
|
|
2116
|
+
const resolveApiKey = (provider2) => provider2 === selectedProvider ? selectedApiKey ?? apiKeys[provider2] : apiKeys[provider2];
|
|
2114
2117
|
if (!options.enabled || !options.model?.trim()) return { resolveApiKey };
|
|
2115
|
-
const
|
|
2116
|
-
|
|
2117
|
-
const
|
|
2118
|
+
const rawModel = options.model.trim();
|
|
2119
|
+
const legacyMatch = selectedProvider ? void 0 : rawModel.match(/^([^:/]+)[:/](.+)$/);
|
|
2120
|
+
const explicitMatch = selectedProvider ? rawModel.match(/^([^:]+):(.+)$/) : void 0;
|
|
2121
|
+
if (!selectedProvider && !legacyMatch) {
|
|
2122
|
+
throw new TypeError(`Invalid AI App Assistant model identifier: ${options.model}`);
|
|
2123
|
+
}
|
|
2124
|
+
const parsedProvider = legacyMatch?.[1] ?? explicitMatch?.[1];
|
|
2125
|
+
const modelProvider = parsedProvider === "gemini" ? "google" : parsedProvider ?? selectedProvider;
|
|
2126
|
+
const provider = modelProvider;
|
|
2118
2127
|
if (!listAiProviders().some((candidate) => candidate.id === provider)) {
|
|
2119
|
-
throw new TypeError(`Unsupported AI App Assistant provider: ${
|
|
2128
|
+
throw new TypeError(`Unsupported AI App Assistant provider: ${modelProvider}`);
|
|
2120
2129
|
}
|
|
2130
|
+
if (selectedProvider && explicitMatch && provider !== selectedProvider) {
|
|
2131
|
+
throw new TypeError(
|
|
2132
|
+
`AI App Assistant provider '${selectedProvider}' does not match model identifier '${options.model}'`
|
|
2133
|
+
);
|
|
2134
|
+
}
|
|
2135
|
+
const model = legacyMatch?.[2]?.trim() ?? explicitMatch?.[2]?.trim() ?? rawModel;
|
|
2121
2136
|
const apiKey = resolveApiKey(provider);
|
|
2122
|
-
const baseURL = options.baseURLs?.[provider]?.trim() || void 0;
|
|
2137
|
+
const baseURL = (provider === selectedProvider ? options.baseURL?.trim() : void 0) || options.baseURLs?.[provider]?.trim() || void 0;
|
|
2138
|
+
if (provider === "ollama" && !baseURL) {
|
|
2139
|
+
throw new TypeError("AI App Assistant local provider 'ollama' requires a base URL");
|
|
2140
|
+
}
|
|
2123
2141
|
return {
|
|
2124
2142
|
resolveApiKey,
|
|
2125
2143
|
configuration: {
|
|
2126
2144
|
provider,
|
|
2127
|
-
model
|
|
2145
|
+
model,
|
|
2128
2146
|
connectionSource: "environment",
|
|
2129
2147
|
...apiKey ? { apiKey } : {},
|
|
2130
2148
|
...baseURL ? { baseURL } : {},
|
|
@@ -2351,6 +2369,7 @@ import {
|
|
|
2351
2369
|
aiAppAssistantTransportEventSchema
|
|
2352
2370
|
} from "@123toto/ai-app-assistant-contracts";
|
|
2353
2371
|
export {
|
|
2372
|
+
AI_APP_ASSISTANT_PROVIDERS,
|
|
2354
2373
|
AiAppAssistantConfigurationConflictError,
|
|
2355
2374
|
AiAppAssistantConfigurationManager,
|
|
2356
2375
|
AiAppAssistantManagementError,
|