spicyapiDocumentação
Apps e plugins
Conteúdo principal

SillyTavern

Converse com os modelos da SpicyAPI no SillyTavern pela fonte Custom (OpenAI-compatible) e adicione a extensão gratuita da SpicyAPI para imagens, vídeos e um botão Animate, com cada execução cotada antes.

O SillyTavern pode usar a SpicyAPI de duas maneiras. A primeira é a conexão de chat normal: o SillyTavern envia suas mensagens a um modelo de chat da SpicyAPI pela fonte Custom (OpenAI-compatible). A segunda é a extensão da SpicyAPI, que adiciona os comandos /spicy-img e /spicy-video e um botão Animate, para você criar imagens e vídeos curtos sem sair do chat.

Você pode usar só uma das duas. Ambas usam a mesma conta, o mesmo saldo e os mesmos preços do resto da SpicyAPI, e você paga apenas pelo que executa. A extensão é gratuita e de código aberto (MIT) em github.com/spicyapi-ai/sillytavern-spicyapi.

Versão resumida

  1. Crie uma chave em spicyapi.ai/console/keys. Use uma chave só para o SillyTavern, com um limite de gasto diário.
  2. No SillyTavern, abra API Connections, defina API como Chat Completion e Chat Completion Source como Custom (OpenAI-compatible). Endpoint https://api.spicyapi.ai/v1, a sua chave, um id de modelo terminado em /chat e depois Connect.
  3. Ative Streaming e defina Response (tokens) como 2000 ou mais.
  4. Para imagens e vídeos: Extensions > Install extension, cole https://github.com/spicyapi-ai/sillytavern-spicyapi e adicione a sua chave em Extensions > SpicyAPI.

Antes de começar

  • SillyTavern 1.19.0 ou mais recente. Os passos desta página foram conferidos na versão 1.19.0 em 06/10/2026. Os nomes dos menus podem mudar em outras versões.
  • git na máquina que roda o SillyTavern, apenas se você quiser a extensão. O SillyTavern o usa para baixar extensões.
  • Uma chave de API. As chaves começam com sk-spicy-. Veja Autenticação para as restrições que você pode aplicar a uma chave e Prepare sua conta se ainda não tem conta.
  • Saldo. Cada requisição é paga com o seu saldo pré-pago em dólares americanos. Veja Cobrança.

Conecte o chat do SillyTavern à SpicyAPI

Quem envia a requisição de chat é o servidor do SillyTavern, não o seu navegador, então você não precisa configurar mais nada do seu lado.

Escolha a fonte Custom

Abra API Connections (o ícone de tomada). Defina API como Chat Completion e depois Chat Completion Source como Custom (OpenAI-compatible).

Preencha os três campos

CampoO que informar
Custom Endpoint (Base URL)https://api.spicyapi.ai/v1
Custom API KeySua chave sk-spicy-
Enter a Model IDUm id de modelo de chat terminado em /chat, copiado do catálogo ao vivo (GET /api/v1/models; aparece como MODEL_ID_FROM_CATALOG nesta página)

No endpoint, inclua /v1, não coloque /chat/completions (o SillyTavern adiciona) e não termine com barra. Uma barra no final faz o SillyTavern requisitar um caminho com barra dupla.

Pressione Connect

O SillyTavern pede a lista de modelos à SpicyAPI e em seguida oculta a sua chave no campo. A chave fica guardada no servidor do SillyTavern, no arquivo de segredos daquele usuário. Use Test Message para confirmar que uma resposta volta.

Escolha um modelo de chat

Os modelos de chat têm ids terminados em /chat. A lista suspensa Available Models é preenchida com a lista completa de modelos da SpicyAPI, então ela também mostra modelos de imagem, vídeo e áudio, que não conversam. Os modelos de chat vêm primeiro: escolha um no topo da lista ou digite ou cole um id /chat em Enter a Model ID.

Para ver todos os modelos de chat e o que cada um aceita, navegue pelos modelos de chat no site ou chame GET https://api.spicyapi.ai/v1/models com a sua chave (veja Catálogo de modelos e schemas). Cada entrada de chat traz context_length, max_output_tokens e supported_parameters.

Para roleplay, o ranking de roleplay classifica os modelos de chat por consistência de personagem e liberdade ao escrever. Alguns modelos de chat não têm censura e outros filtram conteúdo; o catálogo indica a faixa de política de cada modelo.

Configurações recomendadas

