Saltar para o artigo
Solta

Chamar um modelo

O seu site pode fazer uma pergunta a um modelo: da Anthropic ou da OpenAI com a sua chave, ou à própria IA de cada visitante, através do OpenRouter. A chave nunca está na página.

Porque não pôr a chave na página

Porque um site publicado é público. Uma chave no ficheiro é uma chave no navegador de toda a gente que o abre, e a primeira coisa que farão com ela não é o que tinha em mente. Usar a sua própria chave num alojamento de sites estáticos é, normalmente, uma forma de a divulgar.

Por isso a chave fica connosco. A sua página faz o pedido ao seu próprio endereço, nós acrescentamos a chave e reencaminhamos o pedido.

Quem paga

Alguém paga cada resposta. Nas definições do site, em IA, escolhe quem, uma vez para todo o site:

  • O dono do site, com uma chave guardada. No Pro e no Team. A sua própria chave da Anthropic ou da OpenAI paga, até um limite mensal que define.
  • Cada visitante, com a sua própria conta do OpenRouter. Em todos os planos, incluindo o Free. Cada visitante liga-se uma vez e paga os seus próprios pedidos.
  • Desligado. O site não chama nenhum modelo.

Só uma opção de cada vez, para saber sempre de quem é o dinheiro que um pedido gasta.

Chaves guardadas

Uma chave é guardada uma vez, em Chaves e ligações, na secção Chaves de modelo, e depois cada site escolhe uma numa lista. Dê um nome a cada uma, como «Anthropic, trabalho», e guarde quantas quiser, incluindo várias do mesmo fornecedor. As chaves de um espaço de trabalho são guardadas nas definições do espaço, pelo proprietário ou por um administrador, e só os sites desse espaço as podem usar. As suas chaves pessoais nunca pagam o site de um espaço de trabalho, nem o contrário.

Depois de guardada, a chave nunca mais é mostrada: só os quatro últimos caracteres, quando foi usada pela última vez e que sites a usam. Uma chave que algum site ainda usa não pode ser removida enquanto esse site não escolher outra, e o Solta diz que sites são.

Crie uma chave à parte só para o Solta, com um limite de gastos no fornecedor. O nosso limite é uma defesa. O limite do fornecedor é o que se mantém, aconteça o que acontecer aqui.

Escolher um modelo

Escolhe um nível, não um modelo, e cada pedido do site usa o modelo desse nível, seja qual for o modelo que a página peça. As respostas também ficam limitadas ao tamanho máximo do nível, para que uma página não possa pedir uma redação inteira com a sua chave. Os mesmos níveis aplicam-se quando os visitantes pagam.

NívelAnthropicOpenAIResposta mais longa1000 respostas curtas
Rápido e baratoclaude-haiku-5-5gpt-6-luna1024 tokenscerca de 0,14 US$ com a Anthropic
Equilibrado (o predefinido)claude-sonnet-5-5gpt-6.1-sol2048 tokenscerca de 2,80 US$ com a Anthropic
O melhorclaude-opus-5-5gpt-6-astra4096 tokenscerca de 5,60 US$ com a Anthropic

Uma resposta curta é uma pergunta de cerca de 400 tokens e uma resposta de cerca de 200, ao preço de tabela do fornecedor. Quem lhe cobra é o seu fornecedor, não nós.

O limite mensal e o limite por visitante

Quando a sua chave paga, o preço de cada resposta é calculado a partir do que o fornecedor diz ter usado, e o site para num limite mensal em dólares: 10 US$, a não ser que defina outro. As definições do site mostram em que ponto está, por exemplo «3,20 US$ de 10 US$ este mês». Enviamos-lhe um e-mail aos 80% e de novo aos 100%. No limite, os pedidos são recusados com { "code": "ai_allowance" } e uma frase que a sua página pode mostrar, até o mês mudar ou subir o limite. Trocar a chave não faz o mês recomeçar.

Cada visitante também tem um número de pedidos por hora, 20 a não ser que defina outro, seja quem for que paga: contados por endereço IP e por um cookie no site, para que um visitante não esgote o limite de um mês à hora de almoço. Depois disso, os pedidos são recusados com { "code": "ai_visitor_limit" } e um retry-after.

