luck210 commited on
Commit
add0ece
·
verified ·
1 Parent(s): ed0dfae

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -22
app.py CHANGED
@@ -1,33 +1,18 @@
1
  from fastapi import FastAPI, UploadFile, File
2
- import requests
3
 
4
  app = FastAPI()
5
 
6
- # URL de l’API Ollama (local dans le conteneur)
7
- OLLAMA_API_URL = "http://localhost:11434/api/generate"
 
8
 
9
- # Fonction pour interroger Ollama
10
- def query_ollama(prompt: str, model: str = "mistral"):
11
- payload = {
12
- "model": model,
13
- "prompt": prompt,
14
- "stream": False
15
- }
16
- response = requests.post(OLLAMA_API_URL, json=payload)
17
- if response.status_code == 200:
18
- return response.json()["response"]
19
- else:
20
- return f"Erreur : {response.status_code} - {response.text}"
21
-
22
- @app.get("/")
23
- async def root():
24
- return {"message": "API avec Ollama sur Hugging Face Spaces"}
25
-
26
- # Exemple d’endpoint pour résumer un texte
27
  @app.post("/summarization/text")
28
  async def summarize_text(file: UploadFile = File(...)):
29
  content = await file.read()
30
  text = content.decode("utf-8")
31
  prompt = f"Résume ce texte en 3 phrases courtes : {text}"
32
- summary = query_ollama(prompt, model="mistral") # Remplace par "deepseek-v2" si dispo
 
 
33
  return {"summary": summary}
 
1
  from fastapi import FastAPI, UploadFile, File
2
+ from transformers import AutoModelForCausalLM, AutoTokenizer
3
 
4
  app = FastAPI()
5
 
6
+ # Charger DeepSeek depuis Hugging Face
7
+ model = AutoModelForCausalLM.from_pretrained("deepseek-ai/DeepSeek-V2-Chat")
8
+ tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-V2-Chat")
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  @app.post("/summarization/text")
11
  async def summarize_text(file: UploadFile = File(...)):
12
  content = await file.read()
13
  text = content.decode("utf-8")
14
  prompt = f"Résume ce texte en 3 phrases courtes : {text}"
15
+ inputs = tokenizer(prompt, return_tensors="pt")
16
+ outputs = model.generate(**inputs, max_length=100)
17
+ summary = tokenizer.decode(outputs[0], skip_special_tokens=True)
18
  return {"summary": summary}