EN ▾
Get your key
per 1M input tokens$0.15
Output tokens / 1M$0.50
token context100,000
trial credit$0.50
requests per minute300

Uncensored, OpenAI-compatible LLM API

Hermes uncensored: Common Mistakes When Using the API

Hermes uncensored delivers reliable, open-weight generation without the friction of multi-model routers. Most developers hit walls with context limits, concurrency locks, or streaming quirks that break their pipelines. This guide fixes those specific errors so your integration runs smoothly from day one.

Last updated

Summary

  1. The 100k context window includes both prompt and output, so you must reserve tokens for the response.
  2. Streaming via SSE is required for real-time feedback; non-streaming requests hold connections open indefinitely.
  3. Rate limits apply per key, not per account, so shared keys bottleneck faster than dedicated ones.
  4. Crypto top-ups offer bonus credits but require whole dollar amounts between $20 and $500.

Understanding Context Window Limits

The model supports a 100,000 token context window for combined input and output. Developers often assume the entire window is available for the prompt. This assumption causes truncation when the response grows large. You must reserve tokens for the completion. If your prompt uses 80,000 tokens, you only have 20,000 left for the output. The system enforces this strictly. Exceeding the limit results in an immediate error. Always calculate the maximum possible output before sending. This is critical for long-document processing or extended roleplay sessions where history accumulates rapidly. If you need more space, consider chunking your input data. The API does not auto-truncate. It returns an error. This prevents partial responses that break JSON parsers. Plan your token budget carefully. Every token counts toward the total. Small mistakes in calculation lead to failed requests. Check your token usage in the dashboard. This helps you optimize future prompts. Efficiency saves money. It also reduces latency. Keep your context tight. Remove unnecessary history. This keeps your requests within bounds. The 100k limit is generous but finite. Use it wisely.

Managing Output Token Limits

Each request can generate up to 16,000 tokens of output. If you do not specify max_tokens, the model defaults to 2,048 tokens. This default is often too short for complex tasks. You might get a truncated response. The model cuts off mid-sentence. This breaks your application logic. Always set max_tokens explicitly. This gives you control over the output length. It also helps manage costs. Longer outputs cost more tokens. Be precise with your limits. If you need more than 16,000 tokens, you may need to call the API multiple times. The model does not support multi-turn output in a single request. You can continue the conversation in subsequent requests. This is a standard pattern. It works well for long-form content. Just remember to include the previous output in the next prompt. This maintains context. The 16k limit is a hard cap. It is not configurable. Plan your content generation accordingly. Short, focused prompts yield better results. Long, rambling prompts hit the limit faster. Keep your instructions clear. This reduces the need for long outputs. Efficiency is key. Monitor your token usage. This helps you stay within budget. Adjust your limits as needed. Flexibility is important.

Handling Rate Limits and Concurrency

Each API key is limited to 300 requests per minute. You can also run 8 requests concurrently. These limits are per key, not per account. If you share a key, all users hit the same limit. This causes bottlenecks quickly. You might see 429 errors. This means you are over the limit. Wait before retrying. The API uses a sliding window. This means the limit resets gradually. Do not spam the endpoint. This can cause temporary blocks. Use exponential backoff for retries. This is the standard practice. It prevents overwhelming the server. Concurrency is a powerful feature. It allows parallel processing. But it also increases the risk of hitting limits. Monitor your concurrent requests. Ensure you are not exceeding 8 at once. If you need more throughput, get a dedicated key. This isolates your usage. It also simplifies troubleshooting. You can track your own limits. Shared keys make debugging harder. Keep your requests clean. Avoid unnecessary retries. This saves your rate limit budget. Efficiency matters. Plan your concurrency carefully. Balance speed with stability. The 300 rpm limit is high but finite. Use it wisely.

Streaming vs. Non-Streaming Requests

Streaming via SSE provides real-time token feedback. Non-streaming requests wait for the full response. This can take longer for large outputs. Streaming is preferred for interactive apps. It gives users immediate feedback. The model sends tokens as they are generated. This reduces perceived latency. You can display text as it appears. Non-streaming is better for batch processing. It returns a complete response at once. This is simpler to handle. Choose the right mode for your use case. Streaming requires more complex parsing. You must handle partial responses. Non-streaming is easier to debug. It returns a single object. But it holds the connection open. This can consume resources. Consider your infrastructure. Streaming is more efficient for large outputs. It allows you to stop early if needed. You can cancel the request. This saves tokens. Non-streaming does not allow cancellation. The request runs to completion. Plan your architecture accordingly. Use streaming for chat interfaces. Use non-streaming for data extraction. This matches your needs. Flexibility is key. Choose wisely. Monitor your latency. This helps you optimize. Streaming reduces wait times. Non-streaming simplifies logic. Both have their place.

Function Calling Edge Cases