Como usar

Com a sua chave a pagar, faça um POST para /_solta/ai. O corpo é o corpo do pedido do próprio fornecedor, e o que volta é a resposta do próprio fornecedor, sem alterações, porque o formato é dele e não nos cabe a nós prometê-lo. O modelo e a resposta mais longa são os do nível. As respostas chegam inteiras, sem streaming.

const res = await fetch("/_solta/ai", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({
    max_tokens: 512,
    messages: [{ role: "user", content: "Summarise this page" }],
  }),
});

const answer = await res.json();

Os visitantes usam a sua própria IA

Em todos os planos, incluindo o Free. Escolha Cada visitante, com a sua própria conta do OpenRouter e cada visitante paga os seus próprios pedidos: liga a sua própria conta do OpenRouter uma vez, só neste site, com um limite de gastos que escolhe lá. A sua chave não é usada, e ninguém cola uma chave em lado nenhum.

Não há nada para instalar. Todas as páginas do site têm window.solta.ai:

const answer = await solta.ai.chat({
  messages: [{ role: "user", content: "Summarise this page" }],
});

O modelo é o do nível que escolheu, com o nome que o OpenRouter lhe dá, como anthropic/claude-sonnet-5.5. solta.ai.request() devolve a resposta inteira do OpenRouter, no formato chat-completions da OpenAI. solta.ai.status() diz se este visitante está ligado, e solta.ai.disconnect() esquece-o.

A chave que o OpenRouter cria fica guardada aqui, encriptada, e nunca chega à página. Só funciona no seu site, e é eliminada quando o visitante se desliga, após 90 dias sem uso, ou quando escolhe qualquer opção que não sejam os visitantes. Ligar exige o site num separador próprio, por isso, dentro da página do site no Solta ou de uma incorporação, é oferecido ao visitante um separador novo. Num site Privado, que só as pessoas dele abrem através do Solta, use antes a sua própria chave.

O que os visitantes veem

Da primeira vez que o site precisa da IA do visitante, quem ainda não se ligou vê isto, no idioma do próprio navegador, e o pedido segue assim que se ligar:

Use a sua própria IA

Este site usa IA paga por si, através do OpenRouter. Ligue-a uma vez: define lá um limite de gastos e pode desligá-la a qualquer momento.

Agora não · Ligar com o OpenRouter

O Solta guarda a sua chave encriptada, nunca nesta página, e elimina-a após 90 dias sem uso.

Depois de ligado, uma pequena etiqueta «IA: ligada · Desligar» fica num canto da página, para que o visitante veja sempre que o site gasta o seu crédito e o possa parar. Pode escondê-la durante o resto da visita. As definições do seu site mostram as mesmas palavras.

O que isto não faz

Não consegue distinguir com certeza um visitante de outro. Quem consegue abrir o seu site consegue pô-lo a chamar o modelo, e com a sua chave isso é gastar o seu dinheiro. Não há forma de o evitar enquanto o site for público: um segredo entregue ao público não é um segredo. O nível, o limite mensal, o limite por visitante e o limite do próprio fornecedor são o que mantém o gasto dentro do que pretendia. A alternativa é pedir a cada visitante que use a sua própria IA.

Alterar o site com um pedido

Quando a sua chave paga, o site ganha um separador Conversa ao lado de Comentários e Versões. Peça uma alteração e o ficheiro inteiro volta. Um botão guarda-o como uma versão nova.

Nada é guardado enquanto não carregar nesse botão, e guardar uma versão não muda nada que alguém possa ver: o link continua a mostrar o que mostrava antes, até publicar. Um modelo ter terminado não é razão para o seu link mudar.

A conversa gasta a mesma chave, o mesmo nível e o mesmo limite que o site, porque é a mesma chave. E só funciona num site de um único ficheiro: uma pasta não tem uma só coisa para ir melhorando, e entregar a um modelo um ficheiro entre quarenta é pior do que recusar.

O que mais não corre no momento do pedido.