File size: 1,206 Bytes
e63103b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from rest_framework import viewsets, filters
from django_filters.rest_framework import DjangoFilterBackend
from endpoint_teste.models import EndpointTesteModel
from endpoint_teste.serializer import EndpointTesteSerializer

from rest_framework.decorators import api_view
from rest_framework.response import Response

from langchain_backend.main import get_llm_answer
from .serializer import TesteSerializer

class EndpointTesteViewSet(viewsets.ModelViewSet):
    """Mostrará todas as tarefas"""
    queryset = EndpointTesteModel.objects.order_by("id").all()
    serializer_class = EndpointTesteSerializer
    filter_backends = [DjangoFilterBackend, filters.SearchFilter]
    search_fields = ["id"]

@api_view(["GET", "POST"])
def getTeste(request):
    if request.method == "POST":
        serializer = TesteSerializer(data=request.data)
        if serializer.is_valid(raise_exception=True):
            data = request.data
            pdf_url = None
            if data["pdf_url"]:
                pdf_url = data["pdf_url"]
            resposta_llm = get_llm_answer(data["system_prompt"], data["user_message"], pdf_url)
            return Response({
                "Resposta": resposta_llm
            })