Um cartão de título gerado com o texto "RLCD, explicado" sobre o subtítulo "Aprendizagem por Reforço para Decisões Calibradas — o método de treino que a TypeSafe designa para o Jev 1.13.", acima de três cartões rotulados: "RLHF — Otimiza para a resposta que uma pessoa prefere.", "RLVR — Otimiza para resultados que um programa consegue verificar." e "RLCD — Otimiza para que a probabilidade declarada seja honesta.", com a linha "RLHF e RLVR são os dois métodos mais antigos. O RLCD é o terceiro da TypeSafe." e um rodapé com o texto "Nomeação e enquadramento do RLCD conforme o post de lançamento e o manual de IA da própria TypeSafe, consultados em 30/09/2026." O logótipo do OrcaRouter está composto no canto inferior direito.
Guides & Insights

RLCD explicado: por que a TypeSafe treina Jev para ser honesto sobre confiança em vez de ser gostado

Autor

Magnus Corvin

Data de publicação

Modelos mais recentes · 20Ver todos os modelos →
Benchmarks: Artificial Analysis · atualizado diariamente
Voltar para todas as publicações

Jev 1.13 (typesafe/jev-1.13) é treinado com um método que seu criador chama de Reinforcement Learning for Calibrated Decisions — RLCD — e essa sigla é uma criação da própria TypeSafe, e não um termo do setor que você já deveria conhecer. O post de lançamento diz isso com todas as letras: a empresa construiu "uma nova arquitetura de modelo, amostrador paralelo para máxima eficiência, e um método de treinamento que chamamos de Reinforcement Learning for Calibrated Decisions (RLCD)". É uma terceira resposta para uma pergunta que costumava ter duas, e o motivo de sua existência é um descompasso com que a maioria das equipes se depara na primeira vez que tenta colocar um modelo de linguagem dentro de uma decisão. Antes de chegarmos a isso, duas datas importam, porque esta página não é um artigo de lançamento. A TypeSafe lançou o próprio modelo em 2026-09-15, o que fica fora da janela de sete dias sobre a qual este blog escreve, e nada aqui deve ser lido como uma tentativa de enquadrar o Jev como novo. O evento datado é 2026-09-24, quando a OrcaRouter adicionou typesafe/jev-1.13 ao seu próprio catálogo e abriu a ficha do modelo para ele — a primeira vez que o Jev pôde ser chamado por meio de um gateway de terceiros, e não apenas pelo endpoint próprio da TypeSafe. Essa é a mudança que sustenta esta página, e a consequência prática é que a técnica abaixo agora é algo que você pode testar em código com uma chave que talvez já tenha, em vez de uma ideia de pesquisa sobre a qual você leu.

O que se segue é o conceito, não o modelo. O primeiro terço desta página trata dos dois métodos de treinamento contra os quais o RLCD foi concebido, porque o RLCD só é legível como uma reparação para o que esses dois fazem quando a tarefa deixa de ser uma conversa e se torna um julgamento. Se você já sabe para o que o RLHF e o RLVR otimizam, a seção que você quer é a terceira, onde a própria tabela de três vias da TypeSafe faz o trabalho.

A RLHF otimiza para a resposta que uma pessoa prefere.

O aprendizado por reforço com feedback humano é o método que transformou modelos de linguagem pré-treinados em assistentes. O próprio manual introdutório da TypeSafe afirma o objetivo sem rodeios, em um cartão com o título RLHF: ele "transformou modelos pré-treinados em chatbots. Ele treina modelos para produzir respostas que as pessoas preferem". InstructGPT e ChatGPT foram treinados com ele, e o manual acrescenta um detalhe que é relevante aqui por um motivo diferente — a abordagem foi co-inventada por Diogo Almeida, que é cofundador da TypeSafe e autor do post de lançamento da Jev. A empresa não está descartando o método: ela foi fundada por alguém que ajudou a construí-lo. Ela está argumentando que o objetivo é errado para uma tarefa específica.

