thetamiraa commited on
Commit
56d6018
·
1 Parent(s): 8647e9d

change fast api to gradio

Browse files
Files changed (2) hide show
  1. app.py +18 -15
  2. requirements.txt +2 -3
app.py CHANGED
@@ -1,33 +1,36 @@
1
- from fastapi import FastAPI
2
- from pydantic import BaseModel
3
  from transformers import AutoTokenizer, AutoModelForCausalLM
4
  import torch
5
 
6
- app = FastAPI()
7
-
8
- # Load the Mongolian Llama model and tokenizer
9
  model_name = "Dorjzodovsuren/Mongolian_Llama3-v0.1"
10
  tokenizer = AutoTokenizer.from_pretrained(model_name)
11
  model = AutoModelForCausalLM.from_pretrained(model_name)
12
 
13
- class UserInput(BaseModel):
14
- text: str
15
-
16
- @app.post("/generate/")
17
- def generate_response(user_input: UserInput):
18
  # Tokenize the input text
19
- inputs = tokenizer(user_input.text, return_tensors="pt")
20
 
21
  # Generate response
22
  with torch.no_grad():
23
  outputs = model.generate(
24
  **inputs,
25
  max_length=100, # Adjust for desired response length
26
- num_return_sequences=1,
27
  temperature=0.7, # Adjust for creativity
28
  top_p=0.9 # Adjust for response diversity
29
  )
30
-
31
  # Decode the generated text
32
- response = tokenizer.decode(outputs[0], skip_special_tokens=True)
33
- return {"response": response}
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
 
2
  from transformers import AutoTokenizer, AutoModelForCausalLM
3
  import torch
4
 
5
+ # Load model and tokenizer
 
 
6
  model_name = "Dorjzodovsuren/Mongolian_Llama3-v0.1"
7
  tokenizer = AutoTokenizer.from_pretrained(model_name)
8
  model = AutoModelForCausalLM.from_pretrained(model_name)
9
 
10
+ def generate_response(input_text):
 
 
 
 
11
  # Tokenize the input text
12
+ inputs = tokenizer(input_text, return_tensors="pt")
13
 
14
  # Generate response
15
  with torch.no_grad():
16
  outputs = model.generate(
17
  **inputs,
18
  max_length=100, # Adjust for desired response length
 
19
  temperature=0.7, # Adjust for creativity
20
  top_p=0.9 # Adjust for response diversity
21
  )
 
22
  # Decode the generated text
23
+ response_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
24
+ return response_text
25
+
26
+ # Create Gradio interface
27
+ iface = gr.Interface(
28
+ fn=generate_response,
29
+ inputs="text",
30
+ outputs="text",
31
+ title="Mongolian Llama3 Chatbot",
32
+ description="Ask anything in Mongolian!"
33
+ )
34
+
35
+ # Launch the Gradio app
36
+ iface.launch()
requirements.txt CHANGED
@@ -1,4 +1,3 @@
1
- fastapi
2
- uvicorn
3
  transformers
4
- torch
 
1
+ gradio
 
2
  transformers
3
+ torch