luck210 commited on
Commit
37891e2
·
verified ·
1 Parent(s): e9e4099

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -14
app.py CHANGED
@@ -1,22 +1,39 @@
1
- from fastapi import FastAPI
2
- import os
3
- import ollama
 
 
 
 
4
 
5
  app = FastAPI()
6
 
7
- # Charger le modèle (vérifier si Hugging Face Spaces est prêt)
8
- MODEL_NAME = "allenai/WildLlama-7b-user-assistant"
9
- OLLAMA_READY = os.getenv("HF_SPACE", "false").lower() == "true"
10
-
11
  @app.get("/")
12
  def home():
13
- return {"message": "API is running!", "model_ready": OLLAMA_READY}
 
 
 
 
 
 
 
 
 
 
 
 
14
 
15
- @app.post("/chat")
16
- def chat(prompt: str):
17
- if not OLLAMA_READY:
18
- return {"error": "Ollama is not available on HF Spaces"}
19
 
20
- response = ollama.chat(model=MODEL_NAME, messages=[{"role": "user", "content": prompt}])
21
- return {"response": response["message"]}
 
 
 
22
 
 
 
 
1
+ from fastapi import FastAPI, UploadFile, File
2
+ from models.summarization import summarize_text
3
+ from models.qa import answer_question
4
+ from models.visualization import generate_visualization
5
+ from models.translation import translate_document
6
+ from utils.document_parser import extract_text_from_pdf
7
+ import uvicorn
8
 
9
  app = FastAPI()
10
 
 
 
 
 
11
  @app.get("/")
12
  def home():
13
+ return {"message": "API is running on Hugging Face Spaces!"}
14
+
15
+ @app.post("/summarize/")
16
+ async def summarize(file: UploadFile = File(...)):
17
+ text = extract_text_from_pdf(file)
18
+ summary = summarize_text(text)
19
+ return {"summary": summary}
20
+
21
+ @app.post("/qa/")
22
+ async def qa(file: UploadFile = File(...), question: str = ""):
23
+ text = extract_text_from_pdf(file)
24
+ response = answer_question(text, question)
25
+ return {"answer": response}
26
 
27
+ @app.post("/visualization/")
28
+ async def visualization(file: UploadFile = File(...), request: str = ""):
29
+ code = generate_visualization(file, request)
30
+ return {"generated_code": code}
31
 
32
+ @app.post("/translate/")
33
+ async def translate(file: UploadFile = File(...), target_language: str = "fr"):
34
+ text = extract_text_from_pdf(file)
35
+ translated_text = translate_document(text, target_language)
36
+ return {"translated_text": translated_text}
37
 
38
+ if __name__ == "__main__":
39
+ uvicorn.run(app, host="0.0.0.0", port=7860)