Function calling allows the model to invoke tools. You define the tool schema. The model returns a function call. You execute the function. You send the result back to the model. This loop continues until the model is done. Edge cases arise when the model returns invalid JSON. Or when the function execution fails. You must handle these errors gracefully. The model might hallucinate arguments. Validate the arguments before execution. This prevents runtime errors. Send the error back to the model. It can retry or adjust. This improves reliability. Function calling is powerful but complex. It requires careful schema design. Keep the schema simple. Avoid nested objects. This reduces parsing errors. The model prefers flat schemas. Use clear descriptions for each function. This guides the model correctly. Test your functions thoroughly. Ensure they return the expected format. This helps the model understand the response. Function calling is not magic. It requires engineering. Plan your tool interface carefully. This ensures smooth integration. Debugging function calls can be tricky. Log the inputs and outputs. This helps identify issues. Function calling is a key feature. Use it wisely.

JSON Mode Validation Errors

JSON mode forces the model to output valid JSON. This is useful for structured data. The model must adhere to the schema. If it fails, you get a validation error. This happens when the model hallucinates. Or when the output is malformed. You must handle these errors. Retry the request. Or adjust the prompt. JSON mode is strict. It does not allow extra text. The model must output only JSON. This can be challenging for complex tasks. The model might add markdown code blocks. This breaks the parser. Remove the code blocks before parsing. This is a common fix. JSON mode is reliable but not perfect. Monitor your error rates. If they are high, adjust your prompt. Or simplify the schema. JSON mode is essential for API integrations. It ensures consistency. This reduces downstream errors. Use it for data extraction. It works well for forms. It also works for configuration files. JSON mode is a powerful tool. Use it to structure your data. This makes your API more robust. Validate your inputs. This prevents errors. JSON mode is a best practice. Adopt it for structured outputs.

Crypto Top-Up and Bonus Credit Confusion

Credit is topped up with crypto only. We accept USDT on TRC20 or USDC on Base. The minimum amount is $20. The maximum is $500. You must send a whole dollar amount. Bonus credits are added automatically. You get +5% bonus from $50. You get +10% bonus from $100. You get +15% bonus from $200. This bonus is added to your account. It is not a discount. It is extra credit. This increases your value. Pay attention to the network. Use TRC20 for USDT. Use Base for USDC. Sending to the wrong network can result in loss. This is irreversible. Always double-check the address. Crypto payments are fast. Credits are added immediately. This allows you to start using the API right away. The trial gives you $0.50 for 7 days. This is enough to test the API. Crypto top-ups never expire. This is a key benefit. You can top up when you need it. This gives you flexibility. Manage your budget carefully. Track your bonus credits. This helps you understand your value. Crypto payments are secure. They are also private. This is a key advantage. Use crypto for your top-ups. It is the fastest way to get credit.

Monitoring Usage and Errors

Track your token usage in the dashboard. This helps you manage your budget. You can see your consumption over time. This identifies spikes in usage. Monitor your error rates. High error rates indicate issues. Check the response status codes. 429 means rate limit exceeded. 500 means server error. 400 means bad request. Handle these codes appropriately. Retry on 500 errors. Wait on 429 errors. Fix your request on 400 errors. Logging is essential. Log your inputs and outputs. This helps debug issues. It also helps optimize your prompts. Monitoring gives you insights. It helps you improve your integration. Use the dashboard to track trends. Identify patterns in usage. This helps you plan for scale. Monitoring is not optional. It is essential for production. Keep an eye on your limits. This prevents unexpected downtime. Use alerts if possible. This notifies you of issues. Monitoring is a continuous process. Do it regularly. This ensures smooth operation. Keep your logs. This helps with audits. Monitoring is key to success.

Best Practices for Uncensored Content

The model does not refuse lawful adult content. It is uncensored by design. This allows for creative freedom. But it also means you get what you ask for. Be specific in your prompts. This reduces unexpected outputs. The model follows instructions closely. If you want NSFW content, ask for it. If you want clean content, specify that. The model respects your instructions. It does not impose its own morals. This is a feature. It allows for diverse content. But it also requires careful prompting. Avoid ambiguous instructions. This reduces hallucinations. Use clear language. This improves output quality. The model is tuned for adult use. It handles mature themes well. This makes it ideal for roleplay. It also works for creative writing. Use it for brainstorming. It generates ideas without judgment. The uncensored nature is a key benefit. Use it to your advantage. Prompt engineering is still important. Good prompts yield good results. Bad prompts yield bad results. This is true for any model. But uncensored models are more unpredictable. Be prepared for varied outputs. This is part of the experience. Embrace the freedom. Use it to create unique content. The uncensored model is a powerful tool. Use it wisely.

Frequently asked questions

What is the hermes uncensored model?

It is an open-weight large language model hosted on our servers. It is tuned to answer without content refusals for lawful adult use. It is not GPT, Claude, or any other vendor's model. You can use it via our OpenAI-compatible endpoints.

Which payment methods do you accept?

Crypto only: USDT on TRC20 or USDC on Base, any whole amount from $20 to $500. Bonus credit applies from $50.

What happens if I hit the rate limit?

You will receive a 429 error. You should wait and retry with exponential backoff. The limit is 300 requests per minute per key. You can also run 8 concurrent requests. Sharing a key reduces your effective limit.

Is the hermes API key free?

Getting a key is free. You sign up with Google or email. You get $0.50 in trial credit for 7 days. After that, you need to top up with crypto. The key itself does not expire. Your credit does not expire either.

Get your API key in seconds

Register, retrieve your key, and update your endpoint URL. That’s all there is to it.

Get your key