API Anthropic Claude em Python
anthropic.Anthropic(), messages.create(), blocos de conteúdo, raciocínio estendido e transmissão.
API Anthropic Claude em Python é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.
O SDK da Anthropic
Os modelos Claude da Anthropic são acessados por meio do pacote Python anthropic. Instale-o com pip install anthropic. Claude se destaca pelo raciocínio com contexto longo, pelo seguimento cuidadoso de instruções e pelo uso de ferramentas.
pip install anthropic
import anthropicCriando o cliente
Crie o cliente com anthropic.Anthropic(). Por padrão, ele lê sua chave da variável de ambiente ANTHROPIC_API_KEY, mantendo as credenciais fora do código.
import anthropic
client = anthropic.Anthropic()
# Or explicitly
client = anthropic.Anthropic(api_key="sk-ant-...")A API de mensagens
Claude usa client.messages.create(). Diferentemente da OpenAI, a instrução do sistema é um parâmetro separado, não uma mensagem na lista. A lista messages contém apenas as interações do usuário e do assistente.
message = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
system="You are a concise expert.",
messages=[{"role": "user", "content": "Explain RAG in one sentence."}]
)max_tokens é obrigatório
Uma diferença importante: max_tokens é obrigatório na API da Anthropic. Ele limita quantos tokens Claude pode gerar em sua resposta. Defina um valor alto o suficiente para a saída esperada, mas lembre-se de que ele também protege contra custos descontrolados.
message = client.messages.create(
model="claude-opus-4-8",
max_tokens=2048,
messages=[{"role": "user", "content": "Write a haiku about Python."}]
)Lendo a resposta
Claude retorna uma lista content de blocos. Para texto simples, a resposta está em message.content[0].text. Ela é uma lista porque uma resposta pode conter vários blocos, como texto e uma solicitação de uso de ferramenta.
print(message.content[0].text)
# Inspect block type
print(message.content[0].type) # "text"Histórico da conversa
Assim como outras APIs de conversa, Claude não mantém estado. Para continuar uma conversa, você mesmo deve anexar a resposta do assistente e a próxima interação do usuário a messages.
messages = [{"role": "user", "content": "Hello"}]
resp = client.messages.create(model="claude-opus-4-8", max_tokens=512, messages=messages)
messages.append({"role": "assistant", "content": resp.content[0].text})
messages.append({"role": "user", "content": "Tell me more"})Transmissão com um gerenciador de contexto
Para obter saída em tempo real, Claude oferece client.messages.stream(), usado como um gerenciador de contexto com a instrução with. Isso abre e fecha a conexão com segurança.
with client.messages.stream(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Count to five."}]
) as stream:
pass # iterate insidePercorrendo o fluxo de texto
Dentro do bloco with, percorra stream.text_stream para receber fragmentos de texto à medida que Claude os gera. Cada item é uma cadeia de caracteres pronta para ser impressa.
with client.messages.stream(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Count to five."}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)Obtendo a mensagem final
Quando a transmissão terminar, chame stream.get_final_message() para recuperar o objeto de mensagem completo e montado, incluindo os dados de uso e todos os blocos de conteúdo.
with client.messages.stream(model="claude-opus-4-8", max_tokens=1024,
messages=[{"role": "user", "content": "Hi"}]) as stream:
for text in stream.text_stream:
print(text, end="")
final = stream.get_final_message()Uso de tokens
A resposta contém um objeto usage com input_tokens e output_tokens. Observe que os nomes diferem dos usados pela OpenAI (que usa entrada e conclusão), mas o significado é o mesmo: acompanhar o custo de cada chamada.
print(message.usage.input_tokens)
print(message.usage.output_tokens)Diferenças entre OpenAI e Anthropic
Principais diferenças a lembrar: a Anthropic coloca a instrução do sistema em seu próprio parâmetro, exige max_tokens, lê o texto em content[0].text e transmite por meio de um gerenciador de contexto with. Conhecer essas diferenças permite alternar entre provedores com segurança.
Verificação rápida
Teste seus conhecimentos sobre a Anthropic.
Recapitulação: Claude em Python
Você criou um cliente anthropic.Anthropic() e chamou messages.create() com um max_tokens obrigatório e uma instrução system separada. Você leu as respostas em content[0].text e acompanhou o custo por meio de usage.input_tokens / output_tokens.
Para transmitir em fluxo, você usou client.messages.stream() como um gerenciador de contexto with, percorreu text_stream e obteve o resultado montado com get_final_message().
Perguntas Frequentes
A aula “API Anthropic Claude em Python” é grátis?
Sim — o texto completo de “API Anthropic Claude em Python” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.
O que vou aprender em “API Anthropic Claude em Python”?
anthropic.Anthropic(), messages.create(), blocos de conteúdo, raciocínio estendido e transmissão. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Learn AI with Python?
Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “API Anthropic Claude em Python”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Learn AI with Python?
Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- API da OpenAI: chat.completions e transmissão
- API Anthropic Claude em Python
- Chamadas de funções e uso de ferramentas com LLMs
- Engenharia de prompts para aplicações LLM em produção