ConfiguraçãoValorPor quê
StreamingAtivadoAs respostas longas aparecem conforme são escritas, e uma requisição em streaming mostra a mensagem de erro da própria SpicyAPI. Uma requisição sem streaming que falha rápido mostra apenas "Bad Request" no SillyTavern, e uma que falha depois de cerca de 30 segundos informa o erro dentro de uma resposta bem-sucedida.
Response (tokens)2000 ou maisModelos de raciocínio contam o pensamento neste limite. O preset padrão permite 300, que um modelo de raciocínio pode gastar inteiros pensando, sem devolver nada.
Request model reasoningAtivadoMostra o raciocínio do modelo em um bloco recolhido, quando o modelo o envia.
Send inline mediaDesativado para modelos só de textoVeja imagens no chat.
Prompt Post-ProcessingNoneMude apenas se aparecer um erro sobre papéis das mensagens. Veja solução de problemas.

Configurações de amostragem que o modelo escolhido não suporta, como temperature, top P, frequency penalty e presence penalty, são ignoradas em vez de rejeitadas. A SpicyAPI lista as que ignorou no cabeçalho de resposta X-Spicy-Ignored-Params. Você pode deixar os controles deslizantes do SillyTavern como estão.

Esforço de raciocínio

A lista Reasoning Effort do SillyTavern não é enviada aos modelos da SpicyAPI. Se quiser defini-lo, adicione você mesmo e apenas para um modelo cujo supported_parameters inclua reasoning_effort:

  1. Clique em Additional Parameters, abaixo do botão Connect.
  2. Em Include Body Parameters, adicione uma linha, por exemplo:
reasoning_effort: low

Os valores permitidos variam por modelo. Um nível que o modelo não oferece é trocado pelo mais próximo que ele oferece (citado no cabeçalho de resposta X-Spicy-Adjusted-Params), e em um modelo sem níveis de raciocínio a linha é ignorada. Confira antes a entrada do modelo na lista de modelos. Se a resposta vier vazia ou cortada, aumente Response (tokens) ou reduza o esforço.

Imagens no chat

Com Send inline media ativado, o SillyTavern anexa as imagens do chat a todas as requisições seguintes. Um modelo que não lê imagens rejeita a requisição com 400 e, como a imagem continua no chat, todas as mensagens seguintes também falham. Desative Send inline media para modelos só de texto ou oculte a mensagem que contém a imagem.

Vídeos no chat não são enviados ao modelo.

Configurações que um modelo rejeita

Algumas configurações continuam sendo rejeitadas quando o modelo não as suporta, porque mudam a resposta em vez de apenas ajustá-la: Multiple swipes per generation acima de 1 (n), predefinições de Logit Bias e Request token probabilities. Se uma requisição falhar com uma mensagem que cita uma dessas opções, desative-a. O texto do erro informa o campo.

Custom Stopping Strings funcionam em todos os modelos. Um modelo sem sequências de parada (os modelos Grok, por exemplo) as ignora, e um modelo que aceita menos do que você definiu mantém as primeiras; os cabeçalhos de resposta X-Spicy-Ignored-Params e X-Spicy-Adjusted-Params dizem quais. Um valor de controle deslizante fora da faixa do modelo, como temperature 1,5 em um modelo que vai até 1, é reduzido ao limite da mesma forma.

A extensão da SpicyAPI

A extensão cria imagens e vídeos curtos de dentro de um chat. Instale uma vez, adicione sua chave e escolha os modelos.

Instale

  1. Abra Extensions (o ícone de cubos empilhados) e escolha Install extension.
  2. Cole https://github.com/spicyapi-ai/sillytavern-spicyapi e pressione Install.
  3. Recarregue a página se o SillyTavern pedir.

O SillyTavern avisa que é uma extensão de terceiros. Para atualizar depois, use Manage extensions no mesmo menu.

Adicione sua chave

Abra Extensions > SpicyAPI, cole a sua chave e pressione Check connection. Quando a chave funciona, ele mostra o seu saldo.

Escolha os modelos

Escolha um modelo para imagens, um para vídeos a partir de texto e um para vídeos a partir de uma imagem (o botão Animate). Cada lista mostra um preço inicial e agrupa os modelos por política de conteúdo (Uncensored, Softened, Filtered). Automatic escolhe o modelo Uncensored mais barato. Sob cada modelo você pode alterar as configurações principais, como proporção, resolução e duração. As configurações marcadas com $ mudam o preço.

Conecte o chat com um clique (opcional)

Connect chat no painel faz a configuração do chat por você: escolhe Custom (OpenAI-compatible), define o endpoint, salva sua chave e seleciona o modelo de chat que você escolheu.

