Claude Platform Docs
Лучшие практикиСценарии использования

Агент поддержки клиентов

Создайте чат-бота поддержки клиентов на базе Claude, который отвечает на вопросы о продуктах, придерживается темы и формирует расчёты стоимости с помощью использования инструментов.

Предварительные требования

Чтобы следовать этому руководству, вам потребуется:

  • Ключ API Claude (заданный в переменной окружения ANTHROPIC_API_KEY)
  • Python 3.10 или новее

Установите необходимые пакеты:

pip install anthropic streamlit python-dotenv

Прежде чем создавать решение с Claude

Решите, стоит ли использовать Claude для чата поддержки

Вот несколько ключевых признаков того, что вам стоит задействовать «large language model» (большую языковую модель), или LLM, такую как Claude, для автоматизации части процесса поддержки клиентов:

Некоторые соображения в пользу выбора Claude среди других LLM:

  • Вы отдаёте приоритет естественному, тонкому диалогу: развитое понимание языка позволяет Claude вести более естественные, учитывающие контекст беседы, которые ощущаются более человечными, чем чаты с другими LLM.
  • Вы часто получаете сложные и открытые запросы: Claude может работать с широким спектром тем и вопросов, не выдавая шаблонных ответов и не требуя обширного программирования всех вариантов пользовательских высказываний.
  • Вам нужна масштабируемая многоязычная поддержка: многоязычные возможности Claude позволяют вести беседы более чем на 200 языках без необходимости создавать отдельных чат-ботов или выстраивать обширные процессы перевода для каждого поддерживаемого языка.

Определите идеальное взаимодействие в чате

Опишите идеальное взаимодействие с клиентом, чтобы определить, как и когда, по вашим ожиданиям, клиент будет взаимодействовать с Claude. Это описание поможет определить технические требования к вашему решению.

Вот пример взаимодействия в чате поддержки клиентов по автострахованию:

  • Клиент: Начинает чат поддержки
    • Claude: Тепло приветствует клиента и начинает беседу
  • Клиент: Спрашивает о страховании своего нового электромобиля
    • Claude: Предоставляет релевантную информацию о страховом покрытии электромобилей
  • Клиент: Задаёт вопросы, связанные с особыми потребностями страхования электромобилей
    • Claude: Даёт точные и информативные ответы и приводит ссылки на источники
  • Клиент: Задаёт посторонние вопросы, не связанные со страхованием или автомобилями
    • Claude: Поясняет, что не обсуждает посторонние темы, и возвращает пользователя к теме автострахования
  • Клиент: Выражает интерес к расчёту стоимости страховки
    • Claude: Задаёт ряд вопросов, чтобы определить подходящий расчёт, адаптируясь к ответам клиента
    • Claude: Отправляет запрос на использование инструмента API формирования расчёта вместе с необходимой информацией, собранной у пользователя
    • Claude: Получает ответную информацию от инструмента API, синтезирует её в естественный ответ и представляет пользователю полученный расчёт
  • Клиент: Задаёт уточняющие вопросы
    • Claude: Отвечает на уточняющие вопросы по мере необходимости
    • Claude: Направляет клиента к следующим шагам процесса страхования и завершает беседу

Разбейте взаимодействие на отдельные задачи

Чат поддержки клиентов — это совокупность множества различных задач, от ответов на вопросы и поиска информации до выполнения действий по запросам, объединённых в одно взаимодействие с клиентом. Прежде чем приступать к разработке, разбейте идеальное взаимодействие с клиентом на все задачи, которые Claude должен уметь выполнять. Это гарантирует, что вы сможете составить подсказки и оценить Claude по каждой задаче, а также даст хорошее представление о диапазоне взаимодействий, которые нужно учесть при написании тестовых случаев.

Вот ключевые задачи, связанные с примером взаимодействия по страхованию:

  1. Приветствие и общие рекомендации

    • Тепло поприветствовать клиента и начать беседу
    • Предоставить общую информацию о компании и взаимодействии
  2. Информация о продукте

    • Предоставить информацию о страховом покрытии электромобилей
    • Отвечать на вопросы, связанные с особыми потребностями страхования электромобилей
    • Отвечать на уточняющие вопросы о расчёте или деталях страхования
    • Предлагать ссылки на источники, когда это уместно
  3. Управление беседой

    • Придерживаться темы (автострахование)
    • Перенаправлять посторонние вопросы обратно к релевантным темам
  4. Формирование расчёта

    • Задавать подходящие вопросы для определения возможности расчёта
    • Адаптировать вопросы в зависимости от ответов клиента
    • Передавать собранную информацию в API формирования расчёта
    • Представлять клиенту полученный расчёт

