This documentation describes the integration of MindsDB with Anthropic, an AI research company. The integration allows for the deployment of Anthropic models within MindsDB, providing the models with access to data from various data sources.

Prerequisites

Before proceeding, ensure the following prerequisites are met:

  1. Install MindsDB locally via Docker or use MindsDB Cloud.
  2. To use Anthropic within MindsDB, install the required dependencies following this instruction.
  3. Obtain the Anthropic API key required to deploy and use Anthropic models within MindsDB. Follow the instructions for obtaining the API key.

Setup

Create an AI engine from the Anthropic handler.

CREATE ML_ENGINE anthropic_engine
FROM anthropic
USING
    anthropic_api_key = 'your-anthropic-api-key';

Create a model using anthropic_engine as an engine.

CREATE MODEL anthropic_model
PREDICT target_column
USING
      engine = 'anthropic_engine',  -- engine name as created via CREATE ML_ENGINE
      column = 'column_name',       -- column that stores input/question to the model
      max_tokens = <integer>,       -- max number of tokens to be generated by the model (default is 100)
      model = 'model_name';         -- choose one of 'claude-instant-1.2', 'claude-2.1', 'claude-3-opus-20240229', 'claude-3-sonnet-20240229' (default is 'claude-2.1')

The integrations between Anthropic and MindsDB was implemented using Anthropic Python SDK.

Usage

The following usage examples utilize anthropic_engine to create a model with the CREATE MODEL statement.

Create and deploy the Anthropic model within MindsDB to ask any question.

CREATE MODEL anthropic_model
PREDICT answer
USING
    column = 'question',
    engine = 'anthropic_engine',
    max_tokens = 300,
    model = 'claude-2.1'; -- choose one of 'claude-instant-1.2', 'claude-2.1', 'claude-3-opus-20240229', 'claude-3-sonnet-20240229'

Where:

NameDescription
columnIt defines the prompt to the model.
engineIt defines the Anthropic engine.
max_tokensIt defines the maximum number of tokens to generate before stopping.
modelIt defines model that will complete your prompt.

Default Model

When you create an Anthropic model in MindsDB, it uses the claude-2.1 model by default. But you can use other available models by passing the model name to the model parameter in the USING clause of the CREATE MODEL statement.

Default Max Tokens

When you create an Anthropic model in MindsDB, it uses 100 tokens as the maximum by default. But you can adjust this value by passing it to the max_tokens parameter in the USING clause of the CREATE MODEL statement.

Query the model to get predictions.

SELECT question, answer
FROM anthropic_model
WHERE question = 'Where is Stockholm located?';

Here is the output:

+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
| question                    | answer                                                                                                                                             |
+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
| Where is Stockholm located? |  Stockholm is the capital and largest city of Sweden. It is located on Sweden's south-central east coast, where Lake Mälaren meets the Baltic Sea. |
+-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+

Next Steps

Go to the Use Cases section to see more examples.