File size: 1,151 Bytes
bde4812
4f9c611
 
 
bde4812
4f9c611
 
 
 
 
 
 
 
 
 
 
 
bde4812
 
4f9c611
 
 
 
 
 
bde4812
4f9c611
 
 
 
 
 
 
bde4812
4f9c611
 
 
bde4812
4f9c611
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from pydantic import BaseModel

from .ConfigEnv import config
from fastapi.middleware.cors import CORSMiddleware
from happytransformer import HappyTextToText, TTSettings
from langchain.llms import Clarifai
from langchain.chains import LLMChain
from langchain.prompts import PromptTemplate
from TextGen import app

class Generate(BaseModel):
    text:str

def generate_text(prompt: str):
    if prompt == "":
        return {"detail": "Please provide a prompt."}
    else:


        happy_tt = HappyTextToText("T5", "vennify/t5-base-grammar-correction")
        
        args = TTSettings(num_beams=5, min_length=1,  max_length=100000)
        
        result = happy_tt.generate_text(f"grammar: {prompt}", args=args)
        return result.text

app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)

@app.get("/", tags=["Home"])
def api_home():
    return {'detail': 'Welcome to FastAPI TextGen Tutorial!'}

@app.post("/api/generate",  tags=["Generate"], response_model=Generate)
def inference(input_prompt: str):
    return generate_text(prompt=input_prompt)