feat(anthropic): add support for claude-opus-4 and claude-sonnet-4 (#3351)
* feat(anthropic): add support for claude-opus-4-0 and claude-sonnet-4-0 models - Introduce `CLAUDE_OPUS_4` and `CLAUDE_SONNET_4` to `ChatModel` enum - Update documentation to include new model options Signed-off-by: Alexandros Pappas <apappascs@gmail.com> * add model aliases url to anthropic documentation Signed-off-by: Alexandros Pappas <apappascs@gmail.com> --------- Signed-off-by: Alexandros Pappas <apappascs@gmail.com>
This commit is contained in:
committed by
GitHub
parent
3a527eeb98
commit
71e56fbed0
@@ -241,6 +241,16 @@ public final class AnthropicApi {
|
||||
public enum ChatModel implements ChatModelDescription {
|
||||
|
||||
// @formatter:off
|
||||
/**
|
||||
* The claude-opus-4-0 model.
|
||||
*/
|
||||
CLAUDE_OPUS_4("claude-opus-4-0"),
|
||||
|
||||
/**
|
||||
* The claude-sonnet-4-0 model.
|
||||
*/
|
||||
CLAUDE_SONNET_4("claude-sonnet-4-0"),
|
||||
|
||||
/**
|
||||
* The claude-3-7-sonnet-latest model.
|
||||
*/
|
||||
|
||||
@@ -124,7 +124,7 @@ The prefix `spring.ai.anthropic` is used as the property prefix that lets you co
|
||||
| spring.ai.anthropic.completions-path | The path to append to the base URL. | `/v1/chat/completions`
|
||||
| spring.ai.anthropic.version | Anthropic API version | 2023-06-01
|
||||
| spring.ai.anthropic.api-key | The API Key | -
|
||||
| spring.ai.anthropic.beta-version | Enables new/experimental features. If set to `max-tokens-3-5-sonnet-2024-07-15`
|
||||
| spring.ai.anthropic.beta-version | Enables new/experimental features. If set to `max-tokens-3-5-sonnet-2024-07-15`
|
||||
the output tokens limit is increased from `4096` to `8192` tokens (for claude-3-5-sonnet only). | `tools-2024-04-04`
|
||||
|====
|
||||
|
||||
@@ -149,7 +149,7 @@ The prefix `spring.ai.anthropic.chat` is the property prefix that lets you confi
|
||||
|
||||
| spring.ai.anthropic.chat.enabled (Removed and no longer valid) | Enable Anthropic chat model. | true
|
||||
| spring.ai.model.chat | Enable Anthropic chat model. | anthropic
|
||||
| spring.ai.anthropic.chat.options.model | This is the Anthropic Chat model to use. Supports: `claude-3-7-sonnet-latest`, `claude-3-5-sonnet-latest`, `claude-3-opus-20240229`, `claude-3-sonnet-20240229`, `claude-3-haiku-20240307` | `claude-3-7-sonnet-latest`
|
||||
| spring.ai.anthropic.chat.options.model | This is the Anthropic Chat model to use. Supports: `claude-opus-4-0`, `claude-sonnet-4-0`, `claude-3-7-sonnet-latest`, `claude-3-5-sonnet-latest`, `claude-3-opus-20240229`, `claude-3-sonnet-20240229`, `claude-3-haiku-20240307` | `claude-3-7-sonnet-latest`
|
||||
| spring.ai.anthropic.chat.options.temperature | The sampling temperature to use that controls the apparent creativity of generated completions. Higher values will make output more random while lower values will make results more focused and deterministic. It is not recommended to modify temperature and top_p for the same completions request as the interaction of these two settings is difficult to predict. | 0.8
|
||||
| spring.ai.anthropic.chat.options.max-tokens | The maximum number of tokens to generate in the chat completion. The total length of input tokens and generated tokens is limited by the model's context length. | 500
|
||||
| spring.ai.anthropic.chat.options.stop-sequence | Custom text sequences that will cause the model to stop generating. Our models will normally stop when they have naturally completed their turn, which will result in a response stop_reason of "end_turn". If you want the model to stop generating when it encounters custom strings of text, you can use the stop_sequences parameter. If the model encounters one of the custom sequences, the response stop_reason value will be "stop_sequence" and the response stop_sequence value will contain the matched stop sequence. | -
|
||||
@@ -164,6 +164,8 @@ The prefix `spring.ai.anthropic.chat` is the property prefix that lets you confi
|
||||
| spring.ai.anthropic.chat.options.http-headers | Optional HTTP headers to be added to the chat completion request. | -
|
||||
|====
|
||||
|
||||
TIP: For the latest list of model aliases and their descriptions, see the link:https://docs.anthropic.com/en/docs/about-claude/models/overview#model-aliases[official Anthropic model aliases documentation].
|
||||
|
||||
TIP: All properties prefixed with `spring.ai.anthropic.chat.options` can be overridden at runtime by adding a request specific <<chat-options>> to the `Prompt` call.
|
||||
|
||||
== Runtime Options [[chat-options]]
|
||||
@@ -262,7 +264,7 @@ spring.ai.anthropic.chat.options.temperature=0.7
|
||||
spring.ai.anthropic.chat.options.max-tokens=450
|
||||
----
|
||||
|
||||
TIP: replace the `api-key` with your Anthropic credentials.
|
||||
TIP: Replace the `api-key` with your Anthropic credentials.
|
||||
|
||||
This will create a `AnthropicChatModel` implementation that you can inject into your class.
|
||||
Here is an example of a simple `@Controller` class that uses the chat model for text generations.
|
||||
|
||||
Reference in New Issue
Block a user