Comandos

ComandoO que faz
/spicy-img [prompt]Cria uma imagem e a publica no chat.
/spicy-video [prompt]Cria um vídeo a partir de texto.
/spicy-video image=last [prompt]Anima a imagem mais recente do chat. image= também aceita a URL de uma imagem.
/spicy-task <task id>Adiciona ao chat o resultado de uma tarefa anterior, por exemplo depois de Stop waiting ou de recarregar a página.
/spicy-balanceRetorna o seu saldo disponível em USD.

Argumentos nomeados que você pode adicionar aos comandos:

  • model=<id> usa um modelo apenas nesta execução. Pressione Tab depois de model= para ver a lista.
  • edit=true abre o editor de prompt mesmo quando você digitou um prompt.
  • quiet=true salva o resultado e retorna o caminho dele sem publicá-lo, para Quick Replies e STscript.
  • avatar=true ou avatar=false (somente imagens) sobrepõe a configuração "usar o avatar do personagem".
/spicy-img a lighthouse on a cliff at dusk, wide shot
/spicy-video waves rolling onto a beach at sunrise
/spicy-video image=last slow push-in, hair moving in the wind

O menu da varinha ao lado do campo de chat tem SpicyAPI picture, SpicyAPI video e SpicyAPI: animate last picture.

Animate

Toda imagem no chat tem um ícone de claquete entre os controles, e as mensagens com imagem têm o mesmo ícone no menu .... Ele transforma aquela imagem em um clipe de vídeo com o seu modelo de imagem para vídeo e adiciona o clipe à mesma mensagem.

Prompts

Se você não der um prompt, o modelo de chat ao qual você está conectado escreve um a partir da cena atual. Com Let me read and edit the prompt before generating ativado (o padrão), abre-se uma janela mostrando o modelo, o preço exato e o prompt como foi escrito. Você pode esperar, digitar o seu ou pressionar Write from the scene de novo. A extensão não inclui prompts, presets nem estilos; as palavras vêm de você ou do seu modelo de chat.

Com modelos que aceitam uma imagem de referência, você pode usar o avatar do personagem para que a imagem se pareça com ele.

Deixe a IA mostrar imagens

Desativado por padrão. Ative em Let the AI show pictures no painel da SpicyAPI e escolha como o modelo de chat pede uma imagem. Você pode usar qualquer uma das duas formas, ou ambas:

FormaComo funcionaRequisitos
Ferramenta de funçãoO modelo de chat chama uma ferramenta chamada spicyapi_generate_image com uma descrição, a imagem é publicada e o modelo continua a história.Enable function calling em AI Response Configuration (o painel tem um botão para isso) e um modelo de chat com suporte a ferramentas. Todos os modelos de chat da SpicyAPI têm.
Tag de respostaO modelo de chat termina uma resposta com <pic prompt="description of the picture">. A extensão remove a tag e publica a imagem logo depois dessa resposta.Qualquer API de chat. Por padrão, a extensão adiciona uma instrução curta às gerações normais; desative isso para escrever a sua.

As imagens automáticas têm limites próprios, além dos de cada execução abaixo:

  • no máximo uma imagem a cada poucas respostas por chat (3 por padrão), e uma solicitação recusada ou que falhou também inicia a espera;
  • um limite diário para imagens automáticas neste navegador ($0.50 por padrão);
  • acima do seu valor de confirmação, ou Ask me first (o padrão, mostrando a descrição e o preço) ou Skip the picture.

As execuções automáticas só criam imagens, nunca vídeos, e as imagens ficam ocultas da IA como qualquer outro resultado. Enquanto a ferramenta está ativada, sua definição é enviada a cada solicitação de chat, o que custa alguns tokens na sua API de chat. O comportamento completo está no README da extensão.

Preços e limites

Antes de cada execução, a extensão pede uma cotação à SpicyAPI e a mostra em dólares americanos. As cotações são gratuitas.

ConfiguraçãoPadrãoO que faz
Ask before spending more than$0.10Execuções acima desse valor exigem confirmação. Se o editor de prompt já mostrou o preço, pressionar Generate for $... conta como confirmação. Vazio significa nunca perguntar, e 0 pergunta sempre.
Never spend more than$1.00Execuções que possam custar mais são recusadas antes de qualquer cobrança. Vazio significa sem limite.

O painel também mostra quanto esta sessão do navegador gastou. Para um limite rígido que vale em qualquer lugar, defina um limite de gasto diário na própria chave. Veja Autenticação.

