@yourgpt/llm-sdk 1.5.41 → 1.5.42

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.
@@ -0,0 +1,117 @@
1
+ import { j as LanguageModel } from '../../base-DdxolpKP.mjs';
2
+ import { A as AIProvider } from '../../types-Ck25ZYma.mjs';
3
+ import 'zod';
4
+
5
+ /**
6
+ * OpenRouter Provider - Modern Pattern
7
+ *
8
+ * OpenRouter provides a unified API to access 500+ AI models from 60+ providers
9
+ * (OpenAI, Anthropic, Google, Meta, Mistral, etc.) through a single endpoint.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * import { openrouter } from '@yourgpt/llm-sdk/openrouter';
14
+ * import { generateText } from '@yourgpt/llm-sdk';
15
+ *
16
+ * const result = await generateText({
17
+ * model: openrouter('anthropic/claude-3.5-sonnet'),
18
+ * prompt: 'Hello!',
19
+ * });
20
+ * ```
21
+ */
22
+
23
+ interface OpenRouterProviderOptions {
24
+ /** API key (defaults to OPENROUTER_API_KEY env var) */
25
+ apiKey?: string;
26
+ /** Base URL for API (defaults to https://openrouter.ai/api/v1) */
27
+ baseURL?: string;
28
+ /** Your site URL for OpenRouter rankings (HTTP-Referer header) */
29
+ siteUrl?: string;
30
+ /** Your app name for OpenRouter rankings (X-Title header) */
31
+ appName?: string;
32
+ /** Provider preferences for routing */
33
+ providerPreferences?: {
34
+ /** Preferred providers (e.g., ['anthropic', 'openai']) */
35
+ allow?: string[];
36
+ /** Blocked providers */
37
+ deny?: string[];
38
+ /** Order preference: 'price' | 'latency' | 'throughput' */
39
+ order?: "price" | "latency" | "throughput";
40
+ };
41
+ }
42
+ /**
43
+ * Create an OpenRouter language model
44
+ *
45
+ * OpenRouter provides access to 500+ models through a single API.
46
+ * Model IDs follow the format: provider/model-name
47
+ *
48
+ * @param modelId - Model ID (e.g., 'anthropic/claude-3.5-sonnet', 'openai/gpt-4o')
49
+ * @param options - Provider options
50
+ * @returns LanguageModel instance
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * // Basic usage
55
+ * const model = openrouter('anthropic/claude-3.5-sonnet');
56
+ *
57
+ * // With custom options
58
+ * const model = openrouter('openai/gpt-4o', {
59
+ * apiKey: 'sk-or-...',
60
+ * siteUrl: 'https://myapp.com',
61
+ * appName: 'My App',
62
+ * });
63
+ *
64
+ * // Use auto model selection
65
+ * const model = openrouter('openrouter/auto');
66
+ * ```
67
+ */
68
+ declare function openrouter(modelId: string, options?: OpenRouterProviderOptions): LanguageModel;
69
+
70
+ /**
71
+ * OpenRouter Provider
72
+ *
73
+ * OpenRouter is a unified API gateway that provides access to 500+ AI models
74
+ * from 60+ providers (OpenAI, Anthropic, Google, Meta, Mistral, etc.)
75
+ * through a single endpoint.
76
+ *
77
+ * Features:
78
+ * - Single API key for all models
79
+ * - Automatic fallbacks and routing
80
+ * - Cost optimization
81
+ * - Provider preferences
82
+ * - OpenAI-compatible API
83
+ *
84
+ * @see https://openrouter.ai/docs
85
+ */
86
+
87
+ interface OpenRouterProviderConfig {
88
+ /** API key (defaults to OPENROUTER_API_KEY env var) */
89
+ apiKey?: string;
90
+ /** Base URL for API */
91
+ baseUrl?: string;
92
+ /** Your site URL for OpenRouter rankings */
93
+ siteUrl?: string;
94
+ /** Your app name for OpenRouter rankings */
95
+ appName?: string;
96
+ }
97
+ /**
98
+ * Create an OpenRouter provider (callable, Vercel AI SDK style)
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * const or = createOpenRouter({ apiKey: '...' });
103
+ *
104
+ * // Callable - Vercel AI SDK style
105
+ * const model = or('anthropic/claude-3.5-sonnet');
106
+ *
107
+ * // Also supports method call (backward compatible)
108
+ * const model2 = or.languageModel('openai/gpt-4o');
109
+ *
110
+ * // Check capabilities
111
+ * const caps = or.getCapabilities('anthropic/claude-3.5-sonnet');
112
+ * ```
113
+ */
114
+ declare function createOpenRouter(config?: OpenRouterProviderConfig): AIProvider;
115
+ declare const createOpenRouterProvider: typeof createOpenRouter;
116
+
117
+ export { type OpenRouterProviderConfig, type OpenRouterProviderOptions, createOpenRouter, openrouter as createOpenRouterModel, createOpenRouterProvider, openrouter };
@@ -0,0 +1,117 @@
1
+ import { j as LanguageModel } from '../../base-DdxolpKP.js';
2
+ import { A as AIProvider } from '../../types-Dsz8SpdB.js';
3
+ import 'zod';
4
+
5
+ /**
6
+ * OpenRouter Provider - Modern Pattern
7
+ *
8
+ * OpenRouter provides a unified API to access 500+ AI models from 60+ providers
9
+ * (OpenAI, Anthropic, Google, Meta, Mistral, etc.) through a single endpoint.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * import { openrouter } from '@yourgpt/llm-sdk/openrouter';
14
+ * import { generateText } from '@yourgpt/llm-sdk';
15
+ *
16
+ * const result = await generateText({
17
+ * model: openrouter('anthropic/claude-3.5-sonnet'),
18
+ * prompt: 'Hello!',
19
+ * });
20
+ * ```
21
+ */
22
+
23
+ interface OpenRouterProviderOptions {
24
+ /** API key (defaults to OPENROUTER_API_KEY env var) */
25
+ apiKey?: string;
26
+ /** Base URL for API (defaults to https://openrouter.ai/api/v1) */
27
+ baseURL?: string;
28
+ /** Your site URL for OpenRouter rankings (HTTP-Referer header) */
29
+ siteUrl?: string;
30
+ /** Your app name for OpenRouter rankings (X-Title header) */
31
+ appName?: string;
32
+ /** Provider preferences for routing */
33
+ providerPreferences?: {
34
+ /** Preferred providers (e.g., ['anthropic', 'openai']) */
35
+ allow?: string[];
36
+ /** Blocked providers */
37
+ deny?: string[];
38
+ /** Order preference: 'price' | 'latency' | 'throughput' */
39
+ order?: "price" | "latency" | "throughput";
40
+ };
41
+ }
42
+ /**
43
+ * Create an OpenRouter language model
44
+ *
45
+ * OpenRouter provides access to 500+ models through a single API.
46
+ * Model IDs follow the format: provider/model-name
47
+ *
48
+ * @param modelId - Model ID (e.g., 'anthropic/claude-3.5-sonnet', 'openai/gpt-4o')
49
+ * @param options - Provider options
50
+ * @returns LanguageModel instance
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * // Basic usage
55
+ * const model = openrouter('anthropic/claude-3.5-sonnet');
56
+ *
57
+ * // With custom options
58
+ * const model = openrouter('openai/gpt-4o', {
59
+ * apiKey: 'sk-or-...',
60
+ * siteUrl: 'https://myapp.com',
61
+ * appName: 'My App',
62
+ * });
63
+ *
64
+ * // Use auto model selection
65
+ * const model = openrouter('openrouter/auto');
66
+ * ```
67
+ */
68
+ declare function openrouter(modelId: string, options?: OpenRouterProviderOptions): LanguageModel;
69
+
70
+ /**
71
+ * OpenRouter Provider
72
+ *
73
+ * OpenRouter is a unified API gateway that provides access to 500+ AI models
74
+ * from 60+ providers (OpenAI, Anthropic, Google, Meta, Mistral, etc.)
75
+ * through a single endpoint.
76
+ *
77
+ * Features:
78
+ * - Single API key for all models
79
+ * - Automatic fallbacks and routing
80
+ * - Cost optimization
81
+ * - Provider preferences
82
+ * - OpenAI-compatible API
83
+ *
84
+ * @see https://openrouter.ai/docs
85
+ */
86
+
87
+ interface OpenRouterProviderConfig {
88
+ /** API key (defaults to OPENROUTER_API_KEY env var) */
89
+ apiKey?: string;
90
+ /** Base URL for API */
91
+ baseUrl?: string;
92
+ /** Your site URL for OpenRouter rankings */
93
+ siteUrl?: string;
94
+ /** Your app name for OpenRouter rankings */
95
+ appName?: string;
96
+ }
97
+ /**
98
+ * Create an OpenRouter provider (callable, Vercel AI SDK style)
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * const or = createOpenRouter({ apiKey: '...' });
103
+ *
104
+ * // Callable - Vercel AI SDK style
105
+ * const model = or('anthropic/claude-3.5-sonnet');
106
+ *
107
+ * // Also supports method call (backward compatible)
108
+ * const model2 = or.languageModel('openai/gpt-4o');
109
+ *
110
+ * // Check capabilities
111
+ * const caps = or.getCapabilities('anthropic/claude-3.5-sonnet');
112
+ * ```
113
+ */
114
+ declare function createOpenRouter(config?: OpenRouterProviderConfig): AIProvider;
115
+ declare const createOpenRouterProvider: typeof createOpenRouter;
116
+
117
+ export { type OpenRouterProviderConfig, type OpenRouterProviderOptions, createOpenRouter, openrouter as createOpenRouterModel, createOpenRouterProvider, openrouter };