@anthropic-ai/sdk 0.28.0 → 0.29.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 (107) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +76 -0
  3. package/core.d.ts +1 -1
  4. package/core.d.ts.map +1 -1
  5. package/core.js +1 -1
  6. package/core.js.map +1 -1
  7. package/core.mjs +1 -1
  8. package/core.mjs.map +1 -1
  9. package/index.d.mts +19 -0
  10. package/index.d.ts +19 -0
  11. package/index.d.ts.map +1 -1
  12. package/index.js +2 -0
  13. package/index.js.map +1 -1
  14. package/index.mjs +2 -0
  15. package/index.mjs.map +1 -1
  16. package/internal/decoders/jsonl.d.ts +12 -0
  17. package/internal/decoders/jsonl.d.ts.map +1 -0
  18. package/internal/decoders/jsonl.js +35 -0
  19. package/internal/decoders/jsonl.js.map +1 -0
  20. package/internal/decoders/jsonl.mjs +31 -0
  21. package/internal/decoders/jsonl.mjs.map +1 -0
  22. package/internal/decoders/line.d.ts +20 -0
  23. package/internal/decoders/line.d.ts.map +1 -0
  24. package/internal/decoders/line.js +88 -0
  25. package/internal/decoders/line.js.map +1 -0
  26. package/internal/decoders/line.mjs +84 -0
  27. package/internal/decoders/line.mjs.map +1 -0
  28. package/package.json +1 -1
  29. package/pagination.d.ts +26 -0
  30. package/pagination.d.ts.map +1 -0
  31. package/pagination.js +54 -0
  32. package/pagination.js.map +1 -0
  33. package/pagination.mjs +50 -0
  34. package/pagination.mjs.map +1 -0
  35. package/resources/beta/beta.d.ts +79 -0
  36. package/resources/beta/beta.d.ts.map +1 -1
  37. package/resources/beta/beta.js +3 -0
  38. package/resources/beta/beta.js.map +1 -1
  39. package/resources/beta/beta.mjs +3 -0
  40. package/resources/beta/beta.mjs.map +1 -1
  41. package/resources/beta/index.d.ts +2 -1
  42. package/resources/beta/index.d.ts.map +1 -1
  43. package/resources/beta/index.js +5 -3
  44. package/resources/beta/index.js.map +1 -1
  45. package/resources/beta/index.mjs +2 -1
  46. package/resources/beta/index.mjs.map +1 -1
  47. package/resources/beta/messages/batches.d.ts +242 -0
  48. package/resources/beta/messages/batches.d.ts.map +1 -0
  49. package/resources/beta/messages/batches.js +120 -0
  50. package/resources/beta/messages/batches.js.map +1 -0
  51. package/resources/beta/messages/batches.mjs +92 -0
  52. package/resources/beta/messages/batches.mjs.map +1 -0
  53. package/resources/beta/messages/index.d.ts +3 -0
  54. package/resources/beta/messages/index.d.ts.map +1 -0
  55. package/resources/beta/messages/index.js +10 -0
  56. package/resources/beta/messages/index.js.map +1 -0
  57. package/resources/beta/messages/index.mjs +4 -0
  58. package/resources/beta/messages/index.mjs.map +1 -0
  59. package/resources/beta/messages/messages.d.ts +663 -0
  60. package/resources/beta/messages/messages.d.ts.map +1 -0
  61. package/resources/beta/messages/messages.js +54 -0
  62. package/resources/beta/messages/messages.js.map +1 -0
  63. package/resources/beta/messages/messages.mjs +27 -0
  64. package/resources/beta/messages/messages.mjs.map +1 -0
  65. package/resources/beta/prompt-caching/messages.d.ts +40 -74
  66. package/resources/beta/prompt-caching/messages.d.ts.map +1 -1
  67. package/resources/beta/prompt-caching/messages.js +7 -3
  68. package/resources/beta/prompt-caching/messages.js.map +1 -1
  69. package/resources/beta/prompt-caching/messages.mjs +7 -3
  70. package/resources/beta/prompt-caching/messages.mjs.map +1 -1
  71. package/resources/completions.d.ts +3 -12
  72. package/resources/completions.d.ts.map +1 -1
  73. package/resources/completions.js.map +1 -1
  74. package/resources/completions.mjs.map +1 -1
  75. package/resources/index.d.ts +2 -2
  76. package/resources/index.d.ts.map +1 -1
  77. package/resources/index.js.map +1 -1
  78. package/resources/index.mjs +1 -1
  79. package/resources/index.mjs.map +1 -1
  80. package/resources/messages.d.ts +76 -55
  81. package/resources/messages.d.ts.map +1 -1
  82. package/resources/messages.js.map +1 -1
  83. package/resources/messages.mjs.map +1 -1
  84. package/src/core.ts +4 -2
  85. package/src/index.ts +20 -0
  86. package/src/internal/decoders/jsonl.ts +41 -0
  87. package/src/internal/decoders/line.ts +114 -0
  88. package/src/pagination.ts +84 -0
  89. package/src/resources/beta/beta.ts +104 -0
  90. package/src/resources/beta/index.ts +47 -1
  91. package/src/resources/beta/messages/batches.ts +393 -0
  92. package/src/resources/beta/messages/index.ts +53 -0
  93. package/src/resources/beta/messages/messages.ts +795 -0
  94. package/src/resources/beta/prompt-caching/messages.ts +45 -81
  95. package/src/resources/completions.ts +3 -12
  96. package/src/resources/index.ts +18 -1
  97. package/src/resources/messages.ts +82 -59
  98. package/src/streaming.ts +1 -111
  99. package/src/version.ts +1 -1
  100. package/streaming.d.ts.map +1 -1
  101. package/streaming.js +4 -85
  102. package/streaming.js.map +1 -1
  103. package/streaming.mjs +1 -82
  104. package/streaming.mjs.map +1 -1
  105. package/version.d.ts +1 -1
  106. package/version.js +1 -1
  107. package/version.mjs +1 -1
