Changes Documents - llm and languagefields on tenant, processing on documents
first version of Adding Documents (excl. embeddings)
This commit is contained in:
@@ -1,18 +1,39 @@
|
||||
from flask import current_app
|
||||
from flask_wtf import FlaskForm
|
||||
from wtforms import (StringField, PasswordField, BooleanField, SubmitField, EmailField, IntegerField, DateField,
|
||||
SelectMultipleField, FieldList, FormField)
|
||||
from wtforms.validators import DataRequired, Length, Email, NumberRange
|
||||
SelectField, SelectMultipleField, FieldList, FormField)
|
||||
from wtforms.validators import DataRequired, Length, Email, NumberRange, Optional
|
||||
from ..models.user import User, Role
|
||||
|
||||
|
||||
class TenantForm(FlaskForm):
|
||||
name = StringField('Name', validators=[DataRequired(), Length(max=80)])
|
||||
website = StringField('Website', validators=[DataRequired(), Length(max=255)])
|
||||
license_start_date = DateField('License Start Date', id='form-control datepicker')
|
||||
license_end_date = DateField('License End Date', id='datepicker')
|
||||
# language fields
|
||||
default_language = SelectField('Default Language', choices=[], validators=[DataRequired()])
|
||||
allowed_languages = SelectMultipleField('Allowed Languages', choices=[], validators=[DataRequired()])
|
||||
# LLM fields
|
||||
default_embedding_model = SelectField('Default Embedding Model', choices=[], validators=[DataRequired()])
|
||||
allowed_embedding_models = SelectMultipleField('Allowed Embedding Models', choices=[], validators=[DataRequired()])
|
||||
default_llm_model = SelectField('Default Large Language Model', choices=[], validators=[DataRequired()])
|
||||
allowed_llm_models = SelectMultipleField('Allowed Large Language Models', choices=[], validators=[DataRequired()])
|
||||
# license fields
|
||||
license_start_date = DateField('License Start Date', id='form-control datepicker', validators=[Optional()])
|
||||
license_end_date = DateField('License End Date', id='form-control datepicker', validators=[Optional()])
|
||||
allowed_monthly_interactions = IntegerField('Allowed Monthly Interactions', validators=[NumberRange(min=0)])
|
||||
submit = SubmitField('Submit')
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(TenantForm, self).__init__(*args, **kwargs)
|
||||
# initialise language fields
|
||||
self.default_language.choices = [(lang, lang.lower()) for lang in current_app.config['SUPPORTED_LANGUAGES']]
|
||||
self.allowed_languages.choices = [(lang, lang.lower()) for lang in current_app.config['SUPPORTED_LANGUAGES']]
|
||||
# initialise LLM fields
|
||||
self.default_embedding_model.choices = [(model, model) for model in current_app.config['SUPPORTED_EMBEDDINGS']]
|
||||
self.allowed_embedding_models.choices = [(model, model) for model in current_app.config['SUPPORTED_EMBEDDINGS']]
|
||||
self.default_llm_model.choices = [(model, model) for model in current_app.config['SUPPORTED_LLMS']]
|
||||
self.allowed_llm_models.choices = [(model, model) for model in current_app.config['SUPPORTED_LLMS']]
|
||||
|
||||
|
||||
class BaseUserForm(FlaskForm):
|
||||
user_name = StringField('Name', validators=[DataRequired(), Length(max=80)])
|
||||
|
||||
Reference in New Issue
Block a user