weave-typescript 0.13.0 → 0.15.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.
Files changed (121) hide show
  1. package/dist/index.d.ts +9 -16
  2. package/dist/index.js +13 -21
  3. package/dist/weaveapi/project/v1/project.pb.d.ts +69 -5
  4. package/dist/weaveapi/project/v1/project.pb.js +787 -62
  5. package/dist/weaveapi/project/v1/service.pb.d.ts +110 -69
  6. package/dist/weaveapi/project/v1/service.pb.js +1056 -392
  7. package/dist/weaveapi/task/v1/service.pb.d.ts +172 -0
  8. package/dist/weaveapi/task/v1/service.pb.js +1436 -0
  9. package/dist/weaveapi/task/v1/task.pb.d.ts +85 -0
  10. package/dist/weaveapi/task/v1/task.pb.js +802 -0
  11. package/dist/weavesql/atcdb/event_sql.d.ts +10 -0
  12. package/dist/weavesql/atcdb/event_sql.js +11 -1
  13. package/dist/weavesql/atcdb/mailbox_sql.d.ts +2 -2
  14. package/dist/weavesql/atcdb/mailbox_sql.js +1 -1
  15. package/dist/weavesql/weavedb/project_sql.d.ts +164 -41
  16. package/dist/weavesql/weavedb/project_sql.js +398 -103
  17. package/dist/weavesql/weavedb/task_sql.d.ts +210 -0
  18. package/dist/weavesql/weavedb/task_sql.js +430 -0
  19. package/package.json +2 -2
  20. package/dist/weaveapi/auth/v1/service.pb.d.ts +0 -709
  21. package/dist/weaveapi/auth/v1/service.pb.js +0 -5058
  22. package/dist/weaveapi/auth/v1/session.pb.d.ts +0 -43
  23. package/dist/weaveapi/auth/v1/session.pb.js +0 -308
  24. package/dist/weaveapi/auth/v1/usage.pb.d.ts +0 -76
  25. package/dist/weaveapi/auth/v1/usage.pb.js +0 -849
  26. package/dist/weaveapi/auth/v1/user.pb.d.ts +0 -141
  27. package/dist/weaveapi/auth/v1/user.pb.js +0 -1625
  28. package/dist/weaveapi/data/v1/data.pb.d.ts +0 -54
  29. package/dist/weaveapi/data/v1/data.pb.js +0 -411
  30. package/dist/weaveapi/data/v1/service.pb.d.ts +0 -296
  31. package/dist/weaveapi/data/v1/service.pb.js +0 -2777
  32. package/dist/weaveapi/generate/v1/configuration.pb.d.ts +0 -122
  33. package/dist/weaveapi/generate/v1/configuration.pb.js +0 -877
  34. package/dist/weaveapi/generate/v1/generate.pb.d.ts +0 -48
  35. package/dist/weaveapi/generate/v1/generate.pb.js +0 -367
  36. package/dist/weaveapi/generate/v1/service.pb.d.ts +0 -173
  37. package/dist/weaveapi/generate/v1/service.pb.js +0 -1207
  38. package/dist/weaveapi/input/v1/input.pb.d.ts +0 -77
  39. package/dist/weaveapi/input/v1/input.pb.js +0 -632
  40. package/dist/weaveapi/input/v1/service.pb.d.ts +0 -390
  41. package/dist/weaveapi/input/v1/service.pb.js +0 -3610
  42. package/dist/weaveapi/integration/v1/integration.pb.d.ts +0 -67
  43. package/dist/weaveapi/integration/v1/integration.pb.js +0 -486
  44. package/dist/weaveapi/integration/v1/service.pb.d.ts +0 -318
  45. package/dist/weaveapi/integration/v1/service.pb.js +0 -2992
  46. package/dist/weaveapi/llmx/v1/architecture.pb.d.ts +0 -665
  47. package/dist/weaveapi/llmx/v1/architecture.pb.js +0 -3028
  48. package/dist/weaveapi/llmx/v1/capabilities.pb.d.ts +0 -709
  49. package/dist/weaveapi/llmx/v1/capabilities.pb.js +0 -3458
  50. package/dist/weaveapi/llmx/v1/model.pb.d.ts +0 -375
  51. package/dist/weaveapi/llmx/v1/model.pb.js +0 -1472
  52. package/dist/weaveapi/llmx/v1/pricing.pb.d.ts +0 -340
  53. package/dist/weaveapi/llmx/v1/pricing.pb.js +0 -974
  54. package/dist/weaveapi/llmx/v1/provider.pb.d.ts +0 -72
  55. package/dist/weaveapi/llmx/v1/provider.pb.js +0 -218
  56. package/dist/weaveapi/llmx/v1/service.pb.d.ts +0 -683
  57. package/dist/weaveapi/llmx/v1/service.pb.js +0 -5311
  58. package/dist/weaveapi/mcpregistry/v1/server.pb.d.ts +0 -54
  59. package/dist/weaveapi/mcpregistry/v1/server.pb.js +0 -436
  60. package/dist/weaveapi/mcpregistry/v1/service.pb.d.ts +0 -171
  61. package/dist/weaveapi/mcpregistry/v1/service.pb.js +0 -963
  62. package/dist/weaveapi/payment/v1/invoice.pb.d.ts +0 -92
  63. package/dist/weaveapi/payment/v1/invoice.pb.js +0 -998
  64. package/dist/weaveapi/payment/v1/service.pb.d.ts +0 -662
  65. package/dist/weaveapi/payment/v1/service.pb.js +0 -5395
  66. package/dist/weaveapi/payment/v1/subscription.pb.d.ts +0 -165
  67. package/dist/weaveapi/payment/v1/subscription.pb.js +0 -1930
  68. package/dist/weaveapi/report/v1/report.pb.d.ts +0 -81
  69. package/dist/weaveapi/report/v1/report.pb.js +0 -678
  70. package/dist/weaveapi/report/v1/service.pb.d.ts +0 -194
  71. package/dist/weaveapi/report/v1/service.pb.js +0 -1923
  72. package/dist/weaveapi/requirement/v1/requirement.pb.d.ts +0 -70
  73. package/dist/weaveapi/requirement/v1/requirement.pb.js +0 -570
  74. package/dist/weaveapi/requirement/v1/service.pb.d.ts +0 -390
  75. package/dist/weaveapi/requirement/v1/service.pb.js +0 -3636
  76. package/dist/weaveapi/run/v1/run.pb.d.ts +0 -117
  77. package/dist/weaveapi/run/v1/run.pb.js +0 -1155
  78. package/dist/weaveapi/run/v1/service.pb.d.ts +0 -229
  79. package/dist/weaveapi/run/v1/service.pb.js +0 -2426
  80. package/dist/weaveapi/script/v1/script.pb.d.ts +0 -102
  81. package/dist/weaveapi/script/v1/script.pb.js +0 -1025
  82. package/dist/weaveapi/script/v1/service.pb.d.ts +0 -502
  83. package/dist/weaveapi/script/v1/service.pb.js +0 -4871
  84. package/dist/weaveapi/storage/v1/auth.pb.d.ts +0 -27
  85. package/dist/weaveapi/storage/v1/auth.pb.js +0 -110
  86. package/dist/weaveapi/storage/v1/nosql_database.pb.d.ts +0 -91
  87. package/dist/weaveapi/storage/v1/nosql_database.pb.js +0 -1056
  88. package/dist/weaveapi/storage/v1/object_store.pb.d.ts +0 -49
  89. package/dist/weaveapi/storage/v1/object_store.pb.js +0 -441
  90. package/dist/weaveapi/storage/v1/service.pb.d.ts +0 -245
  91. package/dist/weaveapi/storage/v1/service.pb.js +0 -1339
  92. package/dist/weaveapi/storage/v1/sql_database.pb.d.ts +0 -98
  93. package/dist/weaveapi/storage/v1/sql_database.pb.js +0 -1184
  94. package/dist/weaveapi/storage/v1/storage.pb.d.ts +0 -35
  95. package/dist/weaveapi/storage/v1/storage.pb.js +0 -198
  96. package/dist/weaveapi/storage/v1/vcs.pb.d.ts +0 -75
  97. package/dist/weaveapi/storage/v1/vcs.pb.js +0 -864
  98. package/dist/weaveapi/suite/v1/service.pb.d.ts +0 -539
  99. package/dist/weaveapi/suite/v1/service.pb.js +0 -5279
  100. package/dist/weaveapi/suite/v1/suite.pb.d.ts +0 -92
  101. package/dist/weaveapi/suite/v1/suite.pb.js +0 -876
  102. package/dist/weaveapi/synthesize/v1/dataset.pb.d.ts +0 -68
  103. package/dist/weaveapi/synthesize/v1/dataset.pb.js +0 -460
  104. package/dist/weaveapi/synthesize/v1/inline_data.pb.d.ts +0 -45
  105. package/dist/weaveapi/synthesize/v1/inline_data.pb.js +0 -166
  106. package/dist/weaveapi/synthesize/v1/relationship.pb.d.ts +0 -58
  107. package/dist/weaveapi/synthesize/v1/relationship.pb.js +0 -253
  108. package/dist/weaveapi/synthesize/v1/service.pb.d.ts +0 -144
  109. package/dist/weaveapi/synthesize/v1/service.pb.js +0 -937
  110. package/dist/weaveapi/synthesize/v1/training.pb.d.ts +0 -58
  111. package/dist/weaveapi/synthesize/v1/training.pb.js +0 -386
  112. package/dist/weaveapi/testcase/v1/service.pb.d.ts +0 -498
  113. package/dist/weaveapi/testcase/v1/service.pb.js +0 -4728
  114. package/dist/weaveapi/testcase/v1/testcase.pb.d.ts +0 -91
  115. package/dist/weaveapi/testcase/v1/testcase.pb.js +0 -794
  116. package/dist/weaveapi/workflow/v1/service.pb.d.ts +0 -261
  117. package/dist/weaveapi/workflow/v1/service.pb.js +0 -2120
  118. package/dist/weaveapi/workflow/v1/workflow.pb.d.ts +0 -77
  119. package/dist/weaveapi/workflow/v1/workflow.pb.js +0 -555
  120. package/dist/weaveapi/workflowdata/v1/service.pb.d.ts +0 -295
  121. package/dist/weaveapi/workflowdata/v1/service.pb.js +0 -2612