Установите критерии успеха

Совместно с вашей командой поддержки определите критерии успеха и напишите подробные оценки с измеримыми ориентирами и целями.

Вот критерии и ориентиры, которые можно использовать для оценки того, насколько успешно Claude выполняет определённые задачи:

Вот критерии и ориентиры, которые можно использовать для оценки влияния на бизнес от применения Claude в поддержке:

Как реализовать Claude в роли агента службы поддержки

Выберите подходящую модель Claude

Выбор модели зависит от компромиссов между стоимостью, точностью и временем ответа.

Для чата поддержки клиентов Claude Opus 5 хорошо подходит для баланса интеллекта, задержки и стоимости, включая самые сложные сценарии поддержки, требующие глубоких рассуждений в длинных многошаговых беседах. Однако в случаях, когда поток беседы включает несколько подсказок, в том числе RAG, использование инструментов или подсказки с длинным контекстом, Claude Haiku 4.5 может лучше подойти для оптимизации задержки.

Составьте сильную подсказку

Использование Claude для поддержки клиентов требует, чтобы у Claude было достаточно указаний и контекста для корректных ответов и при этом достаточно гибкости для обработки широкого спектра запросов клиентов.

Начните с написания элементов сильной подсказки, начиная с «system prompt» (системной подсказки). Создайте файл config.py и добавьте в него каждый из следующих блоков:

IDENTITY = """You are Eva, a friendly and knowledgeable AI assistant for Acme Insurance
Company. Your role is to warmly welcome customers and provide information on
Acme's insurance offerings, which include car insurance and electric car
insurance. You can also help customers get quotes for their insurance needs."""

Сложные подсказки лучше разбивать на подразделы и писать по одной части за раз. Для каждой задачи вы можете добиться большего успеха, следуя пошаговому процессу определения частей подсказки, которые понадобятся Claude для качественного выполнения задачи. В этом примере поддержки клиентов по автострахованию вы будете по частям писать все элементы подсказки, начиная с задачи «Приветствие и общие рекомендации». Это также упрощает отладку подсказки, поскольку вы можете быстрее корректировать отдельные части общей подсказки.

STATIC_GREETINGS_AND_GENERAL = """
<static_context>
Acme Auto Insurance: Your Trusted Companion on the Road

About:
At Acme Insurance, we understand that your vehicle is more than just a mode of transportation—it's your ticket to life's adventures.
Since 1985, we've been crafting auto insurance policies that give drivers the confidence to explore, commute, and travel with peace of mind.
Whether you're navigating city streets or embarking on cross-country road trips, Acme is there to protect you and your vehicle.
Our innovative auto insurance policies are designed to adapt to your unique needs, covering everything from fender benders to major collisions.
With Acme's award-winning customer service and swift claim resolution, you can focus on the joy of driving while we handle the rest.
We're not just an insurance provider—we're your co-pilot in life's journeys.
Choose Acme Auto Insurance and experience the assurance that comes with superior coverage and genuine care. Because at Acme, we don't just
insure your car—we fuel your adventures on the open road.

Note: We also offer specialized coverage for electric vehicles, ensuring that drivers of all car types can benefit from our protection.

Acme Insurance offers the following products:
- Car insurance
- Electric car insurance
- Two-wheeler insurance

Business hours: Monday-Friday, 9 AM - 5 PM EST
Customer service number: 1-800-123-4567
</static_context>
"""

Затем сделайте то же самое для информации об автостраховании и страховании электромобилей.

STATIC_CAR_INSURANCE = """
<static_context>
Car Insurance Coverage:
Acme's car insurance policies typically cover:
1. Liability coverage: Pays for bodily injury and property damage you cause to others.
2. Collision coverage: Pays for damage to your car in an accident.
3. Comprehensive coverage: Pays for damage to your car from non-collision incidents.
4. Medical payments coverage: Pays for medical expenses after an accident.
5. Uninsured/underinsured motorist coverage: Protects you if you're hit by a driver with insufficient insurance.

Optional coverages include:
- Rental car reimbursement
- Roadside assistance
- New car replacement
</static_context>
"""

