Claude Platform Docs
  • Mensagens
  • Agentes Gerenciados
  • Administração

Search...
⌘K
Casos de uso
Visão geralRoteamento de ticketsAgente de suporte ao clienteModeração de conteúdoResumo jurídico
Engenharia de prompts
Visão geralPráticas recomendadas de promptsPrompts para o Claude Fable 5Prompts para o Claude Opus 4.8Prompts para o Claude Sonnet 5Ferramentas de prompts do Console
Testar e avaliar
Definir sucesso e criar avaliaçõesUsando a Ferramenta de Avaliação no ConsoleReduzindo a latência
Fortalecer proteções
Reduzir alucinaçõesAumentar a consistência das saídasMitigar jailbreaksReduzir vazamento de prompt
Referência
Glossário

Log in
Agente de suporte ao cliente
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Práticas recomendadas/Casos de uso

Agente de suporte ao cliente

Crie um chatbot de suporte ao cliente com Claude que responde a perguntas sobre produtos, mantém o foco no tópico e gera cotações por meio do uso de ferramentas.

Pré-requisitos

Para seguir este guia, você precisa de:

  • Uma chave de API do Claude (definida como a variável de ambiente ANTHROPIC_API_KEY)
  • Python 3.9 ou posterior

Instale os pacotes necessários:

pip install anthropic streamlit python-dotenv

Antes de construir com Claude

Decida se deve usar Claude para chat de suporte

Aqui estão alguns indicadores-chave de que você deve empregar um LLM como Claude para automatizar partes do seu processo de suporte ao cliente:

Algumas considerações para escolher Claude em vez de outros LLMs:

  • Você prioriza conversas naturais e com nuances: a compreensão sofisticada de linguagem do Claude permite conversas mais naturais e conscientes do contexto, que parecem mais humanas do que chats com outros LLMs.
  • Você frequentemente recebe consultas complexas e abertas: Claude pode lidar com uma ampla gama de tópicos e perguntas sem gerar respostas padronizadas ou exigir programação extensiva de permutações de enunciados do usuário.
  • Você precisa de suporte multilíngue escalável: as capacidades multilíngues do Claude permitem que ele participe de conversas em mais de 200 idiomas sem a necessidade de chatbots separados ou processos extensivos de tradução para cada idioma suportado.

Defina sua interação de chat ideal

Descreva uma interação ideal com o cliente para definir como e quando você espera que o cliente interaja com Claude. Esse esboço ajudará a determinar os requisitos técnicos da sua solução.

Aqui está um exemplo de interação de chat para suporte ao cliente de seguro de automóvel:

  • Cliente: Inicia a experiência de chat de suporte
    • Claude: Cumprimenta calorosamente o cliente e inicia a conversa
  • Cliente: Pergunta sobre seguro para seu novo carro elétrico
    • Claude: Fornece informações relevantes sobre cobertura de veículos elétricos
  • Cliente: Faz perguntas relacionadas a necessidades específicas de seguros para veículos elétricos
    • Claude: Responde com respostas precisas e informativas e fornece links para as fontes
  • Cliente: Faz perguntas fora do tópico, não relacionadas a seguros ou carros
    • Claude: Esclarece que não discute tópicos não relacionados e redireciona o usuário de volta ao seguro de automóvel
  • Cliente: Expressa interesse em uma cotação de seguro
    • Claude: Faz um conjunto de perguntas para determinar a cotação apropriada, adaptando-se às respostas
    • Claude: Envia uma solicitação para usar a ferramenta de API de geração de cotação junto com as informações necessárias coletadas do usuário
    • Claude: Recebe as informações de resposta do uso de ferramentas da API, sintetiza as informações em uma resposta natural e apresenta a cotação fornecida ao usuário
  • Cliente: Faz perguntas de acompanhamento
    • Claude: Responde às perguntas de acompanhamento conforme necessário
    • Claude: Orienta o cliente para os próximos passos no processo de seguro e encerra a conversa

No exemplo real que você escrever para seu próprio caso de uso, pode ser útil escrever as palavras reais dessa interação para que você também possa ter uma noção do tom ideal, do tamanho da resposta e do nível de detalhe que deseja que Claude tenha.

Divida a interação em tarefas únicas

O chat de suporte ao cliente é uma coleção de várias tarefas diferentes, desde responder perguntas até recuperar informações e executar ações em solicitações, tudo reunido em uma única interação com o cliente. Antes de começar a construir, divida sua interação ideal com o cliente em cada tarefa que você deseja que Claude seja capaz de executar. Isso garante que você possa criar prompts e avaliar Claude para cada tarefa, e lhe dá uma boa noção da variedade de interações que você precisa considerar ao escrever casos de teste.


