Anthropic Claude Conclusões de texto API - Amazon Bedrock

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Anthropic Claude Conclusões de texto API

Esta seção fornece parâmetros de inferência e exemplos de código para usar Anthropic Claude modelos com as conclusões API de texto.

Anthropic Claude Visão geral das conclusões API de texto

Use a Conclusão de texto API para gerar texto em um único turno a partir de um prompt fornecido pelo usuário. Por exemplo, você pode usar a Completação de texto API para gerar texto para uma postagem do blog ou para resumir a entrada de texto de um usuário.

Para obter informações sobre a criação de solicitações para Anthropic Claude modelos, consulte Introdução ao design rápido. Se você quiser usar seus prompts de conclusão de texto existentes com oAnthropic Claude Mensagens API, consulte Migração de conclusões de texto.

Modelos compatíveis

Você pode usar as conclusões de texto API com o seguinte Anthropic Claude modelos.

  • Anthropic Claude Instant v1.2

  • Anthropic Claude v2

  • Anthropic Claude v2.1

Solicitação e reposta

O corpo da solicitação é passado no body campo de uma solicitação para InvokeModelou InvokeModelWithResponseStream.

Para obter mais informações, consulte https://docs.anthropic.com/claude/reference/complete_post no Anthropic Claude documentação.

Request

Anthropic Claude tem os seguintes parâmetros de inferência para uma chamada de inferência de conclusão de texto.

{ "prompt": "\n\nHuman:<prompt>\n\nAssistant:", "temperature": float, "top_p": float, "top_k": int, "max_tokens_to_sample": int, "stop_sequences": [string] }

Veja a seguir os parâmetros necessários.

  • prompt — (Obrigatório) O prompt que você deseja que Claude conclua. Para gerar uma resposta adequada, você precisa formatar sua solicitação usando turnos alternados \n\nHuman: e \n\nAssistant: conversacionais. Por exemplo:

    "\n\nHuman: {userQuestion}\n\nAssistant:"

    Para obter mais informações, consulte Validação imediata no Anthropic Claude documentação.

  • max_tokens_to_sample — (Obrigatório) O número máximo de tokens a serem gerados antes de parar. Recomendamos um limite de 4.000 tokens para um desempenho ideal.

    Observe que Anthropic Claude os modelos podem parar de gerar tokens antes de atingir o valor demax_tokens_to_sample. Diferente Anthropic Claude os modelos têm valores máximos diferentes para esse parâmetro. Para obter mais informações, consulte Comparação de modelos no Anthropic Claude documentação.

    Padrão Mínimo Máximo

    200

    0

    4096

Veja a seguir os parâmetros opcionais.

  • stop_sequences — (Opcional) Sequências que farão com que o modelo pare de gerar.

    Anthropic Claude os modelos param de "\n\nHuman:" funcionar e podem incluir sequências de parada adicionais integradas no futuro. Use o parâmetro de stop_sequences inferência para incluir sequências de caracteres adicionais que sinalizarão ao modelo para parar de gerar texto.

  • temperatura — (Opcional) A quantidade de aleatoriedade injetada na resposta. Use um valor mais próximo de 0 para análise e múltipla escolha e um valor mais próximo de 1 para tarefas criativas e generativas.

    Padrão Mínimo Máximo

    1

    0

    1

  • top_p — (Opcional) Use amostragem de núcleo.

    Na amostragem do núcleo, Anthropic Claude calcula a distribuição cumulativa de todas as opções para cada token subsequente em ordem decrescente de probabilidade e a interrompe quando atinge uma probabilidade específica especificada por. top_p Você deve alterar um temperature ou doistop_p, mas não os dois.

    Padrão Mínimo Máximo

    1

    0

    1

  • top_k — (Opcional) Somente uma amostra das K principais opções para cada token subsequente.

    Use top_k para remover respostas de baixa probabilidade de cauda longa.

    Padrão Mínimo Máximo

    250

    0

    500

Response

A ferramenta Anthropic Claude O modelo retorna os seguintes campos para uma chamada de inferência de conclusão de texto.

{ "completion": string, "stop_reason": string, "stop": string }
  • conclusão — A conclusão resultante até e excluindo as sequências de parada.

  • stop_reason — O motivo pelo qual o modelo parou de gerar a resposta.

    • “stop_sequence” — O modelo atingiu uma sequência de parada — fornecida por você com o parâmetro de stop_sequences inferência ou uma sequência de parada incorporada ao modelo.

    • “max_tokens” — O modelo excedeu max_tokens_to_sample o número máximo de tokens do modelo.

  • stop — Se você especificar o parâmetro de stop_sequences inferência, stop conterá a sequência de parada que sinalizou ao modelo para parar de gerar texto. Por exemplo, holes na resposta a seguir.

    { "completion": " Here is a simple explanation of black ", "stop_reason": "stop_sequence", "stop": "holes" }

    Se você não especificarstop_sequences, o valor de stop estará vazio.

Exemplo de código

Esses exemplos mostram como chamar o Anthropic Claude Modelo V2 com taxa de transferência sob demanda. Para usar Anthropic Claude versão 2.1, altere o valor de modelId paraanthropic.claude-v2:1.

import boto3 import json brt = boto3.client(service_name='bedrock-runtime') body = json.dumps({ "prompt": "\n\nHuman: explain black holes to 8th graders\n\nAssistant:", "max_tokens_to_sample": 300, "temperature": 0.1, "top_p": 0.9, }) modelId = 'anthropic.claude-v2' accept = 'application/json' contentType = 'application/json' response = brt.invoke_model(body=body, modelId=modelId, accept=accept, contentType=contentType) response_body = json.loads(response.get('body').read()) # text print(response_body.get('completion'))

O exemplo a seguir mostra como gerar streaming de texto com Python usando o prompt. write an essay for living on mars in 1000 words e o modelo Anthropic Claude V2:

import boto3 import json brt = boto3.client(service_name='bedrock-runtime') body = json.dumps({ 'prompt': '\n\nHuman: write an essay for living on mars in 1000 words\n\nAssistant:', 'max_tokens_to_sample': 4000 }) response = brt.invoke_model_with_response_stream( modelId='anthropic.claude-v2', body=body ) stream = response.get('body') if stream: for event in stream: chunk = event.get('chunk') if chunk: print(json.loads(chunk.get('bytes').decode()))