STATIC_ELECTRIC_CAR_INSURANCE = """
<static_context>
Electric Car Insurance:
Our specialized electric car insurance goes beyond traditional auto coverage,
offering tailored protection for your high-tech investment. In addition to standard coverages, we offer:
- Safeguarding expensive battery systems
- Covering home charging equipment
- Adapting to the rapidly evolving world of electric vehicles

Whether you're driving a Rivian, Nissan Leaf, Chevrolet Bolt,
or any other electric vehicle, our knowledgeable agents are ready to craft a policy
that gives you the confidence to enjoy every electron-powered mile.
</static_context>
"""

Теперь, когда у вас есть статический контент, добавьте не менее 4–5 примеров «хороших» взаимодействий, чтобы направлять ответы Claude. Эти примеры должны отражать ваше идеальное взаимодействие с клиентом и могут включать такие элементы, как защитные ограничения и вызовы инструментов.

EXAMPLES = """
Here are a few examples of how you can interact with customers:

<example 1>
H: Hi, do you offer commercial insurance for small businesses?

A: Ah! Unfortunately, we don't offer commercial insurance at this time.
However, we do provide a range of personal insurance products including car insurance and electric car insurance.
Would you like to know more about these offerings?
</example 1>

<example 2>
H: Hi, what are your business hours?

A: Our business hours are Monday to Friday, 9 AM to 5 PM EST.
If you have any questions or need assistance, feel free to reach out during those times.
How else can I assist you today?
</example 2>

<example 3>
H: I'm shopping for car insurance. What does Acme offer?

A: Great choice! Acme's car insurance policies typically include:
- Liability coverage: Protects you if you're at fault in an accident
- Collision coverage: Pays for damage to your car in an accident
- Comprehensive coverage: Covers non-collision incidents like theft or vandalism
- Medical payments coverage: Pays for medical expenses after an accident
- Uninsured/underinsured motorist coverage: Protects you from drivers with insufficient insurance

We also offer optional coverages like rental car reimbursement, roadside assistance, and new car replacement.
Would you like more details on any of these coverages, or do you have specific questions about insuring your vehicle?
</example 3>

<example 4>
H: I'd like to hear about your electric car insurance.

A: Certainly! Our electric car insurance is specially designed to meet the unique needs of electric vehicle owners.
In addition to all the standard coverages we offer for regular cars, our electric car policies include:

- Battery coverage: Protection against damage or degradation of your vehicle's expensive battery system
- Tech package: Covers repairs or replacement of advanced electronics and onboard computer systems
- Charging station coverage: Protects both home and portable charging equipment
- Cybersecurity protection: Coverage against hacking or digital threats
- Specialized roadside assistance: Includes flatbed towing to protect the vehicle's undercarriage

We cover a wide range of electric vehicles, including popular models from Tesla, Rivian, Nissan, Chevrolet, and more.
Is there a specific electric vehicle you're looking to insure, or would you like more details on any of these coverages?
</example 4>

<example 5>
H: I'd like to get a quote for my car insurance.

A: Certainly! I'd be happy to help you get a quote for your car insurance.
To provide you with an accurate quote, I'll need to collect some information about your vehicle and the primary driver.
Let's start with the basics:

1. What is the make and model of your vehicle?
2. What year was it manufactured?
3. Approximately how many miles have you driven?
4. What is the age of the primary driver?

Once you provide this information, I'll use our quoting tool to generate a personalized insurance quote for you.
</example 5>
"""

Вам также стоит включить любые важные инструкции, описывающие, что Claude следует и не следует делать при взаимодействии с клиентом. Они могут опираться на защитные ограничения бренда или политики поддержки.

ADDITIONAL_GUARDRAILS = """Please adhere to the following guardrails:
1. Only provide information about insurance types listed in our offerings.
2. If asked about an insurance type we don't offer, politely state
that we don't provide that service.
3. Do not speculate about future product offerings or company plans.
4. Don't make promises or enter into agreements it's not authorized to make.
You only provide information and guidance.
5. Do not mention any competitor's products or services.
"""

Теперь объедините все эти разделы в одну строку, которая будет использоваться в качестве подсказки.

TASK_SPECIFIC_INSTRUCTIONS = " ".join(
    [
        STATIC_GREETINGS_AND_GENERAL,
        STATIC_CAR_INSURANCE,
        STATIC_ELECTRIC_CAR_INSURANCE,
        EXAMPLES,
        ADDITIONAL_GUARDRAILS,
    ]
)

