Spaces:
Sleeping
Sleeping
mbaye commited on
Commit ·
7ddf5c9
1
Parent(s): 1f05c91
exposition du modele Mistral
Browse files- app.py +28 -20
- requirements.txt +2 -1
- start.sh +9 -11
app.py
CHANGED
|
@@ -1,26 +1,34 @@
|
|
|
|
|
|
|
|
| 1 |
import requests
|
|
|
|
| 2 |
|
| 3 |
-
|
| 4 |
-
OLLAMA_URL = "http://localhost:11434/api/generate" # API locale par défaut
|
| 5 |
-
MODEL_NAME = "mistral:7b-instruct-q4_K_M" # Le modèle que tu veux utiliser
|
| 6 |
|
| 7 |
-
|
| 8 |
-
|
| 9 |
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
"model": MODEL_NAME,
|
| 13 |
-
"prompt": prompt,
|
| 14 |
-
"stream": False # Si tu veux une réponse en streaming, mets True
|
| 15 |
-
}
|
| 16 |
|
| 17 |
-
|
| 18 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
|
|
|
| 1 |
+
from fastapi import FastAPI, Request
|
| 2 |
+
from pydantic import BaseModel
|
| 3 |
import requests
|
| 4 |
+
import uvicorn
|
| 5 |
|
| 6 |
+
app = FastAPI()
|
|
|
|
|
|
|
| 7 |
|
| 8 |
+
OLLAMA_URL = "http://localhost:11434/api/generate"
|
| 9 |
+
MODEL_NAME = "mistral:7b-instruct-q4_K_M"
|
| 10 |
|
| 11 |
+
class PromptRequest(BaseModel):
|
| 12 |
+
prompt: str
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
|
| 14 |
+
@app.post("/generate")
|
| 15 |
+
def generate_text(request_data: PromptRequest):
|
| 16 |
+
payload = {
|
| 17 |
+
"model": MODEL_NAME,
|
| 18 |
+
"prompt": request_data.prompt,
|
| 19 |
+
"stream": False
|
| 20 |
+
}
|
| 21 |
+
response = requests.post(OLLAMA_URL, json=payload)
|
| 22 |
+
if response.status_code == 200:
|
| 23 |
+
data = response.json()
|
| 24 |
+
return {"response": data.get("response")}
|
| 25 |
+
else:
|
| 26 |
+
return {"error": response.status_code, "message": response.text}
|
| 27 |
|
| 28 |
+
@app.get("/")
|
| 29 |
+
def read_root():
|
| 30 |
+
return {"message": "Bienvenue sur l'API FastAPI + Ollama"}
|
| 31 |
+
|
| 32 |
+
if __name__ == "__main__":
|
| 33 |
+
# Démarrage du serveur FastAPI
|
| 34 |
+
uvicorn.run(app, host="0.0.0.0", port=7860)
|
requirements.txt
CHANGED
|
@@ -4,4 +4,5 @@ langchain-ollama
|
|
| 4 |
ollama
|
| 5 |
fastapi
|
| 6 |
uvicorn
|
| 7 |
-
pydantic
|
|
|
|
|
|
| 4 |
ollama
|
| 5 |
fastapi
|
| 6 |
uvicorn
|
| 7 |
+
pydantic
|
| 8 |
+
requests
|
start.sh
CHANGED
|
@@ -1,17 +1,15 @@
|
|
| 1 |
#!/bin/bash
|
| 2 |
|
| 3 |
-
# Démarrer
|
| 4 |
echo "Démarrage du serveur Ollama..."
|
| 5 |
ollama serve &
|
| 6 |
-
sleep
|
| 7 |
|
| 8 |
-
#
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
ollama pull "$m"
|
| 13 |
-
sleep 5
|
| 14 |
-
done
|
| 15 |
|
| 16 |
-
#
|
| 17 |
-
|
|
|
|
|
|
| 1 |
#!/bin/bash
|
| 2 |
|
| 3 |
+
# Démarrer Ollama en arrière-plan
|
| 4 |
echo "Démarrage du serveur Ollama..."
|
| 5 |
ollama serve &
|
| 6 |
+
sleep 5
|
| 7 |
|
| 8 |
+
# Télécharger le modèle
|
| 9 |
+
echo "Téléchargement du modèle : $model"
|
| 10 |
+
ollama pull "$model"
|
| 11 |
+
sleep 5
|
|
|
|
|
|
|
|
|
|
| 12 |
|
| 13 |
+
# Lancer FastAPI via uvicorn
|
| 14 |
+
echo "Lancement de FastAPI..."
|
| 15 |
+
uvicorn app:app --host 0.0.0.0 --port 7860
|