This quickstart example will teach you how to get started with Adaptive Engine, by mocking an AI customer support co-pilot use case. You’ll be taken through the following steps to deploy, use, and adapt your first model:

  1. Install the Adaptive Python SDK
  2. Create a new use case
  3. Deploy a model and make an inference request
  4. Log feedback on the model’s completion
  5. Adapt a model on previous interaction feedback

Step-by-step walkthrough

1

Install the Adaptive Python SDK

First, you pip install the Adaptive SDK.

pip install adaptive_sdk

Instantiate the Adaptive client.

Adaptive SDK
from adaptive_sdk import Adaptive

client = Adaptive(
    base_url="ADAPTIVE_URL",
    api_key="ADAPTIVE_API_KEY"
)
2

Create a new use case

An Adaptive Engine use case is a user-defined workspace where you group together resources such as models, interaction logs and metrics for monitoring and evaluation.

You first create a Customer Support Assistant use case that to service your customer support operations.

Adaptive SDK
use_case = client.use_cases.create(
    key="customer_support_assistant"
)
3

Deploy a model and make an inference request

You deploy the Llama 3.1 70B instruction-tuned model and attach it to the use case, so your customer support agents can start using it. This is a capable base model that can provide satisfactory performance initially. Learn more about other supported models.

Adaptive SDK
# configure default client use case
# SDK methods will target the customer support use case going forward, unless specifically overriden
client = client.set_default_use_case(use_case.key)

model = client.models.attach(
    model="llama-3.3-70b-instruct",
)

You can now integrate the Adaptive SDK in your customer support application, and start making inference requests. The Adaptive Chat API is also compatible with the OpenAI Python library, so there is no need to refactor application code if you were previously using it.

Adaptive SDK
chat_response = client.chat.create(
    model=model.key,
    messages=[
        {
            "role": "system",
            "content": "You are a helpful customer support assistant."
        },
        {
            "role": "user",
            "content": "I was blocked out of my account, I don't know why."
        }
    ]
)
print(chat_response.choices[0].message.content)

Output:

Have you tried recovering your password?

Pairs of messages, completion resulting from chat requests are automatically logged and saved on Adaptive.

4

Log feedback on the model's completion

Your customer support agent who is using the model as an assistant finds the model’s completion appropriate, and accepts it to be sent to the customer.

To log and aggregate this feedback, you register a new Acceptance feedback key, link it to your use case, and log the agent’s feedback against the completion_id.

Adaptive SDK
feedback_key = client.feedback.register_key(
    key="acceptance",
    kind="bool",
    scoring_type="higher_is_better",
)
_ = client.feedback.link(feedback_key.key)

completion_id = chat_response.choices[0].completion_id

feedback = client.feedback.log_metric(
    completion_id=completion_id,
    feedback_key=feedback_key.key,
    value=True,
)

Learn more about feedback types and logging in Adaptive.

5

Adapt a model on previous interaction feedback

After running your customer support operations with the help of Adaptive Engine, you have accumulated feedback from your human agents in production. To align a model to the preferences of your human agents, you adapt a smaller 8B model on the feedback you logged. This tunes the smaller model using reinforcement learning methods, learning from the successes and failures of the larger, more capable model.

Adaptive SDK
job = client.training.jobs.create(
    model="llama-3.1-8b-instruct",
    config={
        "output_name":"llama-3.1-8b-customer-support",
        "training_config": {
            "training_objective": {"metric_key": feedback_key.key}
        }
    }
)

The job trains and saves a new, improved model that you can immediatelly deploy for better results! Learn more in Adapt a model.

Next steps

  • Check out how to A/B test models in production for easy iteration and decision making.
  • Dive deeper into training with Adaptive Engine.