Добавьте динамические и агентные возможности с помощью использования инструментов

Claude способен выполнять действия и динамически извлекать информацию с помощью функциональности «tool use» (использования инструментов) на стороне клиента. Начните с перечисления всех внешних инструментов или API, которые должна использовать подсказка.

В этом примере начните с одного инструмента для расчёта стоимости.

Добавьте в config.py имя модели, определение инструмента и заглушку реализации:

import time

MODEL = "claude-opus-5"

TOOLS = [
    {
        "name": "get_quote",
        "description": "Calculate the insurance quote based on user input. Returned value is per month premium.",
        "input_schema": {
            "type": "object",
            "properties": {
                "make": {"type": "string", "description": "The make of the vehicle."},
                "model": {"type": "string", "description": "The model of the vehicle."},
                "year": {
                    "type": "integer",
                    "description": "The year the vehicle was manufactured.",
                },
                "mileage": {
                    "type": "integer",
                    "description": "The mileage on the vehicle.",
                },
                "driver_age": {
                    "type": "integer",
                    "description": "The age of the primary driver.",
                },
            },
            "required": ["make", "model", "year", "mileage", "driver_age"],
        },
    }
]


def get_quote(make, model, year, mileage, driver_age):
    """Returns the premium per month in USD"""
    # Для получения котировки можно вызвать HTTP-эндпоинт или обратиться к базе данных.
    # Здесь мы имитируем задержку в 1 секунду и возвращаем фиксированную котировку 100.
    time.sleep(1)
    return 100

Разверните ваши подсказки

Трудно понять, насколько хорошо работает ваша подсказка, не развернув её в тестовой производственной среде и не проведя оценки. Создайте небольшое приложение, используя подсказку, Anthropic SDK и Streamlit для пользовательского интерфейса.

В файле chatbot.py (или эквивалентном модуле на вашем языке) настройте класс ChatBot, который будет инкапсулировать взаимодействие с Anthropic SDK.

Класс должен иметь два основных метода: один вызывает API для генерации сообщения, а другой обрабатывает каждый входящий пользовательский ввод.

# В вашем chatbot.py импортируйте их из config.py, который вы написали выше:
# from config import IDENTITY, TOOLS, MODEL, get_quote
from anthropic import Anthropic
from dotenv import load_dotenv

load_dotenv()


class ChatBot:
    def __init__(self, session_state):
        self.anthropic = Anthropic()
        self.session_state = session_state

    def generate_message(
        self,
        messages,
        max_tokens,
    ):
        try:
            response = self.anthropic.messages.create(
                model=MODEL,
                system=IDENTITY,
                max_tokens=max_tokens,
                messages=messages,
                tools=TOOLS,
            )
            return response
        except Exception as e:
            return {"error": str(e)}

    def process_user_input(self, user_input):
        self.session_state.messages.append({"role": "user", "content": user_input})

        response_message = self.generate_message(
            messages=self.session_state.messages,
            max_tokens=2048,
        )

        if "error" in response_message:
            return f"An error occurred: {response_message['error']}"

        if response_message.content[-1].type == "tool_use":
            tool_use = response_message.content[-1]
            func_name = tool_use.name
            func_params = tool_use.input
            tool_use_id = tool_use.id

            result = self.handle_tool_use(func_name, func_params)
            self.session_state.messages.append(
                {"role": "assistant", "content": response_message.content}
            )
            self.session_state.messages.append(
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "tool_result",
                            "tool_use_id": tool_use_id,
                            "content": f"{result}",
                        }
                    ],
                }
            )

            follow_up_response = self.generate_message(
                messages=self.session_state.messages,
                max_tokens=2048,
            )

            if "error" in follow_up_response:
                return f"An error occurred: {follow_up_response['error']}"

            response_text = next(
                (block.text for block in follow_up_response.content if block.type == "text"),
                None,
            )
            if response_text is None:
                raise Exception("An error occurred: Unexpected response type")
            self.session_state.messages.append(
                {"role": "assistant", "content": response_text}
            )
            return response_text

        text_block = next(
            (block for block in response_message.content if block.type == "text"), None
        )
        if text_block is not None:
            response_text = text_block.text
            self.session_state.messages.append(
                {"role": "assistant", "content": response_text}
            )
            return response_text

        raise Exception("An error occurred: Unexpected response type")

    def handle_tool_use(self, func_name, func_params):
        if func_name == "get_quote":
            premium = get_quote(**func_params)
            return f"Quote generated: ${premium:.2f} per month"

        raise Exception("An unexpected tool was used")

