Metadata-Version: 2.4
Name: enthusiast-model-anthropic
Version: 1.0.0
Summary: A plugin for Enthusiast that provides an Anthropic connector.
Author: Mateusz Porębski
Author-email: mateusz.porebski@upsidelab.io
Requires-Python: >=3.10,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Dist: anthropic (>=0.80,<1.0)
Requires-Dist: enthusiast-common (>=1.7.0,<2)
Requires-Dist: langchain-anthropic (>=1.4,<2.0)
Requires-Dist: langchain-core (>=1.2,<2.0)
Description-Content-Type: text/markdown

# Anthropic Models

This Enthusiast plugin enables Anthropic Claude models as LLMs.

Note: Anthropic does not provide an embeddings API, so this plugin must be used alongside another LLM provider that supports embeddings (Anthropic models handle agent chat conversations, while the other provider handles embedding calculations).

## Installation

Run the following command inside your application directory:

```shell
pip install enthusiast-model-anthropic
```

## Configuration

Register the provider in your `settings_override.py`:

```python
CATALOG_LANGUAGE_MODEL_PROVIDERS = [
    'enthusiast_model_anthropic.AnthropicLanguageModelProvider',
]
```

Set the required environment variable:

```
ANTHROPIC_API_KEY=<your_anthropic_api_key>
```

## Notes

**Streaming**: Anthropic models emit text tokens before tool calls within the same response, making it impossible to distinguish mid-stream whether a text chunk precedes a tool call. As a result, text responses are delivered as a single block once the full response is received, rather than streamed token-by-token.