@@ -1,709 +0,0 @@
1
- import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
- export declare const protobufPackage = "weaveapi.llmx.v1";
3
- /** Core capability types that models can support */
4
- export declare enum CapabilityType {
5
- CAPABILITY_TYPE_UNSPECIFIED = 0,
6
- /** CAPABILITY_TYPE_TEXT - Basic text input/output capability */
7
- CAPABILITY_TYPE_TEXT = 1,
8
- /** CAPABILITY_TYPE_STRUCTURED_RESPONSE - Structured output (JSON, XML, etc.) */
9
- CAPABILITY_TYPE_STRUCTURED_RESPONSE = 2,
10
- /** CAPABILITY_TYPE_STREAMING - Server-sent or websocket streaming of partial outputs */
11
- CAPABILITY_TYPE_STREAMING = 3,
12
- /** CAPABILITY_TYPE_FUNCTION_CALLING - Tool/function calling with schemaed arguments */
13
- CAPABILITY_TYPE_FUNCTION_CALLING = 4,
14
- /** CAPABILITY_TYPE_VISION - Image understanding and/or generation */
15
- CAPABILITY_TYPE_VISION = 5,
16
- /** CAPABILITY_TYPE_TOOL_USE - General tool use beyond plain function calls */
17
- CAPABILITY_TYPE_TOOL_USE = 6,
18
- /** CAPABILITY_TYPE_SYSTEM_PROMPT - System messages/prompt steering support */
19
- CAPABILITY_TYPE_SYSTEM_PROMPT = 7,
20
- /** CAPABILITY_TYPE_CACHING - Prompt/context caching capabilities */
21
- CAPABILITY_TYPE_CACHING = 8,
22
- /** CAPABILITY_TYPE_REASONING - Advanced reasoning controls/strategies */
23
- CAPABILITY_TYPE_REASONING = 9,
24
- /** CAPABILITY_TYPE_AUDIO - Audio STT/TTS support */
25
- CAPABILITY_TYPE_AUDIO = 10,
26
- /** CAPABILITY_TYPE_VIDEO - Video analysis/generation support */
27
- CAPABILITY_TYPE_VIDEO = 11,
28
- /** CAPABILITY_TYPE_EMBEDDINGS - Vector embedding generation */
29
- CAPABILITY_TYPE_EMBEDDINGS = 12,
30
- /** CAPABILITY_TYPE_FINE_TUNING - Custom model training/fine-tuning */
31
- CAPABILITY_TYPE_FINE_TUNING = 13,
32
- UNRECOGNIZED = -1
33
- }
34
- export declare function capabilityTypeFromJSON(object: any): CapabilityType;
35
- export declare function capabilityTypeToJSON(object: CapabilityType): string;
36
- /** Data format types for structured responses, fine-tuning, etc. */
37
- export declare enum DataFormat {
38
- DATA_FORMAT_UNSPECIFIED = 0,
39
- DATA_FORMAT_JSON = 1,
40
- DATA_FORMAT_YAML = 2,
41
- DATA_FORMAT_XML = 3,
42
- DATA_FORMAT_JSONL = 4,
43
- DATA_FORMAT_CSV = 5,
44
- DATA_FORMAT_PARQUET = 6,
45
- DATA_FORMAT_PLAIN = 7,
46
- DATA_FORMAT_MARKDOWN = 8,
47
- DATA_FORMAT_STRUCTURED = 9,
48
- UNRECOGNIZED = -1
49
- }
50
- export declare function dataFormatFromJSON(object: any): DataFormat;
51
- export declare function dataFormatToJSON(object: DataFormat): string;
52
- /** JSON schema types supported in structured responses */
53
- export declare enum JsonSchemaType {
54
- JSON_SCHEMA_TYPE_UNSPECIFIED = 0,
55
- JSON_SCHEMA_TYPE_OBJECT = 1,
56
- JSON_SCHEMA_TYPE_ARRAY = 2,
57
- JSON_SCHEMA_TYPE_STRING = 3,
58
- JSON_SCHEMA_TYPE_NUMBER = 4,
59
- JSON_SCHEMA_TYPE_BOOLEAN = 5,
60
- JSON_SCHEMA_TYPE_NULL = 6,
61
- JSON_SCHEMA_TYPE_INTEGER = 7,
62
- UNRECOGNIZED = -1
63
- }
64
- export declare function jsonSchemaTypeFromJSON(object: any): JsonSchemaType;
65
- export declare function jsonSchemaTypeToJSON(object: JsonSchemaType): string;
66
- /** Image formats */
67
- export declare enum ImageFormat {
68
- IMAGE_FORMAT_UNSPECIFIED = 0,
69
- IMAGE_FORMAT_JPEG = 1,
70
- IMAGE_FORMAT_PNG = 2,
71
- IMAGE_FORMAT_GIF = 3,
72
- IMAGE_FORMAT_WEBP = 4,
73
- IMAGE_FORMAT_BMP = 5,
74
- IMAGE_FORMAT_TIFF = 6,
75
- IMAGE_FORMAT_SVG = 7,
76
- UNRECOGNIZED = -1
77
- }
78
- export declare function imageFormatFromJSON(object: any): ImageFormat;
79
- export declare function imageFormatToJSON(object: ImageFormat): string;
80
- /** Audio formats */
81
- export declare enum AudioFormat {
82
- AUDIO_FORMAT_UNSPECIFIED = 0,
83
- AUDIO_FORMAT_MP3 = 1,
84
- AUDIO_FORMAT_WAV = 2,
85
- AUDIO_FORMAT_OGG = 3,
86
- AUDIO_FORMAT_M4A = 4,
87
- AUDIO_FORMAT_FLAC = 5,
88
- AUDIO_FORMAT_AAC = 6,
89
- AUDIO_FORMAT_WMA = 7,
90
- AUDIO_FORMAT_OPUS = 8,
91
- UNRECOGNIZED = -1
92
- }
93
- export declare function audioFormatFromJSON(object: any): AudioFormat;
94
- export declare function audioFormatToJSON(object: AudioFormat): string;
95
- /** Video formats */
96
- export declare enum VideoFormat {
97
- VIDEO_FORMAT_UNSPECIFIED = 0,
98
- VIDEO_FORMAT_MP4 = 1,
99
- VIDEO_FORMAT_AVI = 2,
100
- VIDEO_FORMAT_MOV = 3,
101
- VIDEO_FORMAT_MKV = 4,
102
- VIDEO_FORMAT_WEBM = 5,
103
- VIDEO_FORMAT_FLV = 6,
104
- VIDEO_FORMAT_WMV = 7,
105
- UNRECOGNIZED = -1
106
- }
107
- export declare function videoFormatFromJSON(object: any): VideoFormat;
108
- export declare function videoFormatToJSON(object: VideoFormat): string;
109
- /** Tool types supported */
110
- export declare enum ToolType {
111
- TOOL_TYPE_UNSPECIFIED = 0,
112
- TOOL_TYPE_FUNCTION = 1,
113
- TOOL_TYPE_RETRIEVAL = 2,
114
- TOOL_TYPE_CODE_INTERPRETER = 3,
115
- TOOL_TYPE_WEB_BROWSER = 4,
116
- TOOL_TYPE_DATABASE = 5,
117
- TOOL_TYPE_API = 6,
118
- TOOL_TYPE_CUSTOM = 7,
119
- UNRECOGNIZED = -1
120
- }
121
- export declare function toolTypeFromJSON(object: any): ToolType;
122
- export declare function toolTypeToJSON(object: ToolType): string;
123
- /** Cache key strategies */
124
- export declare enum CacheStrategy {
125
- CACHE_STRATEGY_UNSPECIFIED = 0,
126
- CACHE_STRATEGY_HASH = 1,
127
- CACHE_STRATEGY_SEMANTIC = 2,
128
- CACHE_STRATEGY_CUSTOM = 3,
129
- CACHE_STRATEGY_PREFIX = 4,
130
- CACHE_STRATEGY_SUFFIX = 5,
131
- UNRECOGNIZED = -1
132
- }
133
- export declare function cacheStrategyFromJSON(object: any): CacheStrategy;
134
- export declare function cacheStrategyToJSON(object: CacheStrategy): string;
135
- /** Reasoning strategies */
136
- export declare enum ReasoningStrategy {
137
- REASONING_STRATEGY_UNSPECIFIED = 0,
138
- REASONING_STRATEGY_CHAIN_OF_THOUGHT = 1,
139
- REASONING_STRATEGY_TREE_OF_THOUGHTS = 2,
140
- REASONING_STRATEGY_GRAPH_OF_THOUGHTS = 3,
141
- REASONING_STRATEGY_STEP_BY_STEP = 4,
142
- REASONING_STRATEGY_SELF_CONSISTENCY = 5,
143
- REASONING_STRATEGY_LEAST_TO_MOST = 6,
144
- UNRECOGNIZED = -1
145
- }
146
- export declare function reasoningStrategyFromJSON(object: any): ReasoningStrategy;
147
- export declare function reasoningStrategyToJSON(object: ReasoningStrategy): string;
148
- /** Distance metrics for embeddings */
149
- export declare enum DistanceMetric {
150
- DISTANCE_METRIC_UNSPECIFIED = 0,
151
- DISTANCE_METRIC_COSINE = 1,
152
- DISTANCE_METRIC_EUCLIDEAN = 2,
153
- DISTANCE_METRIC_DOT_PRODUCT = 3,
154
- DISTANCE_METRIC_MANHATTAN = 4,
155
- DISTANCE_METRIC_HAMMING = 5,
156
- UNRECOGNIZED = -1
157
- }
158
- export declare function distanceMetricFromJSON(object: any): DistanceMetric;
159
- export declare function distanceMetricToJSON(object: DistanceMetric): string;
160
- /** Hyperparameter types for fine-tuning */
161
- export declare enum Hyperparameter {
162
- HYPERPARAMETER_UNSPECIFIED = 0,
163
- HYPERPARAMETER_LEARNING_RATE = 1,
164
- HYPERPARAMETER_BATCH_SIZE = 2,
165
- HYPERPARAMETER_EPOCHS = 3,
166
- HYPERPARAMETER_WARMUP_STEPS = 4,
167
- HYPERPARAMETER_WEIGHT_DECAY = 5,
168
- HYPERPARAMETER_GRADIENT_ACCUMULATION = 6,
169
- HYPERPARAMETER_LR_SCHEDULER = 7,
170
- HYPERPARAMETER_OPTIMIZER = 8,
171
- HYPERPARAMETER_DROPOUT = 9,
172
- HYPERPARAMETER_MAX_SEQUENCE_LENGTH = 10,
173
- UNRECOGNIZED = -1
174
- }
175
- export declare function hyperparameterFromJSON(object: any): Hyperparameter;
176
- export declare function hyperparameterToJSON(object: Hyperparameter): string;
177
- /** Modality direction - whether a modality supports input, output, or both */
178
- export declare enum ModalityDirection {
179
- MODALITY_DIRECTION_UNSPECIFIED = 0,
180
- /** MODALITY_DIRECTION_INPUT_ONLY - Can only process/analyze (e.g., image analysis) */
181
- MODALITY_DIRECTION_INPUT_ONLY = 1,
182
- /** MODALITY_DIRECTION_OUTPUT_ONLY - Can only generate (e.g., TTS without STT) */
183
- MODALITY_DIRECTION_OUTPUT_ONLY = 2,
184
- /** MODALITY_DIRECTION_INPUT_OUTPUT - Can both process and generate */
185
- MODALITY_DIRECTION_INPUT_OUTPUT = 3,
186
- UNRECOGNIZED = -1
187
- }
188
- export declare function modalityDirectionFromJSON(object: any): ModalityDirection;
189
- export declare function modalityDirectionToJSON(object: ModalityDirection): string;
190
- /**
191
- * Capability represents a specific feature/ability of a model with its configuration.
192
- * Each capability has a type and optional detailed configuration.
193
- */
194
- export interface Capability {
195
- /**
196
- * The type of capability this represents.
197
- * Example: CAPABILITY_TYPE_FUNCTION_CALLING for function/tool calling
198
- */
199
- type: CapabilityType;
200
- /**
201
- * Whether this capability is currently enabled/available.
202
- * Example: true if the model supports and has this feature active
203
- */
204
- enabled: boolean;
205
- text?: Text | undefined;
206
- structuredResponse?: StructuredResponse | undefined;
207
- streaming?: Streaming | undefined;
208
- functionCalling?: FunctionCalling | undefined;
209
- vision?: Vision | undefined;
210
- toolUse?: ToolUse | undefined;
211
- systemPrompt?: SystemPrompt | undefined;
212
- caching?: Caching | undefined;
213
- reasoning?: Reasoning | undefined;
214
- audio?: Audio | undefined;
215
- video?: Video | undefined;
216
- embeddings?: Embeddings | undefined;
217
- fineTuning?: FineTuning | undefined;
218
- /**
219
- * Unstructured additional information about this capability.
220
- * Used for provider-specific details that don't fit the structured fields.
221
- * Example: "Supports up to 10 parallel function calls with automatic retry"
222
- * Example: "Beta feature - may have unexpected behavior"
223
- * Example: "Optimized for conversational use cases"
224
- */
225
- additionalInfo: string;
226
- }
227
- /** Text capability configuration for basic text input/output */
228
- export interface Text {
229
- /**
230
- * Direction of text support (input, output, or both)
231
- * Example: MODALITY_DIRECTION_INPUT_OUTPUT for chat models
232
- */
233
- direction: ModalityDirection;
234
- /**
235
- * Maximum input text length in characters (if limited)
236
- * Example: 32000 for models with character limits
237
- */
238
- maxInputLength: number;
239
- /**
240
- * Maximum output text length in characters (if limited)
241
- * Example: 4096 for models with output limits
242
- */
243
- maxOutputLength: number;
244
- /**
245
- * Supported languages for text processing
246
- * Examples: ["en", "es", "fr", "de", "zh", "ja"]
247
- */
248
- supportedLanguages: string[];
249
- /**
250
- * Whether the model supports multi-turn conversations
251
- * Example: true for chat models, false for completion-only models
252
- */
253
- supportsConversation: boolean;
254
- /**
255
- * Whether the model can maintain context across messages
256
- * Example: true for stateful models
257
- */
258
- supportsContext: boolean;
259
- }
260
- /** Structured response capability configuration */
261
- export interface StructuredResponse {
262
- /**
263
- * Optional guidance to include in the system prompt to elicit structured output
264
- * Example: "Always return valid JSON matching the provided schema"
265
- */
266
- systemPromptHint: string;
267
- /**
268
- * Supported output formats for structured responses
269
- * Examples: [DATA_FORMAT_JSON, DATA_FORMAT_YAML]
270
- */
271
- supportedFormats: DataFormat[];
272
- /**
273
- * Maximum allowed nesting depth for JSON schema objects/arrays
274
- * Example: 5 for moderately complex schemas
275
- */
276
- maxSchemaDepth: number;
277
- /**
278
- * Whether structured output requires tool/function use (vs. direct generation)
279
- * Example: true for providers that only return JSON via tool calls
280
- */
281
- requiresToolUse: boolean;
282
- /**
283
- * Whether the model must be in a special "JSON mode" to honor schemas
284
- * Example: true for models that enforce strict JSON output when enabled
285
- */
286
- requiresJsonMode: boolean;
287
- /**
288
- * Maximum number of top-level properties in object schemas
289
- * Example: 50
290
- */
291
- maxProperties: number;
292
- /**
293
- * JSON Schema primitive/types supported by the model
294
- * Examples: [JSON_SCHEMA_TYPE_OBJECT, JSON_SCHEMA_TYPE_ARRAY, JSON_SCHEMA_TYPE_STRING]
295
- */
296
- supportedTypes: JsonSchemaType[];
297
- /**
298
- * Can stream structured responses (not just generate them)
299
- * Example: true if partial JSON chunks are streamed
300
- */
301
- supportsStreaming: boolean;
302
- }
303
- /** Streaming capability configuration */
304
- export interface Streaming {
305
- /**
306
- * Delimiter used between streamed chunks, if any
307
- * Example: "\n\n" for event-stream boundaries
308
- */
309
- chunkDelimiter: string;
310
- /**
311
- * Preferred buffer size used by the provider when batching output
312
- * Example: 1024 (bytes)
313
- */
314
- bufferSize: number;
315
- /**
316
- * Whether Server-Sent Events (SSE) is supported
317
- * Example: true if provider uses text/event-stream
318
- */
319
- supportsSse: boolean;
320
- /**
321
- * Whether token usage info can be emitted incrementally during streaming
322
- * Example: true if usage deltas are included in stream
323
- */
324
- supportsUsage: boolean;
325
- /**
326
- * Typical size of individual streamed chunks in bytes
327
- * Example: 256
328
- */
329
- avgChunkSizeBytes: number;
330
- /**
331
- * Maximum delay between streamed chunks in milliseconds
332
- * Example: 200
333
- */
334
- maxChunkDelayMs: number;
335
- }
336
- /** Function calling capability configuration */
337
- export interface FunctionCalling {
338
- /**
339
- * Maximum number of functions that can be registered per request
340
- * Example: 128
341
- */
342
- maxFunctions: number;
343
- /**
344
- * Maximum number of tool/function calls that may be executed in parallel
345
- * Example: 5
346
- */
347
- maxParallelCalls: number;
348
- /**
349
- * Whether the model can plan and invoke multiple tools concurrently
350
- * Example: true for models with parallel tool-use orchestration
351
- */
352
- supportsParallel: boolean;
353
- /**
354
- * Whether requests must use a special "tool" role or channel for calls
355
- * Example: true if provider requires tool role messages
356
- */
357
- requiresToolRole: boolean;
358
- /**
359
- * Whether intermediate tool call tokens/results are streamable
360
- * Example: true if tool call arguments/results are streamed as they are produced
361
- */
362
- supportsStreaming: boolean;
363
- /**
364
- * JSON schema types supported for function parameters
365
- * Examples: [JSON_SCHEMA_TYPE_OBJECT, JSON_SCHEMA_TYPE_ARRAY, JSON_SCHEMA_TYPE_STRING]
366
- */
367
- supportedParameterTypes: JsonSchemaType[];
368
- /**
369
- * Maximum nesting depth allowed for function/tool call plans
370
- * Example: 3 for limited recursion
371
- */
372
- maxNestingDepth: number;
373
- }
374
- /** Vision capability configuration */
375
- export interface Vision {
376
- /**
377
- * Direction of vision support
378
- * Example: MODALITY_DIRECTION_INPUT_ONLY for analysis-only models
379
- * Example: MODALITY_DIRECTION_OUTPUT_ONLY for image generation models (DALL-E)
380
- * Example: MODALITY_DIRECTION_INPUT_OUTPUT for models that can both analyze and generate
381
- */
382
- direction: ModalityDirection;
383
- /**
384
- * Supported image file formats
385
- * Examples: [IMAGE_FORMAT_JPEG, IMAGE_FORMAT_PNG, IMAGE_FORMAT_WEBP]
386
- */
387
- supportedFormats: ImageFormat[];
388
- /**
389
- * Maximum size per image in bytes
390
- * Example: 20971520 (20MB) for GPT-4-vision
391
- */
392
- maxImageSizeBytes: number;
393
- /**
394
- * Maximum images per API request (for input)
395
- * Example: 10 for GPT-4-vision, 1 for some models
396
- */
397
- maxImagesPerRequest: number;
398
- /**
399
- * Maximum image width in pixels
400
- * Example: 4096 for high-resolution support
401
- */
402
- maxResolutionWidth: number;
403
- /**
404
- * Maximum image height in pixels
405
- * Example: 4096 for high-resolution support
406
- */
407
- maxResolutionHeight: number;
408
- /**
409
- * Supports optical character recognition
410
- * Example: true if model can extract text from images
411
- */
412
- supportsOcr: boolean;
413
- /**
414
- * Supports object detection/localization
415
- * Example: true if model can identify and locate objects
416
- */
417
- supportsObjectDetection: boolean;
418
- /**
419
- * Can process video frames as images
420
- * Example: true if model accepts video frame extraction
421
- */
422
- supportsVideoFrames: boolean;
423
- }
424
- /** Tool use capability configuration */
425
- export interface ToolUse {
426
- /**
427
- * Maximum number of tools that can be registered or considered
428
- * Example: 64
429
- */
430
- maxTools: number;
431
- /**
432
- * Whether the model can chain tool invocations one after another
433
- * Example: true for stepwise tool planning
434
- */
435
- supportsSequential: boolean;
436
- /**
437
- * Whether the model can invoke multiple tools concurrently
438
- * Example: true for parallelized tool execution
439
- */
440
- supportsParallel: boolean;
441
- /**
442
- * Maximum number of tool-use rounds allowed in a single request
443
- * Example: 10
444
- */
445
- maxToolRounds: number;
446
- /**
447
- * Types of tools supported by the provider/model
448
- * Examples: [TOOL_TYPE_FUNCTION, TOOL_TYPE_RETRIEVAL]
449
- */
450
- supportedToolTypes: ToolType[];
451
- }
452
- /** System prompt capability configuration */
453
- export interface SystemPrompt {
454
- /**
455
- * Maximum allowed length of system prompt content (characters or tokens)
456
- * Example: 8000 (characters)
457
- */
458
- maxLength: number;
459
- /**
460
- * Whether multiple system prompts (or segments) can be supplied
461
- * Example: true if the provider supports multiple system messages
462
- */
463
- supportsMultiple: boolean;
464
- /**
465
- * Whether system prompts can be cached for re-use
466
- * Example: true if provider supports prompt caching hints
467
- */
468
- supportsCaching: boolean;
469
- /**
470
- * Preferred/required format for system prompts (plain, markdown, etc.)
471
- * Example: DATA_FORMAT_MARKDOWN
472
- */
473
- format: DataFormat;
474
- }
475
- /** Caching capability configuration */
476
- export interface Caching {
477
- /**
478
- * Strategy used to compute cache keys for requests/responses
479
- * Examples: CACHE_STRATEGY_HASH, CACHE_STRATEGY_SEMANTIC
480
- */
481
- cacheKeyStrategy: CacheStrategy;
482
- /**
483
- * Maximum total cache capacity (bytes)
484
- * Example: 1073741824 for 1GB
485
- */
486
- maxCacheSizeBytes: number;
487
- /**
488
- * Default time-to-live for cache entries (seconds)
489
- * Example: 3600 for 1 hour
490
- */
491
- cacheTtlSeconds: number;
492
- /**
493
- * Whether the model/provider supports caching of conversation context
494
- * Example: true for context window reuse
495
- */
496
- supportsContextCaching: boolean;
497
- /**
498
- * Whether the model/provider supports caching of prompts/prefixes
499
- * Example: true for prefix caching/token reuse
500
- */
501
- supportsPromptCaching: boolean;
502
- /**
503
- * Minimum number of tokens required for an entry to be cacheable
504
- * Example: 128
505
- */
506
- minCacheableTokens: number;
507
- }
508
- /** Reasoning capability configuration */
509
- export interface Reasoning {
510
- /**
511
- * Whether the model can produce hidden chain-of-thought/assistant reasoning
512
- * Example: true for models supporting private CoT traces
513
- */
514
- supportsChainOfThought: boolean;
515
- /**
516
- * Whether the model can expose discrete step indices or markers
517
- * Example: true for models that number reasoning steps
518
- */
519
- supportsStepTracking: boolean;
520
- /**
521
- * Maximum number of internal reasoning steps supported
522
- * Example: 64
523
- */
524
- maxReasoningSteps: number;
525
- /**
526
- * Whether the model can revise earlier steps based on later insights
527
- * Example: true for self-correction/self-reflection
528
- */
529
- supportsSelfCorrection: boolean;
530
- /**
531
- * Supported high-level reasoning strategies
532
- * Examples: [REASONING_STRATEGY_STEP_BY_STEP, REASONING_STRATEGY_SELF_CONSISTENCY]
533
- */
534
- reasoningStrategies: ReasoningStrategy[];
535
- }
536
- /** Audio capability configuration */
537
- export interface Audio {
538
- /**
539
- * Direction of audio support
540
- * Example: MODALITY_DIRECTION_INPUT_ONLY for speech-to-text only
541
- * Example: MODALITY_DIRECTION_OUTPUT_ONLY for text-to-speech only
542
- * Example: MODALITY_DIRECTION_INPUT_OUTPUT for models supporting both STT and TTS
543
- */
544
- direction: ModalityDirection;
545
- /**
546
- * Supported audio file formats
547
- * Examples: [AUDIO_FORMAT_MP3, AUDIO_FORMAT_WAV, AUDIO_FORMAT_M4A]
548
- */
549
- supportedFormats: AudioFormat[];
550
- /**
551
- * Maximum audio duration in seconds
552
- * Example: 600 for 10-minute limit
553
- */
554
- maxDurationSeconds: number;
555
- /**
556
- * Maximum audio file size in bytes
557
- * Example: 26214400 (25MB) limit
558
- */
559
- maxFileSizeBytes: number;
560
- /**
561
- * Supported languages for audio processing
562
- * Examples: ["en", "es", "fr", "de", "zh", "ja"]
563
- */
564
- supportedLanguages: string[];
565
- /**
566
- * Supports real-time streaming (for live audio)
567
- * Example: true for real-time voice models
568
- */
569
- supportsStreaming: boolean;
570
- /**
571
- * Supports voice cloning or voice selection
572
- * Example: true if TTS can use different voices
573
- */
574
- supportsVoiceSelection: boolean;
575
- }
576
- /** Video capability configuration */
577
- export interface Video {
578
- /**
579
- * Direction of video support
580
- * Example: MODALITY_DIRECTION_INPUT_ONLY for video analysis/understanding
581
- * Example: MODALITY_DIRECTION_OUTPUT_ONLY for video generation
582
- * Example: MODALITY_DIRECTION_INPUT_OUTPUT for models that can both analyze and generate
583
- */
584
- direction: ModalityDirection;
585
- /**
586
- * Supported video file formats
587
- * Examples: [VIDEO_FORMAT_MP4, VIDEO_FORMAT_MOV, VIDEO_FORMAT_AVI]
588
- */
589
- supportedFormats: VideoFormat[];
590
- /**
591
- * Maximum video duration in seconds
592
- * Example: 120 for 2-minute limit
593
- */
594
- maxDurationSeconds: number;
595
- /**
596
- * Maximum video file size in bytes
597
- * Example: 1073741824 (1GB) limit
598
- */
599
- maxFileSizeBytes: number;
600
- /**
601
- * Maximum frames per second supported
602
- * Example: 30 for standard frame rate
603
- */
604
- maxFps: number;
605
- /**
606
- * Supports extracting and analyzing individual frames
607
- * Example: true if model can process video as a sequence of images
608
- */
609
- supportsFrameExtraction: boolean;
610
- /**
611
- * Maximum number of frames that can be analyzed
612
- * Example: 100 for frame-by-frame analysis limit
613
- */
614
- maxFrames: number;
615
- }
616
- /** Embeddings capability configuration */
617
- export interface Embeddings {
618
- /**
619
- * Dimensionality of the vector space produced by the model
620
- * Example: 1536
621
- */
622
- embeddingDimensions: number;
623
- /**
624
- * Maximum number of tokens accepted per input item
625
- * Example: 8192
626
- */
627
- maxInputTokens: number;
628
- /**
629
- * Whether the API supports batching multiple inputs in one call
630
- * Example: true
631
- */
632
- supportsBatch: boolean;
633
- /**
634
- * Maximum number of items allowed per batch
635
- * Example: 128
636
- */
637
- maxBatchSize: number;
638
- /**
639
- * Supported similarity/distance metrics for index/search
640
- * Examples: [DISTANCE_METRIC_COSINE, DISTANCE_METRIC_DOT_PRODUCT]
641
- */
642
- distanceMetrics: DistanceMetric[];
643
- }
644
- /** Fine-tuning capability configuration */
645
- export interface FineTuning {
646
- /**
647
- * Minimum number of training examples required to start fine-tuning
648
- * Example: 50
649
- */
650
- minExamples: number;
651
- /**
652
- * Maximum number of training examples supported in a single job
653
- * Example: 500000
654
- */
655
- maxExamples: number;
656
- /**
657
- * Supported dataset/file formats for fine-tuning
658
- * Examples: [DATA_FORMAT_JSONL, DATA_FORMAT_CSV]
659
- */
660
- supportedFormats: DataFormat[];
661
- /**
662
- * Maximum size of individual training files (MB)
663
- * Example: 512
664
- */
665
- maxFileSizeMb: number;
666
- /**
667
- * Whether a separate validation set can be provided
668
- * Example: true
669
- */
670
- supportsValidationSet: boolean;
671
- /**
672
- * Hyperparameters that can be configured for training
673
- * Examples: [HYPERPARAMETER_LEARNING_RATE, HYPERPARAMETER_EPOCHS]
674
- */
675
- hyperparameters: Hyperparameter[];
676
- }
677
- export declare const Capability: MessageFns<Capability>;
678
- export declare const Text: MessageFns<Text>;
679
- export declare const StructuredResponse: MessageFns<StructuredResponse>;
680
- export declare const Streaming: MessageFns<Streaming>;
681
- export declare const FunctionCalling: MessageFns<FunctionCalling>;
682
- export declare const Vision: MessageFns<Vision>;
683
- export declare const ToolUse: MessageFns<ToolUse>;
684
- export declare const SystemPrompt: MessageFns<SystemPrompt>;
685
- export declare const Caching: MessageFns<Caching>;
686
- export declare const Reasoning: MessageFns<Reasoning>;
687
- export declare const Audio: MessageFns<Audio>;
688
- export declare const Video: MessageFns<Video>;
689
- export declare const Embeddings: MessageFns<Embeddings>;
690
- export declare const FineTuning: MessageFns<FineTuning>;
691
- type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
692
- export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
693
- [K in keyof T]?: DeepPartial<T[K]>;
694
- } : Partial<T>;
695
- type KeysOfUnion<T> = T extends T ? keyof T : never;
696
- export type Exact<P, I extends P> = P extends Builtin ? P : P & {
697
- [K in keyof P]: Exact<P[K], I[K]>;
698
- } & {
699
- [K in Exclude<keyof I, KeysOfUnion<P>>]: never;
700
- };
701
- export interface MessageFns<T> {
702
- encode(message: T, writer?: BinaryWriter): BinaryWriter;
703
- decode(input: BinaryReader | Uint8Array, length?: number): T;
704
- fromJSON(object: any): T;
705
- toJSON(message: T): unknown;
706
- create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;
707
- fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;
708
- }
709
- export {};