A forma mais clara de ver o descompasso é perguntar o que o sinal de recompensa realmente mede. Sob RLHF, ele mede a preferência de um avaliador entre duas respostas candidatas. Esse é um excelente proxy quando o produto é uma conversa, porque o critério de sucesso de uma conversa é realmente se uma pessoa considera a resposta boa. É um proxy defeituoso quando o produto é uma decisão, porque o critério de sucesso ali é se a confiança declarada corresponde à realidade, e um avaliador comparando dois parágrafos plausíveis não tem como ver a diferença entre um 0,6 bem calibrado e um 0,95 que soa confiante. Duas respostas podem ser igualmente preferidas e diferir enormemente em quanto um software deveria confiar nelas.

Os modos de falha que a TypeSafe nomeia no manual introdutório decorrem diretamente disso:

• Sicofancia — o modelo aprende a produzir aquilo que o avaliador quer ouvir, o que é um objetivo diferente daquilo que é verdadeiro.

• Alucinação que soa confiante — a fluência e a certeza são recompensadas pela preferência, mesmo quando não têm respaldo algum.

• Queda de modos — a otimização de preferências estreita a distribuição de saída, “favorecendo um estilo específico, como o seguimento de instruções, ao mesmo tempo que reduz a probabilidade de outras saídas possíveis”. A queda de modos é a versão leve da clássica falha de colapso de modos que assola as redes adversárias generativas, em que um gerador converge para uma única saída que continua enganando o discriminador.

O próprio parágrafo de advertência do guia é a frase que vale a pena manter: "Uma saída pode ser convincente para uma pessoa sem ser confiável o suficiente para automação sem supervisão. Preferência humana e confiabilidade da máquina são alvos de otimização diferentes." Isso não é uma crítica ao RLHF como método. É a observação de que um modelo treinado em preferências nunca foi questionado com a pergunta que a automação precisa que seja respondida — com que frequência, exatamente, essa coisa está certa quando diz que tem certeza.

O RLVR otimiza para resultados que um programa consegue verificar — e as decisões raramente têm um.

A aprendizagem por reforço com recompensas verificáveis é a segunda adaptação, e é a que está por trás dos modelos de raciocínio. O manual da TypeSafe descreve o que produziu: modelos que "são fortes em tarefas como matemática, mas mais lentos e mais caros". O mecanismo é um verificador. Se uma tarefa tem uma resposta que um programa pode testar — um teste unitário, um verificador de provas, uma resposta numérica — então uma recompensa pode ser calculada sem perguntar nada a um humano, e o modelo pode ser treinado com esse sinal em escala. Funciona, e é por isso que os modelos de raciocínio ficaram bons exatamente nos domínios onde existe verificação automática barata.

A limitação está na forma dessa palavra, "verificável". Uma recompensa verificável exige um verificador, e um verificador exige que a tarefa tenha uma resposta correta que alguém consiga calcular. Considere as perguntas que um sistema em produção realmente faz. Este chamado de suporte deve ir para faturamento ou para técnico? Este pedido de reembolso está dentro da política? Esta transação parece fraude? Cada uma tem uma resposta defensável na maioria das vezes, nenhuma tem uma resposta que um programa consiga verificar, e os casos que mais importam são justamente aqueles em que humanos experientes discordam. Não há função alguma para executar. O RLVR não tem nada a recompensar, então não contribui em nada.

A solução alternativa tentadora é fabricar um verificador rotulando um conjunto de dados e treinando com base nos rótulos. Isso dá ao método algo com que trabalhar, mas altera o objetivo de uma forma que importa. Os rótulos codificam uma decisão, não a incerteza em torno dela. Um modelo treinado para reproduzir os julgamentos de uma equipe nos casos difíceis aprende a ser tão confiante quanto aqueles rótulos eram — ou seja, exatamente tão excessivamente confiante quanto os humanos que os escreveram. E mesmo onde existe um verificador genuíno, há uma segunda lacuna. Um verificador pontua a resposta. Ele não pontua a confiança declarada. Um modelo que acerta em 95% dos casos e relata certeza em todos eles recebe uma recompensa perfeita e, como componente de um pipeline automatizado, é inútil — porque os 5% são a única parte sobre a qual o pipeline precisava ser informado. Os materiais de lançamento da TypeSafe apresentam o mesmo argumento pela direção oposta: "Se um modelo consegue realizar uma tarefa 95% das vezes, mas não diz quando está nos 5%, ele não pode automatizar essa tarefa."

O que o RLCD faz, na formulação do próprio TypeSafe