Às vezes, os clientes acham útil visualizar isso como um fluxograma de interação de possíveis pontos de inflexão da conversa, dependendo das solicitações do usuário.

Aqui estão as principais tarefas associadas ao exemplo de interação de seguro:

  1. Saudação e orientação geral

    • Cumprimentar calorosamente o cliente e iniciar a conversa
    • Fornecer informações gerais sobre a empresa e a interação
  2. Informações sobre o produto

    • Fornecer informações sobre cobertura de veículos elétricos
      
      Isso exigirá que Claude tenha as informações necessárias em seu contexto e pode implicar que uma integração RAG seja necessária.
    • Responder a perguntas relacionadas a necessidades específicas de seguro de veículos elétricos
    • Responder a perguntas de acompanhamento sobre a cotação ou detalhes do seguro
    • Oferecer links para fontes quando apropriado
  3. Gerenciamento da conversa

    • Manter o foco no tópico (seguro de automóvel)
    • Redirecionar perguntas fora do tópico de volta a assuntos relevantes
  4. Geração de cotação

    • Fazer perguntas apropriadas para determinar a elegibilidade da cotação
    • Adaptar perguntas com base nas respostas do cliente
    • Enviar informações coletadas para a API de geração de cotação
    • Apresentar a cotação fornecida ao cliente

Estabeleça critérios de sucesso

Trabalhe com sua equipe de suporte para definir critérios de sucesso e escrever avaliações detalhadas com benchmarks e metas mensuráveis.

Aqui estão critérios e benchmarks que podem ser usados para avaliar o quão bem Claude executa as tarefas definidas:

Aqui estão critérios e benchmarks que podem ser usados para avaliar o impacto nos negócios de empregar Claude para suporte:

Como implementar Claude como um agente de atendimento ao cliente

Escolha o modelo Claude certo

A escolha do modelo depende das compensações entre custo, precisão e tempo de resposta.

Para chat de suporte ao cliente, Claude Opus 4.8 é adequado para equilibrar inteligência, "latency" (latência) e custo. No entanto, para casos em que você tem fluxo de conversa com vários prompts, incluindo RAG, uso de ferramentas ou prompts de contexto longo, Claude Haiku 4.5 pode ser mais adequado para otimizar a latência.

Construa um prompt forte

Usar Claude para suporte ao cliente requer que Claude tenha direção e contexto suficientes para responder adequadamente, ao mesmo tempo em que tenha flexibilidade suficiente para lidar com uma ampla gama de consultas de clientes.

Comece escrevendo os elementos de um prompt forte, começando com um prompt do sistema. Crie um arquivo chamado config.py e adicione cada um dos seguintes blocos a ele:

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."""

Embora você possa ficar tentado a colocar todas as suas informações dentro de um prompt do sistema como forma de separar instruções da conversa do usuário, Claude na verdade funciona melhor com a maior parte do conteúdo do prompt escrito dentro do primeiro turno User (com a única exceção sendo o prompting de papel). Leia mais em Dando a Claude um papel com um prompt do sistema.

É melhor dividir prompts complexos em subseções e escrever uma parte de cada vez. Para cada tarefa, você pode ter mais sucesso seguindo um processo passo a passo para definir as partes do prompt que Claude precisaria para executar bem a tarefa. Para este exemplo de suporte ao cliente de seguro de automóvel, você escreverá de forma incremental todas as partes de um prompt, começando com a tarefa "Saudação e orientação geral". Isso também facilita a depuração do seu prompt, pois você pode ajustar mais rapidamente partes individuais do prompt geral.

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>
"""

Em seguida, faça o mesmo para suas informações sobre seguro de automóvel e seguro de carro elétrico.

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>
"""

Agora que você tem seu conteúdo estático, adicione pelo menos 4-5 exemplos de interações "boas" para orientar as respostas do Claude. Esses exemplos devem ser representativos da sua interação ideal com o cliente e podem incluir guardrails, chamadas de ferramentas, etc.

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>
"""

Você também vai querer incluir quaisquer instruções importantes descrevendo o que fazer e o que não fazer sobre como Claude deve interagir com o cliente. Isso pode se basear em guardrails da marca ou políticas de suporte.

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.
"""

Agora combine todas essas seções em uma única string para usar como seu prompt.

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

Adicione capacidades dinâmicas e agênticas com uso de ferramentas

Claude é capaz de executar ações e recuperar informações dinamicamente usando a funcionalidade de uso de ferramentas do lado do cliente. Comece listando quaisquer ferramentas externas ou APIs que o prompt deve usar.

Para este exemplo, comece com uma ferramenta para calcular a cotação.


Como lembrete, esta ferramenta não realizará o cálculo real, ela apenas sinalizará para a aplicação que uma ferramenta deve ser usada com quaisquer argumentos especificados.

Adicione o nome do modelo, a definição da ferramenta e uma implementação stub ao config.py:

import time

MODEL = "claude-opus-4-8"

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"""
    # Você pode chamar um endpoint HTTP ou um banco de dados para obter a cotação.
    # Aqui, simulamos um atraso de 1 segundo e retornamos uma cotação fixa de 100.
    time.sleep(1)
    return 100

