Невозможно разделить текст, полученный в качестве POST-запроса в django

Я столкнулся со странной ошибкой. Я пытаюсь разделить текст, отправленный через форму в django. Вот мой код в django

from transformers import AutoTokenizer
from langchain.text_splitter import CharacterTextSplitter

tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english" )
text_splitter = CharacterTextSplitter.from_huggingface_tokenizer(
    tokenizer, chunk_size=256, chunk_overlap=0
)

def home(request):
    if request.method == 'POST':
        input_text = request.POST['input']  # Get input text from the POST request
        print("input_text",type(input_text))
        splitted_text = text_splitter.split_text(str(input_text))
        print("splitted_text_length_outside",len(splitted_text))

Длина всегда равна 1, что означает, что текст не разделяется. Я проверил, что получаю текст из html-формы и тип текста - str.

Но когда я использую тот же код вне django, например, в jupyter notebook, он работает хорошо и разделяет текст.

В django я попробовал input_text.split() и это сработало. Но я не понимаю, почему не работает разделитель текста langchain.

def home(input_text):
    splitted_text = text_splitter.split_text(input_text)
    print("splitted_text_length_outside",len(splitted_text))

Вот моя html форма

<form action="{% url 'home' %}" method="post" id="myForm">
{% csrf_token %}
<textarea name="input" id="input" rows="4" cols="50"></textarea>
<br>
<button type="submit">Submit</button>
</form>

Вот мой код ajax

$("#myForm").submit(function(event) {
  event.preventDefault();

  let formData = $(this).serialize();

  $.ajax({
    "url": "/",            
    "type": "POST",       
    "data": formData,     
    "success": function(response) {
   
      console.log("success");
    },
    "error": function(error) {
      console.log("error",error);
    }
  });
});
Вернуться на верх