RLCD muda o contrato de saída, não a qualidade da resposta. O cartão do primer diz: "O aprendizado por reforço para decisões calibradas treina o TypeSafe a retornar decisões e probabilidades calibradas em vez de texto gerado." A versão concisa do post de lançamento é "decisões calibradas: respostas com probabilidades epistemicamente honestas em tarefas do System One." Ambos descrevem um único movimento: treinar o modelo com base em se sua probabilidade declarada correspondia à frequência com que aquela resposta se revelou correta, em vez de com base em se uma pessoa ou um verificador gostou da resposta.

O post de lançamento coloca os três métodos lado a lado, e o contraste é a afirmação mais clara da ideia que existe. Leia como um conjunto de contrastes, e não como uma tabela:

• O que ele otimiza — o RLHF otimiza a preferência humana, "textos e respostas de chat que avaliadores humanos preferem"; o RLVR otimiza "resultados que podem ser verificados programaticamente"; o RLCD otimiza a calibração, "respostas com probabilidades epistemicamente honestas em tarefas do Sistema 1."

• O que entra — os dois mais antigos recebem dados não estruturados "com ênfase em mensagens sequenciais"; um modelo de decisão calibrado recebe dados não estruturados "com ênfase em estado de programa estruturado."

• O que sai — strings geradas que "precisam ser parseadas + validadas," com "sempre algum risco de que a IA saia dos trilhos," em contraste com valores estruturados com segurança de tipos, onde "as saídas e a estrutura possíveis são definidas com antecedência," o modelo "nunca comete erros de tipo," e "todas as respostas são acompanhadas de probabilidades calibradas e pontuações de confiança."

• Como ele é amostrado — um token por vez, cada um condicionado ao anterior, em contraste com todas as saídas geradas em uma única consulta. Esse é o motivo mecânico pelo qual o terceiro método é barato: não há loop de decodificação a pagar.

• Quanto custa — tokens de entrada de US$ 0,20 a US$ 10 por milhão para os modelos de comparação, com saída aproximadamente cinco vezes o preço da entrada, contra US$ 0,042 por milhão de tokens de entrada, com saída cobrada a zero para o Jev.

• A rapidez com que responde — de 3 a 329 segundos de ponta a ponta para modelos de fronteira, contra 70 ms a 500 ms, o que o fornecedor caracteriza como 40x a 200x mais rápido em consultas no formato do System One.

• O que ele diz sobre sua própria confiança — os dois mais antigos "tendem a ser excessivamente confiantes e inconsistentes", mesmo quando solicitados a fornecer uma estimativa de confiança; o RLCD "sempre comunica confiança e incerteza em cada saída", em que "maior confiança significa maior acurácia".

A última linha é a verdadeira alegação sobre o produto, e é falsificável de um modo que as outras não são. "Maior confiança significa maior acurácia" é uma afirmação sobre uma curva: agrupe as respostas de um modelo pela probabilidade que ele atribuiu, e os grupos devem estar certos aproximadamente na taxa que as probabilidades alegam. A documentação de confiança da TypeSafe explicita o contrato com números incomumente concretos:

• Resultados aos quais é atribuída uma probabilidade de 0,2 devem ocorrer cerca de 20% das vezes.

• Resultados com probabilidade atribuída de 0,8 devem ocorrer cerca de 80% das vezes.

• Resultados aos quais é atribuída uma probabilidade de 1,0 devem ocorrer 100% das vezes.

E então a frase que mantém a afirmação honesta, nas próprias palavras do fornecedor: "Essas taxas descrevem grupos de previsões, não uma garantia sobre qualquer resposta individual." Isso não é uma ressalva acrescentada por motivos legais. É todo o significado da calibração. Um modelo bem calibrado que diz 0,8 não está prometendo estar certo desta vez; está prometendo que, considerando todas as respostas que rotulou como 0,8, cerca de quatro em cada cinco estavam corretas. Uma única resposta não diz nada. Mil respostas ao longo de uma semana dizem se a curva é real.