Implante seus prompts

É difícil saber o quão bem seu prompt funciona sem implantá-lo em um ambiente de produção de teste e executar avaliações. Construa uma pequena aplicação usando o prompt, o SDK da Anthropic e o Streamlit para uma interface de usuário.

Em um arquivo chamado chatbot.py, comece configurando a classe ChatBot, que encapsulará as interações com o SDK da Anthropic.

A classe deve ter dois métodos principais: generate_message e process_user_input.

from anthropic import Anthropic
from config import IDENTITY, TOOLS, MODEL, get_quote
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 = follow_up_response.content[0].text
            self.session_state.messages.append(
                {"role": "assistant", "content": response_text}
            )
            return response_text

        elif response_message.content[0].type == "text":
            response_text = response_message.content[0].text
            self.session_state.messages.append(
                {"role": "assistant", "content": response_text}
            )
            return response_text

        else:
            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")

Construa sua interface de usuário

Teste a implantação deste código com Streamlit usando um método main. Esta função main() configura uma interface de chat baseada em Streamlit.

Faça isso em um arquivo chamado 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)

    # Exibe mensagens do usuário e do assistente, pulando as duas primeiras
    for message in st.session_state.messages[2:]:
        # ignora blocos de uso de ferramentas
        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()

Execute o programa com:

streamlit run app.py

Avalie seus prompts

O prompting geralmente requer testes e otimização para estar pronto para produção. Para determinar a prontidão da sua solução, avalie o desempenho do chatbot usando um processo sistemático que combina métodos quantitativos e qualitativos. Criar uma avaliação empírica forte com base nos seus critérios de sucesso definidos permitirá que você otimize seus prompts.


O Claude Console agora apresenta uma ferramenta de Avaliação que permite testar seus prompts em vários cenários.

Melhore o desempenho

Em cenários complexos, pode ser útil considerar estratégias adicionais para melhorar o desempenho além das técnicas padrão de engenharia de prompt e estratégias de implementação de guardrails. Aqui estão alguns cenários comuns:

Reduza a latência de contexto longo com RAG

Ao lidar com grandes quantidades de contexto estático e dinâmico, incluir todas as informações no prompt pode levar a custos altos, tempos de resposta mais lentos e atingir os limites da janela de contexto. Nesse cenário, implementar técnicas de "Retrieval Augmented Generation" (geração aumentada por recuperação), ou RAG, pode melhorar o desempenho e a eficiência.

Ao usar modelos de embedding como o Voyage para converter informações em representações vetoriais, você pode criar um sistema mais escalável e responsivo. Essa abordagem permite a recuperação dinâmica de informações relevantes com base na consulta atual, em vez de incluir todo o contexto possível em cada prompt.

Implementar RAG para casos de uso de suporte demonstrou aumentar a precisão, reduzir os tempos de resposta e reduzir os custos de API em sistemas com requisitos extensivos de contexto. Consulte a receita de RAG para um exemplo prático.

Integre dados em tempo real com uso de ferramentas

Ao lidar com consultas que exigem informações em tempo real, como saldos de contas ou detalhes de apólices, abordagens de RAG baseadas em embedding não são suficientes. Em vez disso, o uso de ferramentas pode aprimorar a capacidade do seu chatbot de fornecer respostas precisas e em tempo real. Por exemplo, você pode usar o uso de ferramentas para consultar informações do cliente, recuperar detalhes de pedidos e cancelar pedidos em nome do cliente.

Essa abordagem, descrita na receita de uso de ferramentas: agente de atendimento ao cliente, permite integrar dados ao vivo nas respostas do Claude e fornecer uma experiência de cliente mais personalizada e eficiente.

Fortaleça os guardrails de entrada e saída

Ao implantar um chatbot, especialmente em cenários de atendimento ao cliente, é importante prevenir riscos associados a uso indevido, consultas fora do escopo e respostas inadequadas. Embora Claude seja inerentemente resiliente a tais cenários, aqui estão passos adicionais para fortalecer os guardrails do seu chatbot:

  • Reduza alucinações: Implemente mecanismos de verificação de fatos e citações para fundamentar as respostas nas informações fornecidas.
  • Verifique informações cruzadas: Verifique se as respostas do agente estão alinhadas com as políticas da sua empresa e fatos conhecidos.
  • Evite compromissos contratuais: Garanta que o agente não faça promessas ou entre em acordos que não está autorizado a fazer.
  • Mitigue jailbreaks: Use métodos como filtros de inofensividade e validação de entrada para impedir que usuários explorem vulnerabilidades do modelo com o objetivo de gerar conteúdo inadequado.
  • Evite mencionar concorrentes: Implemente um filtro de menção a concorrentes para manter o foco na marca e não mencionar produtos ou serviços de nenhum concorrente.
  • Aumente a consistência da saída: Impeça que Claude mude de estilo ou saia do personagem, mesmo durante interações longas e complexas.
  • Remova Informações de Identificação Pessoal (PII): A menos que explicitamente necessário e autorizado, remova qualquer PII das respostas.

