Spaces:
Runtime error
Runtime error
File size: 2,265 Bytes
2ecc792 5cd9bab 2ecc792 5cd9bab b60b60f 5cd9bab 2ecc792 5cd9bab bd2012c 5cd9bab 6ad44c3 5cd9bab b60b60f 5cd9bab 2ecc792 |
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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
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
import yagmail
from jinja2 import Environment, FileSystemLoader
import os
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=8080,
MAIL_SERVER="smtp.gmail.com",
MAIL_STARTTLS=False,
MAIL_SSL_TLS=True,
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")
#testing yagmail
yag = yagmail.SMTP(config.MAIL_USERNAME, config.MAIL_PASSWORD)
app.state.yagmail = yag
env = Environment(
loader=FileSystemLoader('./backend/templates/'))
app.state.jinjaenv = env
except mysql.connector.Error as err:
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail=str(err))
|