A generated two-column scoreboard headed "RLHF / RLVR vs RLCD — the scoreboard", subtitle "RLCD (Jev 1.13)" on the right column, with six matching rows on each side: Optimises for (human preference, or a program's check, versus the stated probability being honest); Input (messages, in sequence, versus structured program state); Output (generated strings, parsed after the fact, versus typed values with probabilities); Confidence (overconfident and inconsistent, versus reported with every answer); Sampling (one token at a time, versus all outputs in a single query); and Cost (USD 0.20 to 10 per million input tokens, versus USD 0.042 per million input tokens, output free). A footer reads "Left column and RLCD framing are TypeSafe's own comparison, from its launch post and AI primer, read 2026-09-30." The OrcaRouter logo is composited in the bottom-right corner.

O mesmo contraste de três cartões está na própria documentação da TypeSafe, que é a fonte da comparação acima e o lugar mais claro para verificar a redação, em vez de confiar na palavra de um resumo. A captura abaixo é essa página como ela está hoje: três cartões para as três abordagens de pós-treinamento, com o terceiro nomeando RLCD por extenso.

A screenshot of the "Three post-training approaches" section of TypeSafe's AI primer documentation page, captured 2026-09-30. Beneath the intro line "Pretrained language models have been adapted in two major ways. TypeSafe adds a third. RLHF and RLVR are shown here for context; TypeSafe's training path is RLCD." sit three labelled cards: "RLHF — Reinforcement learning from human feedback turned pretrained models into chatbots. It trains models to produce responses people prefer."; "RLVR — Reinforcement learning with verifiable rewards created reasoning models that are strong at tasks such as mathematics, but slower and more expensive."; and "RLCD — Reinforcement learning for calibrated decisions trains TypeSafe to return decisions and calibrated probabilities instead of generated text."

Dois outros detalhes na documentação do fornecedor mostram até onde o método chega dentro do produto. O primeiro é que a confiança é derivada, e não gerada: o modelo retorna uma distribuição de probabilidade completa entre as opções ou níveis que você forneceu, e o valor de confiança é uma estatística calculada a partir do formato dessa distribuição. É por isso que a documentação pode dizer que a definição não é determinante — você recebe a distribuição bruta de qualquer forma e pode calcular sua própria estatística, se a sua se ajustar melhor. O segundo é que o RLCD é a única coisa que molda os pesos. A página de modelos da TypeSafe afirma: "O Jev não é ajustado nem adaptado com LoRA usando dados de clientes. Ele é treinado com RLCD para retornar decisões calibradas, e os mesmos pesos atendem a todas as contas." A adaptação de domínio acontece na solicitação — seu estado, seus critérios —, não em um checkpoint por cliente. Qualquer calibração que o método tenha produzido é a calibração que todo cliente recebe.

Por que a calibração é o que torna um modelo de decisão barato utilizável

Uma probabilidade calibrada não é interessante por si só. Ela se torna a arquitetura no momento em que o seu código ramifica com base nela, e a documentação de confiança da TypeSafe descreve exatamente esse padrão como três faixas, cada uma produzindo um comportamento diferente do sistema.

• Alta confiança — aja automaticamente. O modelo tem uma leitura clara e você pode prosseguir sem envolvimento humano.

• Confiança média — prossiga com cautela. O modelo tem uma resposta razoável, mas não tem certeza, então confirme com o usuário, sinalize para revisão ou reúna mais informações antes de agir.

• Baixa confiança — não aja. Encaminhe para um humano, solicite esclarecimento ou recorra a um sistema diferente, porque o modelo está indicando que não tem informações suficientes para prosseguir.

A documentação é explícita de que os limites são seus para definir e devem diferir conforme a consequência: “Um limiar de confiança não é um único número. Ações diferentes dentro do mesmo sistema devem ser condicionadas em níveis diferentes, dependendo das consequências de errar.” O exemplo prático deles estabelece um piso rígido em 0,5 — tudo o que o modelo relatar abaixo disso é encaminhado a um humano sem inspeção adicional — e então aplica um padrão mais elevado para uma ação destrutiva do que para uma ação somente de leitura. Seu código codifica a tolerância ao risco; o modelo fornece a entrada honesta para ele.

Esse padrão é o argumento inteiro em favor de um fluxo de trabalho com dois modelos, e vale a pena apresentá-lo como um argumento, e não como uma lista de recursos. Suponha que você queira um pipeline automatizado que dê conta da maioria confiante dos casos e escale o restante para um modelo maior ou para uma pessoa. A decisão de escalar tem de vir de algum lugar. Se o modelo barato reporta 0,98 em tudo, inclusive nos casos em que está apenas chutando, então a ramificação não tem nada para testar e você ou automatiza tudo — inclusive as chamadas que deveria ter escalado — ou não automatiza nada. Um modelo cuja confiança é informativa é o único tipo que permite automatizar um subconjunto com segurança, porque é o único tipo capaz de dizer em qual subconjunto ele não é seguro. A documentação resume o mesmo ponto em uma única frase que vale citar pela sua franqueza: "Se um sistema inteligente, seja humano ou máquina, não consegue expressar incerteza honesta, não se pode confiar no sistema."

Há um segundo motivo pelo qual isso importa mais para um modelo barato do que para um caro, e é o motivo pelo qual a história do roteamento e a história do RLCD são a mesma história. Um modelo com preço de US$ 0,042 por milhão de tokens de entrada e sem cobrança de saída é barato o suficiente para ser consultado constantemente — a cada turno de um loop de agente, em cada registro de um lote, a cada ticket que chega. Ser consultado constantemente é exatamente a situação em que os erros de um modelo se acumulam, porque ninguém está lendo sua saída antes de agir com base nela. A confiança é o que torna isso seguro. O baixo custo é o que torna o ramo de escalonamento acessível, já que o caminho caro só é executado na fração de casos que o modelo barato recusou. Nenhuma das metades funciona sem a outra, e a decisão de roteamento que as une é um limiar sobre um número; o RLCD é a razão para acreditar nele.

O limite honesto: calibrado não é correto

O mais importante a acertar sobre o RLCD é o que ele não afirma. A calibração é uma propriedade dos níveis de confiança, não uma garantia sobre as respostas, e o fornecedor diz isso em sua própria documentação, em vez de deixar isso para os críticos. A página do System One: "Os modelos System One são treinados para decisões calibradas: suas probabilidades são otimizadas em relação aos resultados para refletir a incerteza. A calibração é medida em grupos de previsões; ela não garante que uma resposta individual esteja correta." Um modelo pode estar perfeitamente calibrado e ainda assim tomar a decisão errada no seu ticket, porque 0,9 significa nove em cada dez, e este pode ser o décimo.

Nossos próprios números de serviço são o contrapeso útil aqui, precisamente porque são medições do modelo em produção, e não alegações sobre o que o método alcança. Nos sete dias terminados em 2026-09-30, no tráfego pelo playground do OrcaRouter desde que o modelo foi adicionado ao catálogo, o card do Jev 1.13 reporta uma taxa de erro de 0,49% em 76,2 milhões de tokens, além de um tempo p50 até o primeiro token de 151 ms, um p95 de 247 ms e cerca de 349 tokens de saída por segundo. Duas coisas sobre esse número merecem ser ditas com clareza. Ele é nosso, não do fornecedor, e é uma janela deslizante, e não um conjunto de teste fixo — o mesmo campo registrava 0,57% no início da janela, porque é recalculado ao longo dos sete dias mais recentes de tráfego ao vivo, e as chamadas de ontem saem da janela. Ele também não é uma medição de calibração. Uma taxa de erro diz com que frequência algo deu errado no nosso tráfego; ela não diz se os valores de confiança eram honestos, o que é uma pergunta diferente e que precisa de dados rotulados para ser respondida.

Qual é também a instrução prática que o fornecedor dá, numa nota anexada às suas orientações sobre limiares: "Os valores de limiar corretos dependem do seu domínio e do desempenho do modelo para o seu caso de uso. Comece com limiares conservadores, teste com os seus próprios dados e ajuste à medida que observa os resultados." O RLCD é uma afirmação sobre como o modelo foi treinado. Se a afirmação se mantém nas suas entradas é uma questão empírica, e é uma das poucas propriedades do modelo que você pode testar sem qualquer infraestrutura de machine learning — pegue em algumas centenas de casos para os quais já tem rótulos, agrupe as respostas pela confiança que o modelo reportou e verifique se os grupos estão certos à taxa que alegam. Se o grupo de 0,9 estiver certo cerca de 90% das vezes no seu tráfego, o limiar é real e você pode automatizar acima dele. Se tudo se aglomerar acima de 0,9 e a precisão não acompanhar, você aprendeu algo mais útil do que qualquer número de manchete.

Dois limites adicionais devem ser mencionados no mesmo fôlego. O primeiro é que não existe uma ficha pública de benchmark para este modelo que permita verificar qualquer um desses pontos — o fornecedor não publicou nenhuma, e nenhum ranking de terceiros inclui o modelo; a página do modelo no Artificial Analysis retorna um 404 em 30/09/2026. Portanto, o argumento de calibração baseia-se na descrição do treinamento, no contrato documentado e em tudo o que você mesmo medir, e não numa curva publicada. O segundo é que as alegações de desempenho do próprio fornecedor são dele mesmo: o post de lançamento observa abertamente que as avaliações de fluxo de trabalho por trás dos números de destaque de velocidade e custo foram construídas pela equipe de capacidades de modelo da própria empresa, que as respostas de referência com as quais são comparadas são a média de dois modelos externos, e que os números estão "no limite superior dos ganhos do mundo real". Também afirma que não é possível comprovar que os preços não sejam subsidiados. Nada disso invalida o método de treinamento, que é uma alegação separada da alegação de velocidade, mas significa que o argumento em favor do RLCD é uma discussão sobre o desenho do objetivo, e não um resultado empírico consolidado. Trate-o como uma hipótese que você pode testar a baixo custo, o que é uma posição melhor do que a maioria das alegações sobre métodos de treinamento deixa você.

O que você pode fazer com isso hoje

Os dois termos do argumento encontram-se num único lugar. O RLCD é o motivo pelo qual vale a pena ramificar com base na confiança de um modelo de decisão; um limiar no seu código é onde esse ramo fica; e o escalonamento só é viável se o caminho comum for barato o suficiente para rodar em todos os lugares. O Jev 1.13 pode ser chamado como typesafe/jev-1.13 no OrcaRouter — uma API para mais de 200 modelos, 0% de markup, preço de tabela do provedor repassado, então um corte de preço do fornecedor entra em vigor aqui no mesmo dia — o que significa que o caminho da maioria confiante e o caminho de escalonamento generativo são faturados na mesma chave em vez de dois contratos com fornecedores. Você ainda o chama em seu próprio formato, POST /v1/systemone, sem streaming, em um contexto de 65.536 tokens, porque essa não é a rota chat-completions da OpenAI e não está incorporada ao endpoint de chat. Vale a pena conhecer duas notas datadas das versões do SDK do fornecedor se você estiver fazendo a integração: a versão 0.7.1, lançada em 2026-09-21, adicionou exemplos de uso com gateways de IA, e a versão 0.7.2, lançada em 2026-09-26, adicionou um extra http2 ao pacote Python. A segunda é o tipo de detalhe que só aparece nas notas de versão — um cliente HTTP/2 vale a pena ter para um modelo cuja proposta de valor inteira são idas e voltas abaixo de 200 milissegundos.

Se você levar uma única coisa desta página, leve o formato da pergunta que o RLCD responde. Não é "um modelo pode ser mais inteligente?". É "um modelo consegue me dizer quando não é inteligente o suficiente, com frequência suficiente e precisão suficiente para que eu possa automatizar o resto?". Esse é um alvo de pesquisa diferente dos dois aos quais a área dedicou os últimos anos, e é o único que produz um número sobre o qual seu código pode agir. O valor de confiança é esse número. Teste-o com seus próprios rótulos antes de confiar nele, e comece com um limiar sobre o qual você teria vergonha de errar, em vez de um sobre o qual você gostaria de acertar.

Uma última peça do quadro vale a pena carregar ao lado de tudo isso, porque é o número para o qual todo o argumento aponta e é medido, não apenas alegado. O cartão abaixo é o nosso próprio registro de serviço de sete dias para typesafe/jev-1.13 — o modelo em produção, não o método de treinamento, e não um benchmark. Leia-o como a segunda metade da questão de calibração: as confianças dizem em quais chamadas agir, e isto diz o quão perto o restante da decisão de roteamento está de um sistema que você deixaria sem supervisão.

A screenshot of the PERFORMANCE panel on the OrcaRouter model card for typesafe/jev-1.13, captured 2026-09-30, showing four tiles — P50 TTFT 151 ms, P95 TTFT 247 ms, OUTPUT SPEED 349 tok/s and ERROR RATE 0.49% — above a chart headed "Last 7-day latency trend" with a vertical axis running 0 to 2500 ms and daily points labelled 09-24 through 09-30, and a legend reading "p50 TTFT" and "p95 TTFT".