Cas d’usage
Une API pour la fiction interactive et les aventures textuelles
Branchez n’importe quel SDK OpenAI sur nokeep et utilisez DeepSeek V4.1 Flash Uncensored comme narrateur. Il diffuse la prose au fur et à mesure qu’elle s’écrit, accepte les paramètres d’échantillonnage dont la fiction a besoin, tient un million de tokens de campagne et suit une intrigue sombre sans refus. Une session de 60 tours coûte environ $0.041.
Vérifié le 29 octobre 2026
Ce qu’il faut à un jeu textuel, et ce que vous obtenez
| Un jeu textuel a besoin de | Sur nokeep |
|---|---|
| Les premiers mots vite | Le streaming sur tous les modèles. DeepSeek répond tout de suite, sauf si vous lui demandez de réfléchir, si bien que la narration commence dès que l’appel démarre. |
| Une longue mémoire | DeepSeek tient 1 000 000 tokens : une campagne entière tient. Le début répété de chaque appel est facturé au tarif du cache, $0.011 par million au lieu de $0.45. |
| Une prose qui ne boucle pas | DeepSeek accepte temperature, min_p, top_k et trois pénalités. Valeurs de départ. |
| De la place pour les histoires sombres | Les refus sont retirés des poids, et rien n’est ajouté à votre prompt. Seule exception : une courte liste de limites strictes. Un appel qui en franchit une reçoit un 422 avec un code, et ne coûte rien. |
| Un coût connu | Des crédits prépayés, à partir de 5 $, qui n’expirent jamais. Chaque réponse indique ce que l’appel a coûté. |
Le coût d’une session
| Modèle | Une conversation, rien en cache | Une conversation, début répété en cache |
|---|---|---|
| DeepSeek V4.1 Flash Uncensored | $0.30 | $0.041 |
| GLM 5.3 Flash Uncensored | $0.13 | $0.037 |
Calculé avec les prix du jour : un début de 1 500 tokens, 60 tours de 40 tokens en entrée et 250 en sortie, l’appel le plus long de 18 650 tokens. La brève réflexion de GLM avant chaque réponse ajoute des tokens de sortie que ce calcul omet.
L’historique entier est envoyé à chaque tour, si bien que le 60e appel est bien plus long que le premier. Le cache est ce qui garde le coût bas : la partie qu’un appel répète depuis l’appel précédent est lue dans le cache. Sans un seul succès de cache, la même session coûterait $0.30 sur DeepSeek. Comment fonctionne le cache.
Un narrateur en une vingtaine de lignes
Le monde et les règles vont dans le message système. Gardez-le identique d’un tour à l’autre, pour que le début de chaque appel se répète et soit lu dans le cache. Diffusez la réponse et affichez-la au fur et à mesure qu’elle arrive.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://nokeep.ai/v1",
api_key=os.environ["NOKEEP_API_KEY"],
)
history = [{"role": "system", "content": "You are the narrator of a dark fantasy text adventure. The player is a smuggler in the drowned city of Vell. Describe what they see, hear and smell in second person, in under 150 words. Never act or speak for the player. End each turn with the scene open, not with a list of options."}]
def turn(move):
history.append({"role": "user", "content": move})
stream = client.chat.completions.create(
model="deepseek-v4.1-flash-uncensored",
messages=history,
stream=True,
max_tokens=400,
temperature=0.9,
extra_body={"min_p": 0.05, "repetition_penalty": 1.05, "prompt_cache_key": "campaign-42"},
)
text = ""
for chunk in stream:
if chunk.choices:
piece = chunk.choices[0].delta.content or ""
print(piece, end="", flush=True)
text += piece
history.append({"role": "assistant", "content": text})
turn("I row the stolen skiff under the old customs bridge.")prompt_cache_key est une chaîne quelconque que vous gardez identique pour une campagne. Elle envoie les appels de la campagne là où son début est déjà en cache. Le streaming explique l’usage dans le dernier fragment et l’arrêt anticipé d’une réponse.
Gardez le jeu dans votre code
- L’état hors de la prose. Gardez inventaire, santé et drapeaux dans vos propres données, et mettez un court résumé dans le message système. Un modèle retient bien une histoire et mal un nombre.
- Demandez du JSON quand vous avez besoin de données en retour. Un second appel court avec
response_formatpeut renvoyer ce qui a changé à ce tour, pour que votre code l’applique. Sortie JSON. - Longues campagnes. Un million de tokens, c’est beaucoup de tours, mais chacun est facturé. Au-delà de quelques centaines de tours, remplacez les plus anciens par un résumé écrit une fois, et gardez ce résumé au même endroit pour que le début continue de se répéter.
- Embranchements et annulation. L’API ne garde rien entre les appels : un point de sauvegarde n’est donc que la liste des messages à ce tour. Renvoyez une liste antérieure pour revenir en arrière.
Quel modèle
| DeepSeek V4.1 Flash Uncensored | GLM 5.3 Flash Uncensored | |
|---|---|---|
| Pour | Le narrateur. La plupart des jeux textuels. | Les petits appels annexes, comme les résumés. |
| Échantillonnage | Tous | Aucun ; ses propres réglages |
| Réflexion | Désactivée sauf demande, donc les réponses partent tout de suite | Toujours une brève réflexion d’abord |
| Contexte | 1,000,000 tokens | 128,000 tokens |
| Images en entrée | Oui, jusqu’à 10 par requête | Non |
Identifiants : deepseek-v4.1-flash-uncensored et glm-5.3-flash-uncensored. Les comparer en détail.
Ce qu’il advient des histoires de vos joueurs
Nous gardons une ligne par appel : l’heure, la clé, le modèle, les comptes de tokens, les crédits et le statut, pendant 30 jours. Jamais les messages, jamais la réponse. DeepSeek tourne sur un palier privé qui ne stocke ni prompts ni réponses. Les histoires de vos joueurs restent là où votre jeu les garde, et nulle part chez nous. Ce que nous conservons.
Questions
Puis-je faire une aventure textuelle à thèmes matures ?
Oui, pour des adultes. La violence, l’horreur, le crime et les relations adultes sont de la fiction que les modèles écrivent sans prompt de contournement. Seule la courte liste de limites strictes des conditions est refusée, avec un 422 qui ne coûte rien. Le titulaire de chaque clé confirme avoir 18 ans ou plus.
Combien de tours tiennent avant que le modèle oublie ?
DeepSeek lit 1 000 000 tokens par appel. À environ 300 tokens par tour, cela représente plus de 3 000 tours d’historique. La plupart des jeux résument bien avant, pour garder chaque appel bon marché.
Les joueurs peuvent-ils appeler l’API directement depuis ma page web ?
L’API accepte les appels depuis le navigateur, mais une clé dans une page publique peut être copiée. Appelez-la depuis votre serveur, ou donnez à chaque joueur sa propre clé avec un plafond quotidien.
Puis-je l’essayer avant de payer ?
Oui. La clé de test gratuite sk-nokeep-test renvoie une ligne fixe à toute requête, si bien que vous pouvez d’abord brancher votre jeu. La clé de test.