@@ -0,0 +1,663 @@
1
+ import { APIResource } from "../../../resource.js";
2
+ import { APIPromise } from "../../../core.js";
3
+ import * as Core from "../../../core.js";
4
+ import * as MessagesMessagesAPI from "./messages.js";
5
+ import * as MessagesAPI from "../../messages.js";
6
+ import * as BetaAPI from "../beta.js";
7
+ import * as BatchesAPI from "./batches.js";
8
+ import { Stream } from "../../../streaming.js";
9
+ export declare class Messages extends APIResource {
10
+ batches: BatchesAPI.Batches;
11
+ /**
12
+ * Send a structured list of input messages with text and/or image content, and the
13
+ * model will generate the next message in the conversation.
14
+ *
15
+ * The Messages API can be used for either single queries or stateless multi-turn
16
+ * conversations.
17
+ */
18
+ create(params: MessageCreateParamsNonStreaming, options?: Core.RequestOptions): APIPromise<BetaMessage>;
19
+ create(params: MessageCreateParamsStreaming, options?: Core.RequestOptions): APIPromise<Stream<BetaRawMessageStreamEvent>>;
20
+ create(params: MessageCreateParamsBase, options?: Core.RequestOptions): APIPromise<Stream<BetaRawMessageStreamEvent> | BetaMessage>;
21
+ }
22
+ export interface BetaCacheControlEphemeral {
23
+ type: 'ephemeral';
24
+ }
25
+ export type BetaContentBlock = BetaTextBlock | BetaToolUseBlock;
26
+ export type BetaContentBlockParam = BetaTextBlockParam | BetaImageBlockParam | BetaToolUseBlockParam | BetaToolResultBlockParam;
27
+ export interface BetaImageBlockParam {
28
+ source: BetaImageBlockParam.Source;
29
+ type: 'image';
30
+ cache_control?: BetaCacheControlEphemeral | null;
31
+ }
32
+ export declare namespace BetaImageBlockParam {
33
+ interface Source {
34
+ data: string;
35
+ media_type: 'image/jpeg' | 'image/png' | 'image/gif' | 'image/webp';
36
+ type: 'base64';
37
+ }
38
+ }
39
+ export interface BetaInputJSONDelta {
40
+ partial_json: string;
41
+ type: 'input_json_delta';
42
+ }
43
+ export interface BetaMessage {
44
+ /**
45
+ * Unique object identifier.
46
+ *
47
+ * The format and length of IDs may change over time.
48
+ */
49
+ id: string;
50
+ /**
51
+ * Content generated by the model.
52
+ *
53
+ * This is an array of content blocks, each of which has a `type` that determines
54
+ * its shape.
55
+ *
56
+ * Example:
57
+ *
58
+ * ```json
59
+ * [{ "type": "text", "text": "Hi, I'm Claude." }]
60
+ * ```
61
+ *
62
+ * If the request input `messages` ended with an `assistant` turn, then the
63
+ * response `content` will continue directly from that last turn. You can use this
64
+ * to constrain the model's output.
65
+ *
66
+ * For example, if the input `messages` were:
67
+ *
68
+ * ```json
69
+ * [
70
+ * {
71
+ * "role": "user",
72
+ * "content": "What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun"
73
+ * },
74
+ * { "role": "assistant", "content": "The best answer is (" }
75
+ * ]
76
+ * ```
77
+ *
78
+ * Then the response `content` might be:
79
+ *
80
+ * ```json
81
+ * [{ "type": "text", "text": "B)" }]
82
+ * ```
83
+ */
84
+ content: Array<BetaContentBlock>;
85
+ /**
86
+ * The model that will complete your prompt.\n\nSee
87
+ * [models](https://docs.anthropic.com/en/docs/models-overview) for additional
88
+ * details and options.
89
+ */
90
+ model: MessagesAPI.Model;
91
+ /**
92
+ * Conversational role of the generated message.
93
+ *
94
+ * This will always be `"assistant"`.
95
+ */
96
+ role: 'assistant';
97
+ /**
98
+ * The reason that we stopped.
99
+ *
100
+ * This may be one the following values:
101
+ *
102
+ * - `"end_turn"`: the model reached a natural stopping point
103
+ * - `"max_tokens"`: we exceeded the requested `max_tokens` or the model's maximum
104
+ * - `"stop_sequence"`: one of your provided custom `stop_sequences` was generated
105
+ * - `"tool_use"`: the model invoked one or more tools
106
+ *
107
+ * In non-streaming mode this value is always non-null. In streaming mode, it is
108
+ * null in the `message_start` event and non-null otherwise.
109
+ */
110
+ stop_reason: 'end_turn' | 'max_tokens' | 'stop_sequence' | 'tool_use' | null;
111
+ /**
112
+ * Which custom stop sequence was generated, if any.
113
+ *
114
+ * This value will be a non-null string if one of your custom stop sequences was
115
+ * generated.
116
+ */
117
+ stop_sequence: string | null;
118
+ /**
119
+ * Object type.
120
+ *
121
+ * For Messages, this is always `"message"`.
122
+ */
123
+ type: 'message';
124
+ /**
125
+ * Billing and rate-limit usage.
126
+ *
127
+ * Anthropic's API bills and rate-limits by token counts, as tokens represent the
128
+ * underlying cost to our systems.
129
+ *
130
+ * Under the hood, the API transforms requests into a format suitable for the
131
+ * model. The model's output then goes through a parsing stage before becoming an
132
+ * API response. As a result, the token counts in `usage` will not match one-to-one
133
+ * with the exact visible content of an API request or response.
134
+ *
135
+ * For example, `output_tokens` will be non-zero, even for an empty string response
136
+ * from Claude.
137
+ */
138
+ usage: BetaUsage;
139
+ }
140
+ export interface BetaMessageDeltaUsage {
141
+ /**
142
+ * The cumulative number of output tokens which were used.
143
+ */
144
+ output_tokens: number;
145
+ }
146
+ export interface BetaMessageParam {
147
+ content: string | Array<BetaContentBlockParam>;
148
+ role: 'user' | 'assistant';
149
+ }
150
+ export interface BetaMetadata {
151
+ /**
152
+ * An external identifier for the user who is associated with the request.
153
+ *
154
+ * This should be a uuid, hash value, or other opaque identifier. Anthropic may use
155
+ * this id to help detect abuse. Do not include any identifying information such as
156
+ * name, email address, or phone number.
157
+ */
158
+ user_id?: string | null;
159
+ }
160
+ export interface BetaRawContentBlockDeltaEvent {
161
+ delta: BetaTextDelta | BetaInputJSONDelta;
162
+ index: number;
163
+ type: 'content_block_delta';
164
+ }
165
+ export interface BetaRawContentBlockStartEvent {
166
+ content_block: BetaTextBlock | BetaToolUseBlock;
167
+ index: number;
168
+ type: 'content_block_start';
169
+ }
170
+ export interface BetaRawContentBlockStopEvent {
171
+ index: number;
172
+ type: 'content_block_stop';
173
+ }
174
+ export interface BetaRawMessageDeltaEvent {
175
+ delta: BetaRawMessageDeltaEvent.Delta;
176
+ type: 'message_delta';
177
+ /**
178
+ * Billing and rate-limit usage.
179
+ *
180
+ * Anthropic's API bills and rate-limits by token counts, as tokens represent the
181
+ * underlying cost to our systems.
182
+ *
183
+ * Under the hood, the API transforms requests into a format suitable for the
184
+ * model. The model's output then goes through a parsing stage before becoming an
185
+ * API response. As a result, the token counts in `usage` will not match one-to-one
186
+ * with the exact visible content of an API request or response.
187
+ *
188
+ * For example, `output_tokens` will be non-zero, even for an empty string response
189
+ * from Claude.
190
+ */
191
+ usage: BetaMessageDeltaUsage;
192
+ }
193
+ export declare namespace BetaRawMessageDeltaEvent {
194
+ interface Delta {
195
+ stop_reason: 'end_turn' | 'max_tokens' | 'stop_sequence' | 'tool_use' | null;
196
+ stop_sequence: string | null;
197
+ }
198
+ }
199
+ export interface BetaRawMessageStartEvent {
200
+ message: BetaMessage;
201
+ type: 'message_start';
202
+ }
203
+ export interface BetaRawMessageStopEvent {
204
+ type: 'message_stop';
205
+ }
206
+ export type BetaRawMessageStreamEvent = BetaRawMessageStartEvent | BetaRawMessageDeltaEvent | BetaRawMessageStopEvent | BetaRawContentBlockStartEvent | BetaRawContentBlockDeltaEvent | BetaRawContentBlockStopEvent;
207
+ export interface BetaTextBlock {
208
+ text: string;
209
+ type: 'text';
210
+ }
211
+ export interface BetaTextBlockParam {
212
+ text: string;
213
+ type: 'text';
214
+ cache_control?: BetaCacheControlEphemeral | null;
215
+ }
216
+ export interface BetaTextDelta {
217
+ text: string;
218
+ type: 'text_delta';
219
+ }
220
+ export interface BetaTool {
221
+ /**
222
+ * [JSON schema](https://json-schema.org/) for this tool's input.
223
+ *
224
+ * This defines the shape of the `input` that your tool accepts and that the model
225
+ * will produce.
226
+ */
227
+ input_schema: BetaTool.InputSchema;
228
+ name: string;
229
+ cache_control?: BetaCacheControlEphemeral | null;
230
+ /**
231
+ * Description of what this tool does.
232
+ *
233
+ * Tool descriptions should be as detailed as possible. The more information that
234
+ * the model has about what the tool is and how to use it, the better it will
235
+ * perform. You can use natural language descriptions to reinforce important
236
+ * aspects of the tool input JSON schema.
237
+ */
238
+ description?: string;
239
+ }
240
+ export declare namespace BetaTool {
241
+ /**
242
+ * [JSON schema](https://json-schema.org/) for this tool's input.
243
+ *
244
+ * This defines the shape of the `input` that your tool accepts and that the model
245
+ * will produce.
246
+ */
247
+ interface InputSchema {
248
+ type: 'object';
249
+ properties?: unknown | null;
250
+ [k: string]: unknown;
251
+ }
252
+ }
253
+ /**
254
+ * How the model should use the provided tools. The model can use a specific tool,
255
+ * any available tool, or decide by itself.
256
+ */
257
+ export type BetaToolChoice = BetaToolChoiceAuto | BetaToolChoiceAny | BetaToolChoiceTool;
258
+ /**
259
+ * The model will use any available tools.
260
+ */
261
+ export interface BetaToolChoiceAny {
262
+ type: 'any';
263
+ /**
264
+ * Whether to disable parallel tool use.
265
+ *
266
+ * Defaults to `false`. If set to `true`, the model will output exactly one tool
267
+ * use.
268
+ */
269
+ disable_parallel_tool_use?: boolean;
270
+ }
271
+ /**
272
+ * The model will automatically decide whether to use tools.
273
+ */
274
+ export interface BetaToolChoiceAuto {
275
+ type: 'auto';
276
+ /**
277
+ * Whether to disable parallel tool use.
278
+ *
279
+ * Defaults to `false`. If set to `true`, the model will output at most one tool
280
+ * use.
281
+ */
282
+ disable_parallel_tool_use?: boolean;
283
+ }
284
+ /**
285
+ * The model will use the specified tool with `tool_choice.name`.
286
+ */
287
+ export interface BetaToolChoiceTool {
288
+ /**
289
+ * The name of the tool to use.
290
+ */
291
+ name: string;
292
+ type: 'tool';
293
+ /**
294
+ * Whether to disable parallel tool use.
295
+ *
296
+ * Defaults to `false`. If set to `true`, the model will output exactly one tool
297
+ * use.
298
+ */
299
+ disable_parallel_tool_use?: boolean;
300
+ }
301
+ export interface BetaToolResultBlockParam {
302
+ tool_use_id: string;
303
+ type: 'tool_result';
304
+ cache_control?: BetaCacheControlEphemeral | null;
305
+ content?: string | Array<BetaTextBlockParam | BetaImageBlockParam>;
306
+ is_error?: boolean;
307
+ }
308
+ export interface BetaToolUseBlock {
309
+ id: string;
310
+ input: unknown;
311
+ name: string;
312
+ type: 'tool_use';
313
+ }
314
+ export interface BetaToolUseBlockParam {
315
+ id: string;
316
+ input: unknown;
317
+ name: string;
318
+ type: 'tool_use';
319
+ cache_control?: BetaCacheControlEphemeral | null;
320
+ }
321
+ export interface BetaUsage {
322
+ /**
323
+ * The number of input tokens used to create the cache entry.
324
+ */
325
+ cache_creation_input_tokens: number | null;
326
+ /**
327
+ * The number of input tokens read from the cache.
328
+ */
329
+ cache_read_input_tokens: number | null;
330
+ /**
331
+ * The number of input tokens which were used.
332
+ */
333
+ input_tokens: number;
334
+ /**
335
+ * The number of output tokens which were used.
336
+ */
337
+ output_tokens: number;
338
+ }
339
+ export type MessageCreateParams = MessageCreateParamsNonStreaming | MessageCreateParamsStreaming;
340
+ export interface MessageCreateParamsBase {
341
+ /**
342
+ * Body param: The maximum number of tokens to generate before stopping.
343
+ *
344
+ * Note that our models may stop _before_ reaching this maximum. This parameter
345
+ * only specifies the absolute maximum number of tokens to generate.
346
+ *
347
+ * Different models have different maximum values for this parameter. See
348
+ * [models](https://docs.anthropic.com/en/docs/models-overview) for details.
349
+ */
350
+ max_tokens: number;
351
+ /**
352
+ * Body param: Input messages.
353
+ *
354
+ * Our models are trained to operate on alternating `user` and `assistant`
355
+ * conversational turns. When creating a new `Message`, you specify the prior
356
+ * conversational turns with the `messages` parameter, and the model then generates
357
+ * the next `Message` in the conversation.
358
+ *
359
+ * Each input message must be an object with a `role` and `content`. You can
360
+ * specify a single `user`-role message, or you can include multiple `user` and
361
+ * `assistant` messages. The first message must always use the `user` role.
362
+ *
363
+ * If the final message uses the `assistant` role, the response content will
364
+ * continue immediately from the content in that message. This can be used to
365
+ * constrain part of the model's response.
366
+ *
367
+ * Example with a single `user` message:
368
+ *
369
+ * ```json
370
+ * [{ "role": "user", "content": "Hello, Claude" }]
371
+ * ```
372
+ *
373
+ * Example with multiple conversational turns:
374
+ *
375
+ * ```json
376
+ * [
377
+ * { "role": "user", "content": "Hello there." },
378
+ * { "role": "assistant", "content": "Hi, I'm Claude. How can I help you?" },
379
+ * { "role": "user", "content": "Can you explain LLMs in plain English?" }
380
+ * ]
381
+ * ```
382
+ *
383
+ * Example with a partially-filled response from Claude:
384
+ *
385
+ * ```json
386
+ * [
387
+ * {
388
+ * "role": "user",
389
+ * "content": "What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun"
390
+ * },
391
+ * { "role": "assistant", "content": "The best answer is (" }
392
+ * ]
393
+ * ```
394
+ *
395
+ * Each input message `content` may be either a single `string` or an array of
396
+ * content blocks, where each block has a specific `type`. Using a `string` for
397
+ * `content` is shorthand for an array of one content block of type `"text"`. The
398
+ * following input messages are equivalent:
399
+ *
400
+ * ```json
401
+ * { "role": "user", "content": "Hello, Claude" }
402
+ * ```
403
+ *
404
+ * ```json
405
+ * { "role": "user", "content": [{ "type": "text", "text": "Hello, Claude" }] }
406
+ * ```
407
+ *
408
+ * Starting with Claude 3 models, you can also send image content blocks:
409
+ *
410
+ * ```json
411
+ * {
412
+ * "role": "user",
413
+ * "content": [
414
+ * {
415
+ * "type": "image",
416
+ * "source": {
417
+ * "type": "base64",
418
+ * "media_type": "image/jpeg",
419
+ * "data": "/9j/4AAQSkZJRg..."
420
+ * }
421
+ * },
422
+ * { "type": "text", "text": "What is in this image?" }
423
+ * ]
424
+ * }
425
+ * ```
426
+ *
427
+ * We currently support the `base64` source type for images, and the `image/jpeg`,
428
+ * `image/png`, `image/gif`, and `image/webp` media types.
429
+ *
430
+ * See [examples](https://docs.anthropic.com/en/api/messages-examples#vision) for
431
+ * more input examples.
432
+ *
433
+ * Note that if you want to include a
434
+ * [system prompt](https://docs.anthropic.com/en/docs/system-prompts), you can use
435
+ * the top-level `system` parameter — there is no `"system"` role for input
436
+ * messages in the Messages API.
437
+ */
438
+ messages: Array<BetaMessageParam>;
439
+ /**
440
+ * Body param: The model that will complete your prompt.\n\nSee
441
+ * [models](https://docs.anthropic.com/en/docs/models-overview) for additional
442
+ * details and options.
443
+ */
444
+ model: MessagesAPI.Model;
445
+ /**
446
+ * Body param: An object describing metadata about the request.
447
+ */
448
+ metadata?: BetaMetadata;
449
+ /**
450
+ * Body param: Custom text sequences that will cause the model to stop generating.
451
+ *
452
+ * Our models will normally stop when they have naturally completed their turn,
453
+ * which will result in a response `stop_reason` of `"end_turn"`.
454
+ *
455
+ * If you want the model to stop generating when it encounters custom strings of
456
+ * text, you can use the `stop_sequences` parameter. If the model encounters one of
457
+ * the custom sequences, the response `stop_reason` value will be `"stop_sequence"`
458
+ * and the response `stop_sequence` value will contain the matched stop sequence.
459
+ */
460
+ stop_sequences?: Array<string>;
461
+ /**
462
+ * Body param: Whether to incrementally stream the response using server-sent
463
+ * events.
464
+ *
465
+ * See [streaming](https://docs.anthropic.com/en/api/messages-streaming) for
466
+ * details.
467
+ */
468
+ stream?: boolean;
469
+ /**
470
+ * Body param: System prompt.
471
+ *
472
+ * A system prompt is a way of providing context and instructions to Claude, such
473
+ * as specifying a particular goal or role. See our
474
+ * [guide to system prompts](https://docs.anthropic.com/en/docs/system-prompts).
475
+ */
476
+ system?: string | Array<BetaTextBlockParam>;
477
+ /**
478
+ * Body param: Amount of randomness injected into the response.
479
+ *
480
+ * Defaults to `1.0`. Ranges from `0.0` to `1.0`. Use `temperature` closer to `0.0`
481
+ * for analytical / multiple choice, and closer to `1.0` for creative and
482
+ * generative tasks.
483
+ *
484
+ * Note that even with `temperature` of `0.0`, the results will not be fully
485
+ * deterministic.
486
+ */
487
+ temperature?: number;
488
+ /**
489
+ * Body param: How the model should use the provided tools. The model can use a
490
+ * specific tool, any available tool, or decide by itself.
491
+ */
492
+ tool_choice?: BetaToolChoice;
493
+ /**
494
+ * Body param: Definitions of tools that the model may use.
495
+ *
496
+ * If you include `tools` in your API request, the model may return `tool_use`
497
+ * content blocks that represent the model's use of those tools. You can then run
498
+ * those tools using the tool input generated by the model and then optionally
499
+ * return results back to the model using `tool_result` content blocks.
500
+ *
501
+ * Each tool definition includes:
502
+ *
503
+ * - `name`: Name of the tool.
504
+ * - `description`: Optional, but strongly-recommended description of the tool.
505
+ * - `input_schema`: [JSON schema](https://json-schema.org/) for the tool `input`
506
+ * shape that the model will produce in `tool_use` output content blocks.
507
+ *
508
+ * For example, if you defined `tools` as:
509
+ *
510
+ * ```json
511
+ * [
512
+ * {
513
+ * "name": "get_stock_price",
514
+ * "description": "Get the current stock price for a given ticker symbol.",
515
+ * "input_schema": {
516
+ * "type": "object",
517
+ * "properties": {
518
+ * "ticker": {
519
+ * "type": "string",
520
+ * "description": "The stock ticker symbol, e.g. AAPL for Apple Inc."
521
+ * }
522
+ * },
523
+ * "required": ["ticker"]
524
+ * }
525
+ * }
526
+ * ]
527
+ * ```
528
+ *
529
+ * And then asked the model "What's the S&P 500 at today?", the model might produce
530
+ * `tool_use` content blocks in the response like this:
531
+ *
532
+ * ```json
533
+ * [
534
+ * {
535
+ * "type": "tool_use",
536
+ * "id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
537
+ * "name": "get_stock_price",
538
+ * "input": { "ticker": "^GSPC" }
539
+ * }
540
+ * ]
541
+ * ```
542
+ *
543
+ * You might then run your `get_stock_price` tool with `{"ticker": "^GSPC"}` as an
544
+ * input, and return the following back to the model in a subsequent `user`
545
+ * message:
546
+ *
547
+ * ```json
548
+ * [
549
+ * {
550
+ * "type": "tool_result",
551
+ * "tool_use_id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
552
+ * "content": "259.75 USD"
553
+ * }
554
+ * ]
555
+ * ```
556
+ *
557
+ * Tools can be used for workflows that include running client-side tools and
558
+ * functions, or more generally whenever you want the model to produce a particular
559
+ * JSON structure of output.
560
+ *
561
+ * See our [guide](https://docs.anthropic.com/en/docs/tool-use) for more details.
562
+ */
563
+ tools?: Array<BetaTool>;
564
+ /**
565
+ * Body param: Only sample from the top K options for each subsequent token.
566
+ *
567
+ * Used to remove "long tail" low probability responses.
568
+ * [Learn more technical details here](https://towardsdatascience.com/how-to-sample-from-language-models-682bceb97277).
569
+ *
570
+ * Recommended for advanced use cases only. You usually only need to use
571
+ * `temperature`.
572
+ */
573
+ top_k?: number;
574
+ /**
575
+ * Body param: Use nucleus sampling.
576
+ *
577
+ * In nucleus sampling, we compute the cumulative distribution over all the options
578
+ * for each subsequent token in decreasing probability order and cut it off once it
579
+ * reaches a particular probability specified by `top_p`. You should either alter
580
+ * `temperature` or `top_p`, but not both.
581
+ *
582
+ * Recommended for advanced use cases only. You usually only need to use
583
+ * `temperature`.
584
+ */
585
+ top_p?: number;
586
+ /**
587
+ * Header param: Optional header to specify the beta version(s) you want to use.
588
+ */
589
+ betas?: Array<BetaAPI.AnthropicBeta>;
590
+ }
591
+ export declare namespace MessageCreateParams {
592
+ type MessageCreateParamsNonStreaming = MessagesMessagesAPI.MessageCreateParamsNonStreaming;
593
+ type MessageCreateParamsStreaming = MessagesMessagesAPI.MessageCreateParamsStreaming;
594
+ }
595
+ export interface MessageCreateParamsNonStreaming extends MessageCreateParamsBase {
596
+ /**
597
+ * Body param: Whether to incrementally stream the response using server-sent
598
+ * events.
599
+ *
600
+ * See [streaming](https://docs.anthropic.com/en/api/messages-streaming) for
601
+ * details.
602
+ */
603
+ stream?: false;
604
+ }
605
+ export interface MessageCreateParamsStreaming extends MessageCreateParamsBase {
606
+ /**
607
+ * Body param: Whether to incrementally stream the response using server-sent
608
+ * events.
609
+ *
610
+ * See [streaming](https://docs.anthropic.com/en/api/messages-streaming) for
611
+ * details.
612
+ */
613
+ stream: true;
614
+ }
615
+ export declare namespace Messages {
616
+ export import BetaCacheControlEphemeral = MessagesMessagesAPI.BetaCacheControlEphemeral;
617
+ export import BetaContentBlock = MessagesMessagesAPI.BetaContentBlock;
618
+ export import BetaContentBlockParam = MessagesMessagesAPI.BetaContentBlockParam;
619
+ export import BetaImageBlockParam = MessagesMessagesAPI.BetaImageBlockParam;
620
+ export import BetaInputJSONDelta = MessagesMessagesAPI.BetaInputJSONDelta;
621
+ export import BetaMessage = MessagesMessagesAPI.BetaMessage;
622
+ export import BetaMessageDeltaUsage = MessagesMessagesAPI.BetaMessageDeltaUsage;
623
+ export import BetaMessageParam = MessagesMessagesAPI.BetaMessageParam;
624
+ export import BetaMetadata = MessagesMessagesAPI.BetaMetadata;
625
+ export import BetaRawContentBlockDeltaEvent = MessagesMessagesAPI.BetaRawContentBlockDeltaEvent;
626
+ export import BetaRawContentBlockStartEvent = MessagesMessagesAPI.BetaRawContentBlockStartEvent;
627
+ export import BetaRawContentBlockStopEvent = MessagesMessagesAPI.BetaRawContentBlockStopEvent;
628
+ export import BetaRawMessageDeltaEvent = MessagesMessagesAPI.BetaRawMessageDeltaEvent;
629
+ export import BetaRawMessageStartEvent = MessagesMessagesAPI.BetaRawMessageStartEvent;
630
+ export import BetaRawMessageStopEvent = MessagesMessagesAPI.BetaRawMessageStopEvent;
631
+ export import BetaRawMessageStreamEvent = MessagesMessagesAPI.BetaRawMessageStreamEvent;
632
+ export import BetaTextBlock = MessagesMessagesAPI.BetaTextBlock;
633
+ export import BetaTextBlockParam = MessagesMessagesAPI.BetaTextBlockParam;
634
+ export import BetaTextDelta = MessagesMessagesAPI.BetaTextDelta;
635
+ export import BetaTool = MessagesMessagesAPI.BetaTool;
636
+ export import BetaToolChoice = MessagesMessagesAPI.BetaToolChoice;
637
+ export import BetaToolChoiceAny = MessagesMessagesAPI.BetaToolChoiceAny;
638
+ export import BetaToolChoiceAuto = MessagesMessagesAPI.BetaToolChoiceAuto;
639
+ export import BetaToolChoiceTool = MessagesMessagesAPI.BetaToolChoiceTool;
640
+ export import BetaToolResultBlockParam = MessagesMessagesAPI.BetaToolResultBlockParam;
641
+ export import BetaToolUseBlock = MessagesMessagesAPI.BetaToolUseBlock;
642
+ export import BetaToolUseBlockParam = MessagesMessagesAPI.BetaToolUseBlockParam;
643
+ export import BetaUsage = MessagesMessagesAPI.BetaUsage;
644
+ export import MessageCreateParams = MessagesMessagesAPI.MessageCreateParams;
645
+ export import MessageCreateParamsNonStreaming = MessagesMessagesAPI.MessageCreateParamsNonStreaming;
646
+ export import MessageCreateParamsStreaming = MessagesMessagesAPI.MessageCreateParamsStreaming;
647
+ export import Batches = BatchesAPI.Batches;
648
+ export import BetaMessageBatch = BatchesAPI.BetaMessageBatch;
649
+ export import BetaMessageBatchCanceledResult = BatchesAPI.BetaMessageBatchCanceledResult;
650
+ export import BetaMessageBatchErroredResult = BatchesAPI.BetaMessageBatchErroredResult;
651
+ export import BetaMessageBatchExpiredResult = BatchesAPI.BetaMessageBatchExpiredResult;
652
+ export import BetaMessageBatchIndividualResponse = BatchesAPI.BetaMessageBatchIndividualResponse;
653
+ export import BetaMessageBatchRequestCounts = BatchesAPI.BetaMessageBatchRequestCounts;
654
+ export import BetaMessageBatchResult = BatchesAPI.BetaMessageBatchResult;
655
+ export import BetaMessageBatchSucceededResult = BatchesAPI.BetaMessageBatchSucceededResult;
656
+ export import BetaMessageBatchesPage = BatchesAPI.BetaMessageBatchesPage;
657
+ export import BatchCreateParams = BatchesAPI.BatchCreateParams;
658
+ export import BatchRetrieveParams = BatchesAPI.BatchRetrieveParams;
659
+ export import BatchListParams = BatchesAPI.BatchListParams;
660
+ export import BatchCancelParams = BatchesAPI.BatchCancelParams;
661
+ export import BatchResultsParams = BatchesAPI.BatchResultsParams;
662
+ }
663
+ //# sourceMappingURL=messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/resources/beta/messages/messages.ts"],"names":[],"mappings":"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"}