Uma execução continua na SpicyAPI se você pressionar Stop waiting ou fechar a página, e é cobrada se der certo. Recupere-a depois com /spicy-task <task id>. Execuções que falham não são cobradas, exceto nos poucos modelos cuja página informa que requisições recusadas são cobradas. Veja Cobrança.

Onde ficam sua chave e seus arquivos

  • Sua chave fica em texto simples no arquivo de configurações do SillyTavern, na máquina que o executa (data/<user>/settings.json, em extension_settings.spicyapi). Outras extensões do SillyTavern podem lê-la. Se você usar Connect chat, a chave também é salva no arquivo de segredos do SillyTavern como a chave do endpoint Custom. Por isso vale a pena ter uma chave separada, com limite de gasto.
  • Os resultados são baixados e salvos na pasta de imagens do SillyTavern (data/<user>/user/images/<character>/spicyapi_<task id>.png ou .mp4) e depois anexados ao chat. Por padrão, os novos resultados ficam ocultos da IA, para que a próxima requisição de chat não envie uma imagem a um modelo que não consegue lê-la. Ative Let the AI see generated pictures and videos para mudar isso.
  • O que sai da sua máquina: o prompt, as configurações do modelo e qualquer imagem de referência vão para api.spicyapi.ai. Quando o seu modelo de chat escreve o prompt, o contexto do chat vai para a API de chat à qual o SillyTavern está conectado, como em qualquer outra mensagem.
  • A SpicyAPI guarda os arquivos gerados por tempo limitado. Veja Retenção e destruição.

Se você trocar de chat enquanto algo está sendo gerado, o resultado é salvo, mas não é adicionado ao chat, e a extensão informa onde ele está.

Rota de conexão

Por padrão, a extensão se comunica com https://api.spicyapi.ai diretamente do seu navegador. Se a sua rede ou o navegador bloquear isso, abra Connection no painel e escolha Auto (tenta direto e depois recorre ao proxy CORS do SillyTavern) ou Through SillyTavern's CORS proxy.

O proxy vem desativado. Ative-o definindo enableCorsProxy: true no config.yaml do SillyTavern (ou iniciando o SillyTavern com --corsProxy) e reinicie. Ele não pode ser combinado com a autenticação básica do SillyTavern (basicAuthMode), que rejeita requisições com chave de API. Nesse caso, use a rota direta.

Solução de problemas

O que você vêO que fazer
Bad Request em uma mensagem sem streamingAtive Streaming para ver a mensagem de erro real. As causas mais comuns estão nas linhas abaixo.
Resposta vazia ou que para depois de poucas palavrasAumente Response (tokens) para 2000 ou mais. Se o modelo pensa antes, reduza o esforço de raciocínio.
401 ou "invalid key"Cole a chave de novo a partir do console. Confira se ela começa com sk-spicy- e não tem espaço extra.
40202O limite de gasto da chave ou o seu saldo foi atingido. Aumente o limite ou adicione fundos. Veja Erros.
40301A lista de modelos permitidos da chave não inclui este modelo. Adicione-o no console.
Um erro citando image_url, ou todas as mensagens falham depois que apareceu uma imagemO modelo não lê imagens. Desative Send inline media ou escolha um modelo que leia imagens.
Um erro citando n, logit_bias ou logprobsDesative Multiple swipes, a predefinição de Logit Bias ou as probabilidades de token para este modelo.
Um erro sobre papéis ou ordem das mensagensDefina Prompt Post-Processing como Semi-strict ou Strict.
A lista de modelos é longaOs modelos de chat vêm primeiro na lista. Escolha um, ou digite em Enter a Model ID um id de modelo terminado em /chat.
upstream_failed informando que o orçamento de saída foi gasto com raciocínioAumente Response (tokens) ou reduza o esforço de raciocínio.
"The browser could not reach api.spicyapi.ai" (extensão)Mude a rota de conexão para Auto e ative o proxy CORS do SillyTavern como descrito acima.
"SillyTavern's CORS proxy is turned off" (extensão)Defina enableCorsProxy: true no config.yaml e reinicie o SillyTavern, ou volte para a rota direta.
"The result ... is ready, but it could not be downloaded" (extensão)Execute /spicy-task <task id> para tentar de novo.
"The prompt could not be written" (extensão)Nenhum modelo de chat está conectado, ou ele retornou um erro. Digite um prompt.

Os erros da SpicyAPI terminam com um request_id ou um ID de tarefa. Informe-o ao suporte para que a requisição seja localizada com exatidão. Os códigos de erro estão explicados em Erros.

Nesta página