Reduza o tempo de resposta percebido com streaming

Ao lidar com respostas potencialmente longas, implementar streaming pode melhorar o engajamento e a satisfação do usuário. Nesse cenário, os usuários recebem a resposta progressivamente em vez de esperar que toda a resposta seja gerada.

Veja como implementar streaming:

  1. Use a API de Streaming da Anthropic para suportar respostas em streaming.
  2. Configure seu frontend para lidar com chunks de texto recebidos.
  3. Exiba cada chunk à medida que chega, simulando digitação em tempo real.
  4. Implemente um mecanismo para salvar a resposta completa, permitindo que os usuários a visualizem se navegarem para outra página e retornarem.

Em alguns casos, o streaming permite o uso de modelos mais avançados com latências base mais altas, pois a exibição progressiva mitiga o impacto de tempos de processamento mais longos.

Escale seu chatbot

À medida que a complexidade do seu chatbot cresce, a arquitetura da sua aplicação pode evoluir para acompanhar. Antes de adicionar mais camadas à sua arquitetura, considere as seguintes opções menos exaustivas:

  • Certifique-se de que está aproveitando ao máximo seus prompts e otimizando por meio de engenharia de prompt. Use os guias de engenharia de prompt para escrever os prompts mais eficazes.
  • Adicione ferramentas adicionais ao prompt (que podem incluir cadeias de prompts) e veja se consegue alcançar a funcionalidade necessária.

Se o seu chatbot lida com tarefas incrivelmente variadas, você pode considerar adicionar um classificador de intenção separado para rotear a consulta inicial do cliente. Para a aplicação existente, isso envolveria criar uma árvore de decisão que rotearia as consultas dos clientes através do classificador e depois para conversas especializadas (com seu próprio conjunto de ferramentas e prompts do sistema). Observe que esse método requer uma chamada adicional ao Claude que pode aumentar a latência.

Integre Claude ao seu fluxo de trabalho de suporte

Embora esses exemplos tenham se concentrado em funções Python que podem ser chamadas dentro de um ambiente Streamlit, implantar Claude para chatbot de suporte em tempo real requer um serviço de API.

Veja como você pode abordar isso:

  1. Crie um wrapper de API: Desenvolva um wrapper de API simples em torno da sua função de classificação. Por exemplo, você pode usar Flask API ou Fast API para encapsular seu código em um Serviço HTTP. Seu serviço HTTP poderia aceitar a entrada do usuário e retornar a resposta do Assistente em sua totalidade. Assim, seu serviço poderia ter as seguintes características:

    • Server-Sent Events (SSE): SSE permite streaming em tempo real de respostas do servidor para o cliente. Isso proporciona uma experiência suave e interativa ao trabalhar com LLMs.
    • Caching: Implementar caching pode melhorar os tempos de resposta e reduzir chamadas de API desnecessárias.
    • Retenção de contexto: Manter o contexto quando um usuário navega para outra página e retorna é importante para a continuidade nas conversas.
  2. Construa uma interface web: Implemente uma interface web amigável para interagir com o agente alimentado por Claude.

Próximos passos


Uso de ferramentas

Dê ao Claude acesso às suas APIs para que ele possa executar ações em nome dos clientes.


Desenvolver testes

Construa avaliações para medir seu agente de suporte em relação aos critérios de sucesso que você definiu.


Streaming

Transmita respostas para que os clientes vejam as respostas à medida que são geradas.

Engenharia de prompt

Refine seu prompt do sistema e exemplos para melhor desempenho nas tarefas.

Was this page helpful?

  • Pré-requisitos
  • Antes de construir com Claude
  • Decida se deve usar Claude para chat de suporte
  • Defina sua interação de chat ideal
  • Divida a interação em tarefas únicas
  • Estabeleça critérios de sucesso
  • Como implementar Claude como um agente de atendimento ao cliente
  • Escolha o modelo Claude certo
  • Construa um prompt forte
  • Adicione capacidades dinâmicas e agênticas com uso de ferramentas
  • Implante seus prompts
  • Construa sua interface de usuário
  • Avalie seus prompts
  • Melhore o desempenho
  • Integre Claude ao seu fluxo de trabalho de suporte
  • Próximos passos