Создайте пользовательский интерфейс

Протестируйте развёртывание этого кода с помощью Streamlit, используя метод main. Эта функция main() настраивает чат-интерфейс на базе Streamlit. Streamlit — это фреймворк для Python, поэтому эта часть руководства показана только на Python; класс ChatBot выше — это та часть, которую вы можете перенести на любой язык.

Сделайте это в файле app.py

import streamlit as st
from chatbot import ChatBot
from config import TASK_SPECIFIC_INSTRUCTIONS


def main():
    st.title("Chat with Eva, Acme Insurance Company's Assistant🤖")

    if "messages" not in st.session_state:
        st.session_state.messages = [
            {"role": "user", "content": TASK_SPECIFIC_INSTRUCTIONS},
            {"role": "assistant", "content": "Understood"},
        ]

    chatbot = ChatBot(st.session_state)

    # Отображаем сообщения пользователя и ассистента, пропуская первые два
    for message in st.session_state.messages[2:]:
        # игнорируем блоки использования инструментов
        if isinstance(message["content"], str):
            with st.chat_message(message["role"]):
                st.markdown(message["content"])

    if user_msg := st.chat_input("Type your message here..."):
        st.chat_message("user").markdown(user_msg)

        with st.chat_message("assistant"):
            with st.spinner("Eva is thinking..."):
                response_placeholder = st.empty()
                full_response = chatbot.process_user_input(user_msg)
                response_placeholder.markdown(full_response)


if __name__ == "__main__":
    main()

Запустите программу командой:

streamlit run app.py

Оцените ваши подсказки

Подсказки часто требуют тестирования и оптимизации, чтобы быть готовыми к производственному использованию. Чтобы определить готовность вашего решения, оцените работу чат-бота с помощью систематического процесса, сочетающего количественные и качественные методы. Создание надёжной эмпирической оценки на основе определённых вами критериев успеха позволит оптимизировать ваши подсказки.

Улучшите производительность

В сложных сценариях может быть полезно рассмотреть дополнительные стратегии повышения производительности помимо стандартных техник инженерии подсказок и стратегий внедрения защитных ограничений. Вот несколько распространённых сценариев:

Снизьте задержку при длинном контексте с помощью RAG

При работе с большими объёмами статического и динамического контекста включение всей информации в подсказку может привести к высоким затратам, более медленным ответам и достижению пределов «context window» (контекстного окна). В этом сценарии внедрение техник «Retrieval Augmented Generation» (генерации с дополнением извлечёнными данными), или RAG, может повысить производительность и эффективность.

Используя модели эмбеддингов, такие как Voyage, для преобразования информации в векторные представления, вы можете создать более масштабируемую и отзывчивую систему. Этот подход позволяет динамически извлекать релевантную информацию на основе текущего запроса, а не включать весь возможный контекст в каждую подсказку.

Показано, что внедрение RAG в сценариях поддержки повышает точность, сокращает время ответа и снижает затраты на API в системах с обширными требованиями к контексту. Рабочий пример см. в рецепте RAG.

Интегрируйте данные в реальном времени с помощью использования инструментов

При работе с запросами, требующими информации в реальном времени, например остатков на счетах или деталей полиса, подходов RAG на основе эмбеддингов недостаточно. Вместо этого использование инструментов может расширить способность вашего чат-бота давать точные ответы в реальном времени. Например, с помощью использования инструментов можно искать информацию о клиенте, получать детали заказов и отменять заказы от имени клиента.

Этот подход, описанный в рецепте «использование инструментов: агент службы поддержки», позволяет интегрировать актуальные данные в ответы Claude и обеспечивать более персонализированный и эффективный клиентский опыт.

Усильте защитные ограничения на входе и выходе

