diff --git a/.stats.yml b/.stats.yml index 4f03232f..ff2805b6 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,2 +1,2 @@ configured_endpoints: 2 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/anthropic-e38cd52aed438cef6e0a25eeeab8ff6000583c3cf152a10f0c3610ceb3da7b4e.yml +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/anthropic-5903ec2fd4efd7f261908bc4ec8ecd6b19cb9efa79637ad273583f1b763f80fd.yml diff --git a/api.md b/api.md index 7c732d1d..c636b226 100644 --- a/api.md +++ b/api.md @@ -9,7 +9,7 @@ Types: - ContentBlockStartEvent - ContentBlockStopEvent - ImageBlockParam -- InputJsonDelta +- InputJSONDelta - Message - MessageDeltaEvent - MessageDeltaUsage @@ -17,6 +17,7 @@ Types: - MessageStartEvent - MessageStopEvent - MessageStreamEvent +- Model - RawContentBlockDeltaEvent - RawContentBlockStartEvent - RawContentBlockStopEvent diff --git a/src/index.ts b/src/index.ts index 7d1072d2..e2ce21c3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -250,7 +250,7 @@ export namespace Anthropic { export import ContentBlockStartEvent = API.ContentBlockStartEvent; export import ContentBlockStopEvent = API.ContentBlockStopEvent; export import ImageBlockParam = API.ImageBlockParam; - export import InputJsonDelta = API.InputJsonDelta; + export import InputJSONDelta = API.InputJSONDelta; export import Message = API.Message; export import MessageDeltaEvent = API.MessageDeltaEvent; export import MessageDeltaUsage = API.MessageDeltaUsage; @@ -258,6 +258,7 @@ export namespace Anthropic { export import MessageStartEvent = API.MessageStartEvent; export import MessageStopEvent = API.MessageStopEvent; export import MessageStreamEvent = API.MessageStreamEvent; + export import Model = API.Model; export import RawContentBlockDeltaEvent = API.RawContentBlockDeltaEvent; export import RawContentBlockStartEvent = API.RawContentBlockStartEvent; export import RawContentBlockStopEvent = API.RawContentBlockStopEvent; diff --git a/src/resources/completions.ts b/src/resources/completions.ts index 0ecb1d44..fe9c2c0b 100644 --- a/src/resources/completions.ts +++ b/src/resources/completions.ts @@ -4,6 +4,7 @@ import { APIResource } from '../resource'; import { APIPromise } from '../core'; import * as Core from '../core'; import * as CompletionsAPI from './completions'; +import * as MessagesAPI from './messages'; import { Stream } from '../streaming'; export class Completions extends APIResource { @@ -53,9 +54,11 @@ export interface Completion { completion: string; /** - * The model that handled the request. + * The model that will complete your prompt.\n\nSee + * [models](https://docs.anthropic.com/en/docs/models-overview) for additional + * details and options. */ - model: string; + model: MessagesAPI.Model; /** * The reason that we stopped. @@ -88,12 +91,11 @@ export interface CompletionCreateParamsBase { max_tokens_to_sample: number; /** - * The model that will complete your prompt. - * - * See [models](https://docs.anthropic.com/en/docs/models-overview) for additional + * The model that will complete your prompt.\n\nSee + * [models](https://docs.anthropic.com/en/docs/models-overview) for additional * details and options. */ - model: (string & {}) | 'claude-2.0' | 'claude-2.1' | 'claude-instant-1.2'; + model: MessagesAPI.Model; /** * The prompt that you want Claude to complete. diff --git a/src/resources/index.ts b/src/resources/index.ts index 84f839d1..9b59bcbe 100644 --- a/src/resources/index.ts +++ b/src/resources/index.ts @@ -13,7 +13,7 @@ export { ContentBlockStartEvent, ContentBlockStopEvent, ImageBlockParam, - InputJsonDelta, + InputJSONDelta, Message, MessageDeltaEvent, MessageDeltaUsage, @@ -21,6 +21,7 @@ export { MessageStartEvent, MessageStopEvent, MessageStreamEvent, + Model, RawContentBlockDeltaEvent, RawContentBlockStartEvent, RawContentBlockStopEvent, diff --git a/src/resources/messages.ts b/src/resources/messages.ts index 76d7119c..681c829c 100644 --- a/src/resources/messages.ts +++ b/src/resources/messages.ts @@ -72,7 +72,7 @@ export namespace ImageBlockParam { } } -export interface InputJsonDelta { +export interface InputJSONDelta { partial_json: string; type: 'input_json_delta'; @@ -123,9 +123,11 @@ export interface Message { content: Array; /** - * The model that handled the request. + * The model that will complete your prompt.\n\nSee + * [models](https://docs.anthropic.com/en/docs/models-overview) for additional + * details and options. */ - model: string; + model: Model; /** * Conversational role of the generated message. @@ -202,8 +204,23 @@ export type MessageStopEvent = RawMessageStopEvent; export type MessageStreamEvent = RawMessageStreamEvent; +/** + * The model that will complete your prompt.\n\nSee + * [models](https://docs.anthropic.com/en/docs/models-overview) for additional + * details and options. + */ +export type Model = + | (string & {}) + | 'claude-3-5-sonnet-20240620' + | 'claude-3-opus-20240229' + | 'claude-3-sonnet-20240229' + | 'claude-3-haiku-20240307' + | 'claude-2.1' + | 'claude-2.0' + | 'claude-instant-1.2'; + export interface RawContentBlockDeltaEvent { - delta: TextDelta | InputJsonDelta; + delta: TextDelta | InputJSONDelta; index: number; @@ -473,20 +490,11 @@ export interface MessageCreateParamsBase { messages: Array; /** - * The model that will complete your prompt. - * - * See [models](https://docs.anthropic.com/en/docs/models-overview) for additional + * The model that will complete your prompt.\n\nSee + * [models](https://docs.anthropic.com/en/docs/models-overview) for additional * details and options. */ - model: - | (string & {}) - | 'claude-3-5-sonnet-20240620' - | 'claude-3-opus-20240229' - | 'claude-3-sonnet-20240229' - | 'claude-3-haiku-20240307' - | 'claude-2.1' - | 'claude-2.0' - | 'claude-instant-1.2'; + model: Model; /** * An object describing metadata about the request. @@ -714,7 +722,7 @@ export namespace Messages { export import ContentBlockStartEvent = MessagesAPI.ContentBlockStartEvent; export import ContentBlockStopEvent = MessagesAPI.ContentBlockStopEvent; export import ImageBlockParam = MessagesAPI.ImageBlockParam; - export import InputJsonDelta = MessagesAPI.InputJsonDelta; + export import InputJSONDelta = MessagesAPI.InputJSONDelta; export import Message = MessagesAPI.Message; export import MessageDeltaEvent = MessagesAPI.MessageDeltaEvent; export import MessageDeltaUsage = MessagesAPI.MessageDeltaUsage; @@ -722,6 +730,7 @@ export namespace Messages { export import MessageStartEvent = MessagesAPI.MessageStartEvent; export import MessageStopEvent = MessagesAPI.MessageStopEvent; export import MessageStreamEvent = MessagesAPI.MessageStreamEvent; + export import Model = MessagesAPI.Model; export import RawContentBlockDeltaEvent = MessagesAPI.RawContentBlockDeltaEvent; export import RawContentBlockStartEvent = MessagesAPI.RawContentBlockStartEvent; export import RawContentBlockStopEvent = MessagesAPI.RawContentBlockStopEvent; diff --git a/tests/api-resources/completions.test.ts b/tests/api-resources/completions.test.ts index 546dcc74..4508a959 100644 --- a/tests/api-resources/completions.test.ts +++ b/tests/api-resources/completions.test.ts @@ -12,7 +12,7 @@ describe('resource completions', () => { test('create: only required params', async () => { const responsePromise = anthropic.completions.create({ max_tokens_to_sample: 256, - model: 'claude-2.1', + model: 'string', prompt: '\n\nHuman: Hello, world!\n\nAssistant:', }); const rawResponse = await responsePromise.asResponse(); @@ -27,7 +27,7 @@ describe('resource completions', () => { test('create: required and optional params', async () => { const response = await anthropic.completions.create({ max_tokens_to_sample: 256, - model: 'claude-2.1', + model: 'string', prompt: '\n\nHuman: Hello, world!\n\nAssistant:', metadata: { user_id: '13803d75-b4b5-4c3e-b2a2-6f21399b021b' }, stop_sequences: ['string', 'string', 'string'],