12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- from fastapi import Response, Request
- from fastapi import Depends, FastAPI, HTTPException, status
- from datetime import datetime, timedelta
- from typing import List, Union
- from fastapi import APIRouter
- from pydantic import BaseModel
- import time
- import uuid
- from apps.web.models.users import Users
- from utils.utils import get_password_hash, get_current_user, get_admin_user, create_token
- from utils.misc import get_gravatar_url, validate_email_format
- from constants import ERROR_MESSAGES
- router = APIRouter()
- class SetDefaultModelsForm(BaseModel):
- models: str
- class PromptSuggestion(BaseModel):
- title: List[str]
- content: str
- class SetDefaultSuggestionsForm(BaseModel):
- suggestions: List[PromptSuggestion]
- ############################
- # SetDefaultModels
- ############################
- @router.post("/default/models", response_model=str)
- async def set_global_default_models(
- request: Request, form_data: SetDefaultModelsForm, user=Depends(get_admin_user)
- ):
- request.app.state.DEFAULT_MODELS = form_data.models
- return request.app.state.DEFAULT_MODELS
- @router.post("/default/suggestions", response_model=List[PromptSuggestion])
- async def set_global_default_suggestions(
- request: Request,
- form_data: SetDefaultSuggestionsForm,
- user=Depends(get_admin_user),
- ):
- data = form_data.model_dump()
- request.app.state.DEFAULT_PROMPT_SUGGESTIONS = data["suggestions"]
- return request.app.state.DEFAULT_PROMPT_SUGGESTIONS
|