При развёртывании чат-бота, особенно в сценариях обслуживания клиентов, важно предотвращать риски, связанные со злоупотреблениями, запросами вне области применения и неуместными ответами. Хотя Claude по своей природе устойчив к таким сценариям, вот дополнительные шаги для усиления защитных ограничений вашего чат-бота:

  • Снижение галлюцинаций: внедрите механизмы проверки фактов и цитирование, чтобы ответы опирались на предоставленную информацию.
  • Перекрёстная проверка информации: убедитесь, что ответы агента соответствуют политикам вашей компании и известным фактам.
  • Избегание договорных обязательств: убедитесь, что агент не даёт обещаний и не заключает соглашений, на которые он не уполномочен.
  • Противодействие джейлбрейкам: используйте такие методы, как проверки на безвредность и валидация ввода, чтобы не дать пользователям эксплуатировать уязвимости модели с целью генерации неуместного контента.
  • Избегание упоминания конкурентов: внедрите фильтр упоминаний конкурентов, чтобы сохранять фокус на бренде и не упоминать продукты или услуги конкурентов.
  • Повышение согласованности вывода: не позволяйте Claude менять стиль или выходить из роли даже во время длинных и сложных взаимодействий.
  • Удаление персональных данных (PII): если это явно не требуется и не разрешено, удаляйте любые персональные данные из ответов.

Сократите воспринимаемое время ответа с помощью потоковой передачи

При работе с потенциально длинными ответами внедрение «streaming» (потоковой передачи) может повысить вовлечённость и удовлетворённость пользователей. В этом сценарии пользователи получают ответ постепенно, а не ждут, пока будет сгенерирован весь ответ.

Вот как реализовать потоковую передачу:

  1. Используйте Anthropic Streaming API для поддержки потоковых ответов.
  2. Настройте ваш фронтенд для обработки входящих фрагментов текста.
  3. Отображайте каждый фрагмент по мере поступления, имитируя набор текста в реальном времени.
  4. Реализуйте механизм сохранения полного ответа, позволяющий пользователям просмотреть его, если они уйдут со страницы и вернутся.

В некоторых случаях потоковая передача позволяет использовать более продвинутые модели с более высокой базовой задержкой, поскольку постепенное отображение смягчает влияние более длительного времени обработки.

Масштабируйте ваш чат-бот

По мере роста сложности вашего чат-бота архитектура приложения может развиваться соответствующим образом. Прежде чем добавлять дополнительные уровни в архитектуру, рассмотрите следующие менее трудоёмкие варианты:

  • Убедитесь, что вы извлекаете максимум из ваших подсказок и оптимизируете их с помощью инженерии подсказок. Используйте руководства по инженерии подсказок, чтобы писать наиболее эффективные подсказки.
  • Добавьте в подсказку дополнительные инструменты (которые могут включать цепочки подсказок) и проверьте, удаётся ли достичь требуемой функциональности.

Если ваш чат-бот обрабатывает чрезвычайно разнообразные задачи, возможно, стоит рассмотреть добавление отдельного классификатора намерений для маршрутизации первоначального запроса клиента. Для существующего приложения это означало бы создание дерева решений, которое направляло бы запросы клиентов через классификатор, а затем в специализированные беседы (с собственным набором инструментов и системных подсказок). Обратите внимание, что этот метод требует дополнительного вызова Claude, что может увеличить задержку.

Интегрируйте Claude в ваш рабочий процесс поддержки

Хотя эти примеры были сосредоточены на функциях Python, вызываемых в среде Streamlit, развёртывание Claude для чат-бота поддержки в реальном времени требует сервиса API.

Вот как можно к этому подойти:

  1. Создайте обёртку API: разработайте простую обёртку API вокруг вашей функции классификации. Например, вы можете использовать Flask API или Fast API, чтобы обернуть ваш код в HTTP-сервис. Ваш HTTP-сервис может принимать пользовательский ввод и возвращать ответ ассистента целиком. Таким образом, ваш сервис может обладать следующими характеристиками:

    • Server-Sent Events (SSE): SSE обеспечивает потоковую передачу ответов от сервера клиенту в реальном времени. Это даёт плавный, интерактивный опыт при работе с LLM.
    • Кэширование: внедрение кэширования может улучшить время ответа и сократить ненужные вызовы API.
    • Сохранение контекста: поддержание контекста, когда пользователь уходит и возвращается, важно для непрерывности бесед.
  2. Создайте веб-интерфейс: реализуйте удобный веб-интерфейс для взаимодействия с агентом на базе Claude.

Следующие шаги

Предоставьте Claude доступ к вашим API, чтобы он мог выполнять действия от имени клиентов.

Создайте оценки, чтобы измерить работу вашего агента поддержки по определённым вами критериям успеха.

Передавайте ответы потоком, чтобы клиенты видели их по мере генерации.

Доработайте вашу системную подсказку и примеры для лучшего выполнения задач.

Was this page helpful?