FabioSantos commited on
Commit
79a34c5
·
verified ·
1 Parent(s): 930a84e

Update api.py

Browse files
Files changed (1) hide show
  1. api.py +44 -50
api.py CHANGED
@@ -1,50 +1,44 @@
1
- from fastapi import FastAPI
2
- from pydantic import BaseModel
3
- from huggingface_hub import hf_hub_download
4
- from llama_cpp import Llama
5
-
6
- # Definição do modelo de dados de entrada
7
- class Question(BaseModel):
8
- text: str
9
-
10
- # Inicializando o FastAPI
11
- app = FastAPI()
12
-
13
-
14
- llm = Llama.from_pretrained(
15
- repo_id="FabioSantos/curso_llama3.2_Finetune",
16
- filename="unsloth.Q8_0.gguf",
17
- )
18
-
19
-
20
- def get_response(text: str) -> str:
21
-
22
- response = llm.create_chat_completion(
23
- messages=[
24
- {
25
- "role": "user",
26
- "content": text # Correção: Remover as chaves {} que estavam criando um set
27
- }
28
- ]
29
- )
30
-
31
- response_text = response['choices'][0]['text']
32
-
33
- # Extrair a resposta após "### Response:"
34
- if "### Response:" in response_text:
35
- answer = response_text.split("### Response:")[1].strip()
36
- else:
37
- answer = response_text.strip()
38
-
39
- print(f"Final Answer: {answer}")
40
- return answer
41
-
42
-
43
- # Endpoint para receber uma questão e retornar a resposta
44
- @app.post("/ask")
45
- def ask_question(question: Question):
46
- response = get_response(question.text)
47
- return {"response": response}
48
-
49
-
50
-
 
1
+ from fastapi import FastAPI
2
+ from pydantic import BaseModel
3
+ from huggingface_hub import hf_hub_download
4
+ from llama_cpp import Llama
5
+
6
+ # Definição do modelo de dados de entrada
7
+ class Question(BaseModel):
8
+ text: str
9
+
10
+ # Inicializando o FastAPI
11
+ app = FastAPI()
12
+
13
+
14
+ llm = Llama.from_pretrained(
15
+ repo_id="FabioSantos/curso_llama3.2_Finetune",
16
+ filename="unsloth.Q8_0.gguf",
17
+ )
18
+
19
+
20
+ def get_response(text: str) -> str:
21
+
22
+ response = llm.create_chat_completion(
23
+ messages=[
24
+ {
25
+ "role": "user",
26
+ "content": text # Correção: Remover as chaves {} que estavam criando um set
27
+ }
28
+ ]
29
+ )
30
+
31
+ response_text = response
32
+
33
+
34
+ return response_text
35
+
36
+
37
+ # Endpoint para receber uma questão e retornar a resposta
38
+ @app.post("/ask")
39
+ def ask_question(question: Question):
40
+ response = get_response(question.text)
41
+ return {"response": response}
42
+
43
+
44
+