http://localhost:8080/
- Lister les modèles disponibles :
GET /models
- Charger un modèle :
POST /load_model
- Décharger le modèle :
POST /unload_model
- Obtenir le modèle chargé :
GET /current_model
- Générer une sortie :
POST /generate
- Télécharger un modèle depuis Hugging Face :
POST /pull
- Supprimer un modèle :
POST /rm
Retourne la liste des modèles disponibles dans le répertoire ~/RKLLAMA/models
.
GET /models
-
Code 200 : Liste des modèles disponibles.
{ "models": [ "model1.rkllm", "model2.rkllm", "model3.rkllm" ] }
-
Code 500 : Répertoire introuvable.
{ "error": "Le dossier ~/RKLLAMA/models est introuvable." }
curl -X GET http://localhost:8080/models
Charge un modèle spécifique dans la mémoire.
POST /load_model
Content-Type: application/json
{
"model_name": "nom_du_modèle.rkllm"
}
-
Code 200 : Modèle chargé avec succès.
{ "message": "Modèle <model_name> chargé avec succès." }
-
Code 400 : Erreur liée à un modèle déjà chargé ou à des paramètres manquants.
{ "error": "Un modèle est déjà chargé. Veuillez d'abord le décharger." }
-
Code 400 : Modèle introuvable.
{ "error": "Modèle <model_name> introuvable dans le dossier /models." }
curl -X POST http://localhost:8080/load_model \
-H "Content-Type: application/json" \
-d '{"model_name": "model1.rkllm"}'
Décharge le modèle actuellement chargé.
POST /unload_model
-
Code 200 : Succès.
{ "message": "Modèle déchargé avec succès." }
-
Code 400 : Aucun modèle n'est chargé.
{ "error": "Aucun modèle n'est actuellement chargé." }
curl -X POST http://localhost:8080/unload_model
Retourne le nom du modèle actuellement chargé.
GET /current_model
-
Code 200 : Succès.
{ "model_name": "nom_du_modèle" }
-
Code 404 : Aucun modèle n'est chargé.
{ "error": "Aucun modèle n'est actuellement chargé." }
curl -X GET http://localhost:8080/current_model
Génère une réponse en utilisant le modèle chargé.
POST /generate
Content-Type: application/json
{
"messages": "prompt ou chat_template",
"stream": true
}
-
Code 200 : Réponse générée.
{ "id": "rkllm_chat", "object": "rkllm_chat", "created": null, "choices": [{ "role": "assistant", "content": "sortie_rkllama", "finish_reason": "stop" }], "usage": { "prompt_tokens": null, "completion_tokens": null, "total_tokens": null } }
-
Code 400 : Aucun modèle n'est chargé.
{ "error": "Aucun modèle n'est actuellement chargé." }
curl -X POST http://localhost:8080/generate \
-H "Content-Type: application/json" \
-d '{"messages": "Bonjour, comment vas-tu ?", "stream": false}'
Télécharge et installe un modèle depuis Hugging Face.
POST /pull
Content-Type: application/json
{
"model": "hf/nom_utilisateur/id_dépôt/fichier.rkllm"
}
- Code 200 : Téléchargement en cours.
Téléchargement <fichier> (<taille> MB)...
<progression>%
- Code 400 : Erreur lors du téléchargement.
Erreur pendant le téléchargement : <erreur>
curl -X POST http://localhost:8080/pull \
-H "Content-Type: application/json" \
-d '{"model": "hf/username/repo/file.rkllm"}'
Supprime un modèle spécifique.
POST /rm
Content-Type: application/json
{
"model": "nom_du_modèle.rkllm"
}
-
Code 200 : Succès.
{ "message": "Le modèle a été supprimé avec succès." }
-
Code 404 : Modèle introuvable.
{ "error": "Le modèle : {model} est introuvable." }
curl -X DELETE http://localhost:8080/rm \
-H "Content-Type: application/json" \
-d '{"model": "model1.rkllm"}'
Affiche un message de bienvenue et un lien vers le projet GitHub.
- Code 200 :
{ "message": "Bienvenue sur RK-LLama !", "github": "https://github.com/notpunhnox/rkllama" }
curl -X GET http://localhost:8080/
- 400 : Erreur liée à une mauvaise requête.
- 404 : Ressource introuvable.
- 500 : Erreur interne au serveur.
- Validation des paramètres : Vérifiez toujours les noms des modèles et les chemins des fichiers.
- Dépannage : Consultez les journaux du serveur pour plus de détails sur les erreurs internes.