mayureshagashe2105's picture
Add email verification on singup
5cd9bab
raw
history blame
1.97 kB
import mysql.connector
from mysql.connector import errorcode
from fastapi import FastAPI, status
from fastapi.exceptions import HTTPException
from fastapi.templating import Jinja2Templates
from backend.utils import DBConnection
from backend.core.ConfigEnv import config
from langchain.llms import Clarifai
from langchain.chains import LLMChain
from langchain.prompts import PromptTemplate
from fastapi_mail import ConnectionConfig, FastMail
app = FastAPI(title="Techdocs",
version="V0.0.1",
description="API for automatic code documentation generation!"
)
from backend import router
try:
dbconnection = DBConnection()
test_conn = DBConnection.get_client().get_server_info()
# send prompt wizardcoderLM-70b-instruct-GGUF model
with open("backend/utils/prompt.txt",'r') as f:
prompt = f.read()
prompt = PromptTemplate(template=prompt, input_variables=['instruction'])
llm = Clarifai(
pat = config.CLARIFAI_PAT,
user_id = config.USER_ID,
app_id = config.APP_ID,
model_id = config.MODEL_ID,
model_version_id=config.MODEL_VERSION_ID,
)
llmchain = LLMChain(
prompt=prompt,
llm=llm
)
app.state.llmchain = llmchain
conf = ConnectionConfig(
MAIL_USERNAME=config.MAIL_USERNAME,
MAIL_PASSWORD=config.MAIL_PASSWORD,
MAIL_FROM=config.MAIL_FROM,
MAIL_PORT=587,
MAIL_SERVER="smtp.gmail.com",
MAIL_STARTTLS=True,
MAIL_SSL_TLS=False,
TEMPLATE_FOLDER="backend/templates",
USE_CREDENTIALS = True,
VALIDATE_CERTS = True
# MAIL_TLS=True,
# MAIL_SSL=False
)
app.state.mail_client = FastMail(conf)
app.state.templates = Jinja2Templates(directory="./backend/templates")
except mysql.connector.Error as err:
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail=str(err))