API Ollama: altere seu cliente em três linhas
Comece a usar nossa API de chat compatível com OpenAI e sem censura em minutos. Altere a configuração do seu cliente para um único modelo com uma janela de contexto de 100k e comece a gerar conteúdo imediatamente.
- URL base
https://api.ollamaapi.com/v1- Modelo
uncensored
Pré-requisitos e URL base
Para usar esta API LLM sem censura, você precisa de uma conta com uma chave de API e um SDK compatível com OpenAI instalado no seu ambiente. A URL base para todas as requisições é https://api.ollamaapi.com/v1. Este endpoint é projetado como uma substituição pronta para usar para clientes OpenAI existentes, o que significa que você só precisa atualizar a URL base e a chave de API na sua configuração. A API suporta conclusões de texto de entrada e saída com streaming via Server-Sent Events (SSE) e chamada de funções. Não suporta embeddings, geração de imagens ou ajuste fino. Certifique-se de que a versão do seu SDK suporte esses recursos para a melhor experiência. Você usará o ID do modelo uncensored para todas as conclusões.
Autenticação e primeira requisição
A autenticação é feita via token Bearer no cabeçalho Authorization. Cadastre-se no site para receber sua chave imediatamente; nenhum cartão de crédito é necessário para o crédito de teste grátis. Use o seguinte comando cURL para enviar sua primeira mensagem. Substitua YOUR_API_KEY pela sua chave real. A requisição direciona-se ao endpoint padrão de conclusões de chat. Se bem-sucedida, você receberá uma resposta de texto do modelo sem censura. Certifique-se de definir o campo model para uncensored para utilizar o modelo de linguagem grande específico hospedado em nossos servidores GPU.
curl https://api.ollamaapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Lembre-se de que os prompts não são usados para treinar seus dados. A API impõe um limite rígido de conteúdo sexual envolvendo menores, mas, caso contrário, permite tópicos adultos e controversos sem recusa.
Integração com SDK Python
Usar o SDK Python oficial da OpenAI é a maneira mais direta de integrar. Instale a biblioteca via pip e, em seguida, inicialize o cliente com a URL base personalizada e sua chave de API. Esta configuração permite que você use o mesmo código de cliente que poderia usar para o GPT-4, mas direcionado ao nosso modelo sem censura. O código abaixo demonstra uma solicitação simples de conclusão de chat. Você pode ajustar os parâmetros max_tokens e temperature conforme necessário. O objeto de resposta conterá o texto gerado em response.choices[0].message.content.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapi.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
Esta abordagem funciona porque nossa API é totalmente compatível com OpenAI. Você não precisa de uma biblioteca de cliente separada especificamente para nosso serviço.
Configuração do SDK Node.js
Para projetos JavaScript ou TypeScript, o SDK Node.js da OpenAI funciona perfeitamente com nosso endpoint. Instale o pacote e configure o cliente com o baseURL apontando para nosso domínio. Passe sua chave de API no campo apiKey. A estrutura da requisição espelha exatamente o formato da OpenAI. Isso permite que você insira nossa API em aplicativos Node.js existentes sem refatoração significativa. O ID do modelo permanece uncensored. Você pode gerenciar sua chave de API pelo painel se precisar regenerá-la.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaapi.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
Certifique-se de que suas variáveis de ambiente estejam definidas corretamente para evitar expor sua chave no controle de origem. A chave de API é exibida imediatamente após o cadastro.
Respostas em streaming
Para aplicações que exigem geração de tokens em tempo real, a API suporta Server-Sent Events (SSE). Defina o parâmetro stream como true na sua requisição. O servidor enviará uma série de chunks, cada um contendo um delta parcial da resposta. Isso é ideal para interfaces de chat onde você deseja exibir o texto conforme é gerado. O comportamento do streaming é idêntico à API de streaming da OpenAI, portanto, a lógica de streaming existente deve funcionar com alterações mínimas. Processe o streaming até que o último chunk indique que a resposta está completa.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
O streaming não afeta o preço por token ou os limites da janela de contexto.
Limites, erros e contexto
A API possui uma janela de contexto de 100.000 tokens, combinando prompt e conclusão. Isso permite processamento extensivo de documentos ou conversas longas. Os limites de requisições estão definidos para 300 requisições por minuto por chave. Se você exceder isso, receberá um erro 429. Erros de autenticação retornam status 401, geralmente devido a uma chave inválida ou revogada. Fundos insuficientes resultam em erro 402. Os corpos das requisições são limitados a 8 MB. Não há assinatura; você paga conforme o uso com créditos pré-pagos que nunca expiram. Você pode recarregar a partir de $20. Os créditos não expiram, então você pode pausar o uso indefinidamente sem perder seu saldo.
Perguntas e respostas
Esta API suporta geração de imagens ou áudio?
Não, esta API é estritamente para conclusões de texto. Não suporta embeddings, geração de imagens, áudio ou vídeo. Foca em um único modelo de linguagem grande sem censura para interações de texto para texto.
Como funciona a precificação?
A precificação é pagamento por uso com créditos pré-pagos que nunca expiram. Tokens de entrada custam $0,15 por milhão, e tokens de saída custam $0,50 por milhão. Você pode recarregar com criptomoedas (USDT ou USDC), e créditos bônus estão disponíveis para depósitos maiores.
Meus dados são usados para treinamento?
Não, os prompts enviados para a API não são usados para treinamento. O serviço é projetado para privacidade, exigindo apenas um e-mail e senha para criação de conta.
Sua chave está a um formulário de distância
Crie uma conta, copie a chave, altere a URL base. Essa é toda a configuração.
Especificações técnicas
Uma tabela com cada limite, recurso e preço.
| Item | Valor |
|---|---|
| Formato | compatível com OpenAI: qualquer SDK da OpenAI funciona trocando a base URL e a chave |
| Autenticação | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.ollamaapi.com/v1 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID do modelo | uncensored |
| Parâmetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Janela de contexto | 100.000 tokens (entrada + saída) |
| Streaming | sim — server-sent events; o último bloco traz o uso de tokens |
| Saída máxima | até o restante da janela de 100.000 tokens; max_tokens opcional (sem limite separado) |
| Modo JSON | response_format: {"type": "json_object"} |
| Chamada de funções | sim — tools, tool_choice; resposta com tool_calls, inclusive em streaming; resultados como role: tool |
| Limite de taxa | 300 requisições por minuto por chave |
| Tamanho | até 8 MB por requisição |
| Cabeçalhos | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concorrência | 8 requisições ao mesmo tempo por chave |
| Teste grátis | $0,50 por 7 dias, sem cartão · Chave de teste: 2 requisições paralelas, 60 por minuto; limites totais (8 e 300) após a primeira recarga |
| Bônus | +5% a partir de $50, +10% a partir de $100, +15% a partir de $200 |
| Preço | $0,15 por 1M tokens de entrada · $0,50 por 1M de saída |
| Cobrança | crédito pré-pago pelo uso real; erros e recusas são grátis |
| Validade | crédito pago não expira, sem assinatura |
| Recarga | USDT (TRC20) ou USDC (Base), qualquer valor inteiro de $20 a $500 |
| Conteúdo | conteúdo adulto permitido; conteúdo sexual com menores é recusado |
| Chaves | uma chave ativa por conta; uma nova substitui a anterior |
| Login | Google ou e-mail e senha |
Códigos de erro
Erros chegam em JSON com um type fixo; requisições com falha ou recusadas não são cobradas.
| Código | Tipo | Significado |
|---|---|---|
400 | bad_request | JSON inválido, mensagens vazias, parâmetro errado ou contexto longo demais |
401 | missing_key · invalid_key · key_revoked | chave ausente, errada ou substituída |
402 | no_credit | sem crédito — recarregue e continue na hora |
403 | content_blocked | conteúdo sexual com menores — recusado, sem cobrança |
404 | not_found | endpoint desconhecido |
413 | request_too_large | corpo acima de 8 MB |
429 | rate_limited · concurrency | acima de 300/min ou 8 em paralelo — aguarde e tente de novo |
503 | upstream_busy | modelo ocupado — tente em alguns segundos |