from rest_framework import serializers from setup.environment import default_model # from _utils.utils import DEFAULT_SYSTEM_PROMPT prompt_template = """ Based on the following context, provide multiple key points from the document. For each point, create a new paragraph. Each paragraph should be a complete, self-contained insight. Context: {context} Key points: """ class ResumoPDFSerializer(serializers.Serializer): files = serializers.ListField(child=serializers.FileField(), required=True) system_prompt = serializers.CharField(required=False) user_message = serializers.CharField(required=False, default="") model = serializers.CharField(required=False) iterative_refinement = serializers.BooleanField(required=False, default=False) class ResumoCursorSerializer(serializers.Serializer): files = serializers.ListField(child=serializers.FileField(), required=True) system_prompt = serializers.CharField(required=False, default=prompt_template) user_message = serializers.CharField(required=False, default="") model = serializers.CharField(required=False, default=default_model) hf_embedding = serializers.CharField(required=False, default="all-MiniLM-L6-v2") chunk_size = serializers.IntegerField(required=False, default=1000) chunk_overlap = serializers.IntegerField(required=False, default=200)