petertill commited on
Commit
e18a7f6
·
verified ·
1 Parent(s): 19660cc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -21
app.py CHANGED
@@ -1,31 +1,32 @@
1
- import gradio as gr
2
- from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer # Import AutoTokenizer
 
 
 
 
3
 
4
  try:
5
- # Load the model
6
  model = AutoModelForCausalLM.from_pretrained("petertill/cordia-a6")
7
-
8
- # Load the tokenizer
9
  tokenizer = AutoTokenizer.from_pretrained("petertill/cordia-a6")
10
-
11
- # Create the pipeline with both model and tokenizer
12
- pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
13
-
14
  print("Model and tokenizer loaded successfully!")
15
 
16
- def generate_text(prompt):
17
- output = pipe(prompt, max_length=200)[0]['generated_text']
18
- return output
19
 
20
- iface = gr.Interface(
21
- fn=generate_text,
22
- inputs="text",
23
- outputs="text",
24
- title="Cordia-A6 Text Generation",
25
- description="Generate text using the Cordia-A6 model."
26
- )
27
 
28
- iface.launch(server_name="0.0.0.0", server_port=7860)
 
 
 
 
 
 
29
 
30
  except Exception as e:
31
- print(f"Error: {e}")
 
 
 
 
1
+ from fastapi import FastAPI, HTTPException
2
+ from pydantic import BaseModel
3
+ from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer
4
+ import uvicorn
5
+
6
+ app = FastAPI()
7
 
8
  try:
 
9
  model = AutoModelForCausalLM.from_pretrained("petertill/cordia-a6")
 
 
10
  tokenizer = AutoTokenizer.from_pretrained("petertill/cordia-a6")
11
+ pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
 
 
 
12
  print("Model and tokenizer loaded successfully!")
13
 
14
+ class GenerateRequest(BaseModel):
15
+ prompt: str
 
16
 
17
+ class GenerateResponse(BaseModel):
18
+ generated_text: str
 
 
 
 
 
19
 
20
+ @app.post("/generate", response_model=GenerateResponse)
21
+ async def generate(request: GenerateRequest):
22
+ try:
23
+ output = pipe(request.prompt, max_length=200)[0]['generated_text']
24
+ return GenerateResponse(generated_text=output)
25
+ except Exception as e:
26
+ raise HTTPException(status_code=500, detail=str(e))
27
 
28
  except Exception as e:
29
+ print(f"Error: {e}")
30
+
31
+ if __name__ == "__main__":
32
+ uvicorn.run(app, host="0.0.0.0", port=7860)